STM32待机模式下,变量保持问题,求解

2019-07-21 05:13发布

做了个温湿度传感器,需要定时采样,然后到了一定时间通过NBiot模组发送出去。单片机是待机低功耗模式,rtc闹钟唤醒。因为每次唤醒都相当于复位,所以里面的变量就都清零了。如果我将每次采样的数据都保存到flash,那这样的话,flash擦写又会有寿命次数限制。不保存到falsh的话,变量又会清零。低功耗模式还不想换停机模式。请问有什么办法,不写入falsh,却又能让变量在单片机被唤醒后,不清零?


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
wmh19910511
1楼-- · 2019-07-21 09:22
停机模式你可以试试
sammy902583
2楼-- · 2019-07-21 15:11
写到Backup Register (BKP_DRx)即可.
记得VBAT还是要有电, 或接个电池就可以维持了.
edmund1234
3楼-- · 2019-07-21 17:59
待机状态下变量是能保持的, 只不过是你的复位后处理的方法把它还原默认值而已,
用一函数把需要初始化的变量赋值(不要用编译器的赋默认值) 加个标志判断, 是使用默认值还是保留之前的值跳过变量赋值的函数。

一周热门 更多>