断电数据保存问题

对于断电数据保存:

1 可以在每次操作时都将当前的状态保存到一个非易失地方,在上电后从改地址读出来初始化相关参数。优点:可靠但适合保存数量小的场合,缺点:效率不高。

2 也可以在掉电检测中断里面保存数据,上电时调出,但缺点是对突发断电可能没有足够的时间来存储。这适合有后备电源的场合。

STM32F407中PVD实现掉电检测

  • 使能PWR外设(加入 “stm32f4xx_pwr.h” 头文件,开启时钟,配置PVD电压级别)
  • 开启外中断(NVIC分组,配置外中断并使能),因为PVD连接到了外中断16上了。在中断沿设置时要注意:电压值高于设定值时为 0,低于设定值时为1
  • 外中断中进行数据保存。

 

 

关于存储介质:

对于存储少量参数:eerom比较合适,因为不用每次都整片搽除。但速度慢。

FLASH:上电时读到RAM,断电时写入FLASH(PVD检测,PVD中断中关闭外设后写数据,但需要后备电源).

也可以存在单片机的一些后备寄存器中。

关于FLASH搽除和写0XFF:

他们是有区别的,flash写(0/1)之前必须搽除。写0XFF在原来是1的情况下是没问题的,但之后写0就写不进去了。

posted on 2016-07-29 11:17  杰瑞鼠  阅读(1087)  评论(0编辑  收藏  举报