新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > Flash数据丢失,说好的数据去哪了?

Flash数据丢失,说好的数据去哪了?

作者:时间:2017-06-03来源:网络收藏

芯片贴板后跑不起来?里面的数据在使用过程中莫名改变或不翼而飞?程序丢失可能无法正常运行,从而造成整个系统崩溃,下面我们来看看是什么原因让数据异常变化。

本文引用地址:http://www.eepw.com.cn/article/201706/346832.htm

1、用户代码对的误操作不当引起程序丢失或被错误改写

说好的数据,哪里去了?

例如,在有对写入或擦除操作的代码中,如果用户误调用了写入或擦除函数或者由于程序跑飞而恰好执行了Flash擦除或写入函数,这自然会导致数据丢失或改变。针对以上情况,可以在程序中设置多个允许操作的变量,当执行写入或擦除操作时,对这些变量进行判断,只有条件全部满足时,才执行相应的操作。在一些不需要进行擦除或写入操作的系统中,对存储区进行写保护或擦除保护设置,能有效的防止数据被意外修改。做到了写入或擦除的可控性,基本可以避免此种情况发生。

 图1 Flash保护

2、电源失效

图2 电源噪声严重

的异常可能会导致系统单片机系统工作异常的现象,如输出电压小于单片机系统工作所需的最小电压,输出电压不干净,噪音严重等,这些很容易引起单片机内部电路的逻辑紊乱,Flash的读写信号处于不稳定状态。可能产生满足Flash的写操作,从而给系统带来严重的损害。针对以上情况,可以在系统中加入电源监控芯片或使能本身的电源监控电路,在电源异常的情况下禁止对Flash区域操作。

3、系统时钟不稳定

无论对于内部Flash还是外部Flash,系统时钟的不稳定,都将导致得不到可靠的工作时序信号,从而在读写Flash时产生不可预料的后果。

4、环境干扰

环境干扰的可能原因很多,如生产过程中的高温焊接、静电、使用环境的温湿度,强磁场等,都可能影响到Flash或整个系统的稳定。环境干扰的因素很多,在此不展开讨论。



关键词: 电源电压 Flash MCU

评论


相关推荐

技术专区

关闭