1. 合泰单片机内置eeprom只能读不能写,要怎么解决
我也遇到这样的问题。没人给出答案,我来说一下吧。(主要是针对V3编译C)
根据Holtek_C_Compiler_V3_FAQ(950).pdf的描述,V3不保证编译后的指令符合EEPROM写入顺序。根据BS86的数据手册,WREN 和 WR一定要符合顺序。
我编译后的指令出现的是LSET WREN以及LSET WR,这个就出问题了。芯片需要的是SET。
解决方法是根据官方FAQ的描述
"5.5 对于写 EEPROM 有限制的 MCU ( 需连续 set wren, wr, flag),如何使用
V3 写 EEPROM?"
下面是代码
//RefertoHoltek_C_Compiler_V3_FAQ(950).pdf
typedefstruct{
unsignedcharbit0:1;
unsignedcharbit1:1;
unsignedcharbit2:1;
unsignedcharbit3:1;
unsignedcharbit4:1;
unsignedcharbit5:1;
unsignedcharbit6:1;
}iar_bits;
DEFINE_SFR(iar_bits,iar1,0x02);
#defineiar1_3 iar1.bit3
#defineiar1_2 iar1.bit2
#defineiar1_1 iar1.bit1
#defineiar1_0 iar1.bit0
...
uint8_tbkup;
_eea=u8Addr;
_eed=u8NewData;
_mp1l=0x40;
bkup=_mp1h;
_mp1h=0x01;
_emi=0;
iar1_3=1;
iar1_2=1;
_emi=1;
while(iar1_2)
{
}
_iar1=0;
_mp1h=bkup;
...
官方的解决方案产生的代码跟数据手册中的一直:
;129 iar1_3=1;
0D0D 3182 set__iar1[0].3《《以前这里是LSETWREN
;130 iar1_2=1;
0D0E 3102 set__iar1[0].2《《以前这里是LSETWR
2. 有没有大神用过合泰的单片机 HT68F002 这款想芯片啊 求个用中断的程序,自己怎么弄都不行 帮忙看一下吧
定时器中断函数里没清除标志位。增加_stm0f=0
缺少_rstc=0b01010101
3. 如何用C语言改变合泰单片机自带PWM的频率,如1KHZ,2KHZ,等等频率
#include <reg52.h>
#define uint unsigned int
#define uchar unsigned char
#define ulong unsigned long
sbit Waveout1=P1^0;
sbit CF=P3^2;//调节频率
int num,a,f;
int Timer0_H,Timer0_L;
void Init()
{
num=0;
a=1000;
f=2;
Waveout1=0;
TMOD=0x02;
TH0=(uint)(256-(1000/(2*f)));
TL0=(uint)(256-(1000/(2*f)));
ET0=1;
EA=1;
TR0=1;
}
void main()
{
Init();
while(1)
{
if(CF==0)
{
f++;
TH0=(int)(256-(1000/(2*f)));
TL0=(int)(256-(1000/(2*f)));
while(CF==0);
}
if(num==a)
{
num=0;
Waveout1=~Waveout1;
}
}
}
void Timer0()interrupt 1
{
num++;
}
4. c8051f系列单片机加密后能不能破解
橙盒科技还提供以下芯片解密服务:
疑难型IC解密
橙盒科技目前已成功突破CY8C单片机解密、STC单片机破解、C8051芯片解密、凌阳IC解密、MSP430破解、FREESCALE芯片解密等疑难型IC芯片破解技术。
日系高难度芯片解密
橙盒科技独家优势提供NEC单片机破解、瑞萨系列芯片解密、三菱单片机解密、日立芯片破解、东芝系列IC破解、富士通芯片解密等日系高难度IC破解服务。
ARM核芯片破解
橙盒科技目前已具备NXP系列ARM解密、STM系列ARM破解、飞思卡尔ARM芯片解密、三星ARM芯片破解、AT91SAM系列芯片解密等ARM芯片破解方案开发能力。
51单片机破解
依靠成熟解密方案,橙盒科技优势提供PIC单片机解密、ATMEL芯片解密、合泰IC解密、新茂芯片破解、华邦IC破解、SST系列IC解密等51单片机解密服务。
掩膜单片机破解
橙盒科技可针对客户需求提供日立掩膜芯片解密、NEC掩膜芯片破解、三菱掩膜单片机解密等系列高难度掩膜IC解密以及运算放大器等各类IC反向设计服务。
冷偏门IC解密方案开发
依靠强大的IC解密方案开发能力,橙盒科技可针对HAIER单片机解密、SANYO芯片解密、UBICOM系列IC解密、ABOV系列IC破解等冷偏门IC提供优质破解方案。
单片机(MCU)一般都有内部EEPROM/FLASH供用户存放程序和工作数据。为了防止未经授权访问或拷贝单片机的机内程序,大部分单片机都带有加密锁定位或者加密字节,以保护片内程序。如果在编程时加密锁定位被使能(锁定),就无法用普通编程器直接读取单片机内的程序,这就叫单片机加密或芯片加密。单片机攻击者借助专用设备或者自制设备,利用单片机芯片设计上的漏洞或软件缺陷,通过多种技术手段,就可以从芯片中提取关键信息,获取单片机内程序这就叫芯片解密。
芯片解密又叫单片机解密,单片机破解,芯片破解,IC解密,但是这严格说来这几种称呼都不科学,但已经成了习惯叫法,我们把CPLD解密,DSP解密都习惯称为芯片解密。单片机只是能装载程序芯片的其中一个类。能烧录程序并能加密的芯片还有DSP,CPLD,PLD,AVR,ARM等。也有专门设计有加密算法用于专业加密的芯片或设计验证厂家代码工作等功能芯片,该类芯片也能实现防止电子产品复制的目的。
5. 合泰单片机仿真软件(HT-IDE3000)无法识别到仿真EV
是不是联线错了 联线错误就会显示连接成功 但是不识别芯片
6. ht48r063b,属于单片机么,是哪类的,可以烧录程序么用哪种东东。
增强 I/O 型系列单片机是一款 8 位具有高性能精简指令集的单片机,应用相当广泛。秉承 HOLTEK 单片机具有的低功耗、I/O 灵活、定时器功能、振荡类型可选、休眠和唤醒功能、看门狗和低电压复位等丰富的功能选项,增强 I/O 型单片机具有极高的性价比,其内部集成了系统振荡器 HIRC,提供三种频率选择,不需要增加外部元器件。可以广泛适用于各种应用,例如工业控制,消费类产品,家用电器子系统控制等。CPU特性:工作电压:fSYS=4MHz: 2.2V~5.5VfSYS=8MHz: 3.0V~5.5V fSYS=12MHz: 4.5V~5.5V
振荡模式: 外部高频晶振 – HXT 外部 RC – ERC 内部 RC – HIRC 外部低频晶振 – LXT
在VDD=5V ,系统频率为12MHz时,指令周期为0.33µs
3种工作模式:正常,低速,休眠
内部集成 4MHz,8MHz 和 12MHz 振荡器,无需外接元件
看门狗定时器功能
LIRC 振荡用于看门狗时钟
所有指令都可在 1 或 2 个指令周期内完成
查表指令
63 条功能强大的指令系统
多达 4 层堆栈
位操作指令
低电压复位功能
提供多种封装类型
周边特性
多达 26 个双向 I/O 口
4 个软件控制 SCOM 口 1/2 bias LCD 驱动
一个与 I/O 口复用的外部中断输入
多达 2 个 8 位可编程定时/计数器,具有溢出中断和预分频功能
时基功能
PFD 功能
7. 敬爱的合泰单片机高手!!!!!!!
1.怎样用软件设置:CMOSE输出,带或不带上拉电阻的斯密特触发输入,A/D输入????
输出就是输出,什么"CMOS输出"是Holtek官方术语,"斯密特触发输入"也是官方术语,带不带上拉电阻是在IDE掩膜选项中设置的
引脚是AD输入还是数字IO靠ADCR中的控制位来定义
2.怎样理解ADCR中的前六位设置???当设置好模义输入通道,为什么还要定义PB呢????
这是HT46R52的ADCR 参考(估计HT46R22是一样的):
0 ACS0 选择模拟输入通道
1 ACS1 选择模拟输入通道
2 ACS2 选择模拟输入通道
3 PCR0 为0 则关闭,减小功耗
4 PCR1 为0 则关闭,减小功耗
5 PCR2 为0 则关闭,减小功耗
6 EOC A/D 转换结束标志(0:A/D 转换结束)
每次bit3-5 状态的改变后都必须通过START 信号来初始化A/D 转换器,
否则EOC可能会处于不确定状态
7 START 0→1→0:开始; 0→1:A/D 转换复位并且置EOC为“1”
“当设置好模义输入通道,为什么还要定义PB呢????”
前面0-2只是个通道选择(多选1模拟开关),并不能决定PB口是模拟口还是数字IO
就像有一块内存空间,你选中了一个字节来用,但里面的内容到底什么不知道,设置一下就知道了。
3.端口问题:
1.控制寄存器:设定IO口是输入还是输出,数据寄存器(端口寄存器)读取/设置端口电平
2.设_pac=0b00000000;意思是pa口全部输出;设_pa= 0b00000000;则pa全部输出0
3.初始化端口的步骤示例:_pac=0x00; _pa=0x00;
4.其他问题:
#pragma vector isr_time @ 0x08 //中断服务程序定义
#pragma vector isr_ad @ 0x0c //中断服务程序定义
uchar sign0 @ 0x40; //在绝对地址定义变量
uchar sign1 @ 0x41; //在绝对地址定义变量
8. 那个懂合泰单片机程序的帮我修改下程序嘛
交流电压还是直流电压?
直流电压AD转换的话,需要数字滤波的。