[MCU] 求助eeprom问题

[复制链接]
1555|13
 楼主| yml1104 发表于 2020-5-12 10:09 | 显示全部楼层 |阅读模式
为什么eeprom写入数据之后即使重新烧录也不会改变,现在我要重新烧录就恢复初始数值逻辑上该怎么写呢
walton1226 发表于 2020-5-12 10:27 | 显示全部楼层
根据你的描述,不是重新烧录也不会改变,而是芯片上电运行后改写了。
改写eeprom时增加限定或判断条件。
 楼主| yml1104 发表于 2020-5-12 10:57 | 显示全部楼层
walton1226 发表于 2020-5-12 10:27
根据你的描述,不是重新烧录也不会改变,而是芯片上电运行后改写了。
改写eeprom时增加限定或判断条件。
...

上电之后确实会先读取数据 这是掉电保护用的 但是我想重新烧录的时候不去读取或者读取初始数值  试了好几种逻辑都不行
walton1226 发表于 2020-5-12 11:44 | 显示全部楼层
烧程序的时候烧写eeprom的上一个状态值
 楼主| yml1104 发表于 2020-5-12 14:31 | 显示全部楼层

我用的不是STC系列的 这款是按字节写入的  好像不可以直接擦除的 可以的话就没这个问题了
ningling_21 发表于 2020-5-12 16:08 | 显示全部楼层
程序需要一个判断条件(是否重新烧录),是就恢复初始值
 楼主| yml1104 发表于 2020-5-12 16:29 | 显示全部楼层
ningling_21 发表于 2020-5-12 16:08
程序需要一个判断条件(是否重新烧录),是就恢复初始值

但是该怎么判断?
 楼主| yml1104 发表于 2020-5-12 16:29 | 显示全部楼层
ningling_21 发表于 2020-5-12 16:08
程序需要一个判断条件(是否重新烧录),是就恢复初始值

有想过 但是好像没有好的方法可以判断的额
ningling_21 发表于 2020-5-12 16:51 | 显示全部楼层
yml1104 发表于 2020-5-12 16:29
有想过 但是好像没有好的方法可以判断的额

加版本号(每次烧录都更新),写进EEP,上电先读取EEP里的版本号和程序里版本相比较,如果版本不同则代表重新烧录
 楼主| yml1104 发表于 2020-5-12 16:57 | 显示全部楼层
ningling_21 发表于 2020-5-12 16:51
加版本号(每次烧录都更新),写进EEP,上电先读取EEP里的版本号和程序里版本相比较,如果版本不同则代表 ...

好的 我尝试一下谢谢
asdsfgwsafd 发表于 2020-5-14 13:03 | 显示全部楼层
程序写的是FLASH,和EEPROM没什么关系啊
 楼主| yml1104 发表于 2020-5-14 13:59 | 显示全部楼层
asdsfgwsafd 发表于 2020-5-14 13:03
程序写的是FLASH,和EEPROM没什么关系啊

是写入EEPROM需要掉电保存的数据部分会篡改
chillyd 发表于 2020-5-14 14:30 | 显示全部楼层
断电前写成功的标志是什么?断电前可能没成功吧
 楼主| yml1104 发表于 2020-5-14 15:30 | 显示全部楼层
chillyd 发表于 2020-5-14 14:30
断电前写成功的标志是什么?断电前可能没成功吧

但是大部分数据是对的 只有随机部分几个数据出错
您需要登录后才可以回帖 登录 | 注册

本版积分规则

14

主题

66

帖子

0

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