独闷闷网

 找回密码
 立即注册
搜索
查看: 10513|回复: 6
打印 上一主题 下一主题
收起左侧

[原创] 把掉电保存的数据存进单片机内部flash,重新烧录程序时这些数据会丢失吗?已解答。

[复制链接]
跳转到指定楼层
楼主
发表于 2015-2-4 12:54:13 | 显示全部楼层 |只看大图 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 jianhong_wu 于 2015-2-4 13:06 编辑

威-广州:
比如说,我这次对单片机内部flash某一扇区的一个单元写了1进去,用一个变量,读取出来并且在液晶上显示,这一步没问题,但是我把写数据这段代码注释掉,重新编译烧录进单片机,那么读出来的数据就是0了。

鸿哥-深圳:
单片机重新烧录程序,内部的Flash可能会重新擦除的。我以前用pic18f4520这个单片机,它单片机内部的EEPROM数据会被擦除的,所以我推测Flash也一样。所以针对这种情况恐怕只能用外围的Flash芯片存储数据了。



Inc-东莞:
STM32也会用到内部的flash作为存储空间,他其刷程序,flash不会掉。想这不让flash不被擦,使用iap的方式就行了。一般没有特殊设置,烧录会整个flash都刷掉。

威-广州:
你说的是针对stm32吧?



Inc-东莞:
针对个毛,大把单片机都支持iap。

威-广州:
我在中颖手册里头,没看到iap的字眼

Inc-东莞:
切,你用的连20位ad都有,iap居然没有,你问问fae吧

鸿哥-深圳:
IAP一般是用在仿真器的单片机里的比较多。


Inc-东莞:
IAP我们也叫bootloader。这个具体最好是问问fae。一般支持仿真的芯片都支持的。例如stm32,iap系列的stc,avr之类的。

乐于分享,勇于质疑!
沙发
 楼主| 发表于 2015-2-4 12:58:07 | 显示全部楼层
黑夜之狼 发表于 2015-2-4 12:56
鸿哥,内部的EEPROM没有被擦出掉

我用的是PIC18F4520,它内部的EEPROM数据会因为我重新烧录程序而一起被擦除掉的。
乐于分享,勇于质疑!
板凳
 楼主| 发表于 2015-2-4 15:49:15 | 显示全部楼层
黑夜之狼 发表于 2015-2-4 15:20
刚做了实验,问题已经解决。首先第一点,EEPROM是不会擦除的,另外,像鸿哥所说的,下载程序的时候是会把fl ...

“下载的时候不选择把扇区10擦除就没事了”你的意思是,你的单片机在烧录时,可以在烧录软件选择相应的选项然后再烧录?烧录软件会给你相应的选项选择?
乐于分享,勇于质疑!
地板
 楼主| 发表于 2015-2-5 11:23:51 | 显示全部楼层
黑夜之狼 发表于 2015-2-5 10:00
就是这样,看下图在keil环境下,当然,这个是针对中颖的片子而安装的插件,选择“settings”,点击进去
...

明白了。
乐于分享,勇于质疑!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|独闷闷网 ( 粤ICP备12007667号-2 )

GMT+8, 2024-5-4 07:43 , Processed in 0.164339 second(s), 18 queries .

快速回复 返回顶部 返回列表