2007年12月专题讨论----单片机程序丢失的原因与抑制方法

[复制链接]
21726|106
kissyozi 发表于 2007-12-3 22:32 | 显示全部楼层

学习了

受教了.
 楼主| 救火车 发表于 2007-12-4 10:48 | 显示全部楼层

谢谢60楼大叔。

自己的**还是不加了。
110xia 发表于 2007-12-4 14:40 | 显示全部楼层

偶认为这是厂家的生产工艺的问题,

 楼主| 救火车 发表于 2007-12-4 19:56 | 显示全部楼层

我们管不了厂家的生产工艺

只能在我们能做的地方想办法。
 楼主| 救火车 发表于 2007-12-5 14:31 | 显示全部楼层

大侠们快出来点评点评啊

pda_hp4700 发表于 2007-12-5 17:17 | 显示全部楼层

单片机程序丢失的原因与抑制方法

MCUflash丢程序,并不是flash工艺不过关的问题,这个工艺一点问题都没有!而是单片机系统设计考虑不周到引起的。如果考虑周全的话,这种问题很少出现。就拿C8051F单片机来说,如果真正理解了它的FLASH结构及其编程和擦除的机理,充分利用C8051F提供的一切保护手段,外围电路再进行可靠的设计,这个问题就很好解决。很多人遇到问题,是对datasheet没有很好的研究,对里面的一些东西没有很好的理解。
czfys2007 发表于 2007-12-5 23:46 | 显示全部楼层

同意

同意
hkap 发表于 2007-12-6 11:21 | 显示全部楼层

前段时间用MCU内部DATA FLASH也发现个别产品容易丢数据

以前用外EEPROM,后改用内部DATA FLASH,发现误擦除现象.
后分析:
 上电有个写操作,由于上电电源不可避免电源抖动,在写过程,如果刚好擦除了FLASH,由于抖动造成再次冷启动,下次再写时所有数据已经初始化为0FFH
解决:
    上电由原来短延时改为3秒延时,等电源稳定后再操作FLASH,备份数据,现再没发现该现象了.
陈双君 发表于 2007-12-6 14:01 | 显示全部楼层

大多数情况下是这样的.

大多数情况下是这样的.都是在上电会掉电的那一时候电压变化速度太快.搞得出现代码乱走现像.
martin 发表于 2007-12-6 14:41 | 显示全部楼层

48楼正解

虽然很多的Flash数据丢失是因为错误设计而产生的程序自写造成,但是Flash工艺本身导致的数据挥发在行业里出现得也比较多。
所有的Flash工艺的存储单元,浮栅中的电子都会自然逃逸,不同的Flash工艺,不同的温度,电子逃逸的比率不同。(顺便说一下,OTP的一样也会逃逸,MASK的不会)
如果你怀疑你使用的Flash的MCU的数据保存可靠性,可以做高温烘烤测试。高温会加速浮栅中电子的逃逸比率,做这个测试时,芯片不需要上电。
另外,烧录器对于数据保存时间其实也很重要,如果烧录器本身没有采用严格的烧录时序和参数,很有可能产生边缘烧录 - 浮栅中充入的电子不足,更容易出现Flash数据自然挥发的现象。
yewuyi提到MCP的MCU数据保存时间是40年(常温),其实MCP也有标20年的芯片,例如J系列,这就是因为Flash工艺不同。对于标40年的MCU,是采用PEEC的Flash工艺,别的MCU厂家用这个工艺的已经不多了,因为成本高。MCP的PEEC Flash在晶圆级测试时有一项就是,在250C下做数据保存24小时烘烤测试,这相当于使用1.2eV活化能,等同于在85C下数据保存100年。
yewuyi 发表于 2007-12-7 13:28 | 显示全部楼层

martin 发言很权威……

~~~
zenyin 发表于 2007-12-7 17:01 | 显示全部楼层

我觉得还是电源和软件软硬件规划的问题

我在贵州矿山有一个项目是6年前做的,那时初次做产品,天不怕地不怕,系统又小,考虑到我从来没用过看门狗,产品做好了等到拿钱,基本是应付,简单测试后就发到现场了,还是个手工焊接扳,**未做任何处理,结果该扳子在那已经连续运行满6年又10个月了,从未出个问题,要说硬件技巧一是电源做的好,二是复位方式是单独设计的!
yewuyi 发表于 2007-12-8 17:08 | 显示全部楼层

LS的运气实在是好……

~~,不得不服啊……
sharks 发表于 2007-12-8 18:45 | 显示全部楼层

要不要考虑一下动态刷新?

   打个比方,假设数据10年左右可能会出现陆陆续续的丢失,那么,通过程序让单片机每年或每个月自己将自己刷新一遍。
   
 楼主| 救火车 发表于 2007-12-9 11:31 | 显示全部楼层

楼上说的太危险了。弄不好会造成更大的麻烦

gyt 发表于 2007-12-9 12:02 | 显示全部楼层

同意77楼

dadodo 发表于 2007-12-9 12:51 | 显示全部楼层

74楼的好久没露脸了

samuelyu 发表于 2007-12-10 17:44 | 显示全部楼层

同意 14 楼;

feng89 发表于 2007-12-12 18:45 | 显示全部楼层

STC的单片机下载的时候设为P1.0 P1.0为低电平才可以下载

STC的单片机下载的时候设为P1.0 P1.0为低电平才可以下载,这样可靠情高一些,
chenguozho 发表于 2007-12-13 12:10 | 显示全部楼层

我用STC的问题

我以前用的是STC89C5XRC的单片机,发现了一个问题!
我用了单片机的休眠功能,然后模拟静电打管脚,结果程序就不知道跑那去了,断电后从新上电正常
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部