0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Flash数据的内容丢失的原因有哪些详细说明

Wildesbeast 来源:网络整理 作者:佚名 2020-01-01 09:52 次阅读

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

例如,在有对Flash写入或擦除操作的代码中,如果用户误调用了写入或擦除函数或者由于程序跑飞而恰好执行了Flash擦除或写入函数,这自然会导致数据丢失或改变。针对以上情况,可以在程序中设置多个允许操作的变量,当执行写入或擦除操作时,对这些变量进行判断,只有条件全部满足时,才执行相应的操作。

在一些不需要进行擦除或写入操作的系统中,对存储区进行写保护或擦除保护设置,能有效的防止数据被意外修改。做到了写入或擦除的可控性,基本可以避免此种情况发生。

图1 Flash保护

2、电源失效

图2 电源噪声严重

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

3、系统时钟不稳定

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

4、环境干扰

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

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6001

    文章

    43978

    浏览量

    620863
  • FlaSh
    +关注

    关注

    10

    文章

    1551

    浏览量

    146652
  • 函数
    +关注

    关注

    3

    文章

    3882

    浏览量

    61310
收藏 人收藏

    评论

    相关推荐

    求3525电路详细说明

    求3525电路详细说明,越详细越好,谢谢!
    发表于 04-18 08:21

    hex文件格式详细说明

    hex文件格式详细说明
    发表于 11-13 12:36

    hex文件格式详细说明

    hex文件格式详细说明
    发表于 11-13 12:37

    stc下载烧录详细说明

    stc下载烧录详细说明
    发表于 01-05 16:28

    请问28035的LIN模块详细说明

    我在网上包括controlsuite里面都没有找到关于 28035LIN模块的详细说明,比如寄存器操作(每个寄存器里面都是什么内容)之类的,麻烦给我链接!
    发表于 11-23 09:46

    电子管的代换资料详细说明

    本文档的主要内容详细介绍的是电子管的代换资料详细说明
    发表于 09-26 07:24

    EEPROM数据丢失原因分析

    内容介绍众多EEPROM数据丢失原因
    发表于 05-24 11:35 102次下载
    EEPROM<b class='flag-5'>数据</b><b class='flag-5'>丢失</b><b class='flag-5'>原因</b>分析

    Silabs的Flash单片机丢失程序原因

    内容介绍了Silabs的Flash单片机丢失程序原因
    发表于 06-14 15:07 122次下载
    Silabs的<b class='flag-5'>Flash</b>单片机<b class='flag-5'>丢失</b>程序<b class='flag-5'>原因</b>

    Flash数据丢失原因

    芯片贴板后跑不起来?Flash里面的数据在使用过程中莫名改变或不翼而飞?程序丢失可能无法正常运行,从而造成整个系统崩溃,下面我们来看看是什么原因
    发表于 10-13 20:31 11次下载
    <b class='flag-5'>Flash</b><b class='flag-5'>数据</b><b class='flag-5'>丢失</b>的<b class='flag-5'>原因</b>

    使用SQL语句创建数据库的实例详细说明

      本文档的主要内容详细介绍的是使用SQL语句创建数据库的实例详细说明
    发表于 11-07 14:35 19次下载

    5种数据库的SQL语句大全详细说明

    本文档的主要内容详细介绍的是5种数据库的SQL语句大全详细说明
    发表于 11-13 15:16 8次下载

    Altium Designer版本14.2的发行说明详细说明

    本文档的主要内容详细介绍的是Altium Designer版本14.2的发行说明详细说明
    发表于 12-23 08:00 0次下载
    Altium Designer版本14.2的发行<b class='flag-5'>说明</b><b class='flag-5'>详细说明</b>

    LabVIEW的100个基础题详细说明

    本文档的主要内容详细介绍的是LabVIEW的100个基础题详细说明资料免费下载。
    发表于 04-26 08:00 50次下载
    LabVIEW的100个基础题<b class='flag-5'>详细说明</b>

    PLC的39个应用案例详细说明

    本文档的主要内容详细介绍的是PLC的39个应用案例详细说明
    发表于 10-30 16:26 67次下载
    PLC的39个应用案例<b class='flag-5'>详细说明</b>

    在Cantiga上提供集成的HDCP应用说明和MAS详细说明

    本文档的主要内容详细介绍的是在Cantiga上提供集成的HDCP应用说明和MAS详细说明
    发表于 12-11 08:00 0次下载
    在Cantiga上提供集成的HDCP应用<b class='flag-5'>说明</b>和MAS<b class='flag-5'>详细说明</b>