单片机出现丢程序,复位脚输入也不能复位,这是什么情况?重新下载程序又正常,外部复位也正常了。
请教一下: 单片机出现丢程序,复位脚输入也不能复位,这是什么情况?重新下载程序又正常,外部复位也正常了。详细实际原理图的PDF发上来 什么型号的?发原理图PDF版本。 楼主用的STC12LE5A60S2 外接晶振5M 左右请上传线路图 刚才跟楼主电话沟通过,使用的是IAP12C5A62S2(或IAP12LE5A62S2),这个是可以IAP的,即程序可以擦除、写入程序区的,因为有EEPROM操作,如果没有严格限制擦除、写入地址,则有可能擦除、写入到程序区了,程序被破坏,重新上电、按复位均不会正常,只能重新下载程序。
还有一种可能就是电源电压或IO的电压有过压冲击IC,冲掉了FLASH,IC可能有损伤但还能工作,只是工作电流会变大,特别是睡眠电流通常会变大。
软件处理:进行EEPROM擦除、写入操作时,增加一些条件,比如增加操作口令、判断地址范围,如下提示:
擦除、写入函数,用到全局变量的口令 u32 PassWrd;
if(addr < EEPROM_ADDR) return; //地址不对,马上退出
if(PassWrd != 0x55aa649b)return;//口令不对,退出
准备好地址、数据;
if(PassWrd != 0x55aa649b) //口令正确
EA = 0; //发触发命令前关一下总中断
触发擦除、写入;
EA = 1;//发触发命令后开总中断
操作完成后:
PassWrd = 0; //清除口令
} //函数结束
所以每次调用擦除、写入函数都要给口令PassWrd=0x55aa649b; (当然也可以是其余值)。口令不对,不执行操作。
对于电源、IO的处理,则可以参考下面的:
没详细原理图的PDF, 无法帮助分析的 原理图,大家帮忙分析下
我可能找到问题了,3V的MCU,复位电压加的4.6V,估计是这个问题损坏了芯片。 确定不下电源电压时,就用如下 5.5V ~ 1.9V 的宽电压芯片来设计
页:
[1]