找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1479|回复: 7
打印 上一主题 下一主题
收起左侧

C52单片机如何掉电后保存数据?断电重启会重新运行整个的代码吗

[复制链接]
跳转到指定楼层
楼主
ID:1050519 发表于 2022-11-8 14:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
单片机断电重启会重新运行整个的代码吗
如果是这样,那么c52单片机如何保存数据,使得重新上电后数据不变?
比如一个变量count初值为0,运行后的值为10,希望断电重新启动单片机后的值依然是10,这个要如何实现呢?
另外掉电后count变量为10,但是重新运行代码后变为初值0,还是说直接这个变量就没了,重新运行代码重新生成的变量


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:155507 发表于 2022-11-8 15:08 | 只看该作者
你可以用片内EEPROM保存数据
EEPROM掉电保存数据需要硬件支持,检测到外部掉电到把数据写入EEPROM需要有足够的时间,也就是说单片机的电源要有足够大的电容在此期间保持VCC基本不下降。
回复

使用道具 举报

板凳
ID:1050519 发表于 2022-11-8 15:26 | 只看该作者
angmall 发表于 2022-11-8 15:08
你可以用片内EEPROM保存数据
EEPROM掉电保存数据需要硬件支持,检测到外部掉电到把数据写入EEPROM需要有足 ...

受教了,多谢指点
回复

使用道具 举报

地板
ID:3666 发表于 2022-11-8 15:58 | 只看该作者
看你的单片机有内部E2吗?有的话可以用内部E2,没有的话,可以用外E2,如24C02等等的芯片
回复

使用道具 举报

5#
ID:1050519 发表于 2022-11-8 16:23 | 只看该作者
liushiming82 发表于 2022-11-8 15:58
看你的单片机有内部E2吗?有的话可以用内部E2,没有的话,可以用外E2,如24C02等等的芯片

已经可以了,仍然感谢您的指点
回复

使用道具 举报

6#
ID:883242 发表于 2022-11-8 17:25 | 只看该作者
不管是内部还是外部EEPROM都要考虑全寿命周期写寿命的问题,不然一股脑瞎写,把片子写坏了怎么办?
回复

使用道具 举报

7#
ID:230742 发表于 2022-11-8 20:59 | 只看该作者
如果要求不高,也可以不用掉电检查。就是数字变化的时候,就写入EEPROM。这种情况适合用在设定温度的地方。手工设定最高温度和最低温度。设置好后直接就保存了。就算掉电重启,也可以继续工作。
看具体情况吧。
回复

使用道具 举报

8#
ID:965189 发表于 2022-11-8 21:58 | 只看该作者
我以前试过每秒保存一次,后来改为断电保存。可以不必考虑E2的擦写寿命了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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