1-18 使用LVD低压检测中断保存EEPROM
摘要:在MCU主时钟停振/省电模式下,开启LVD和比较器会额外增加300uA功耗,建议改用掉电唤醒定时器(仅增加1.4uA),通过周期性唤醒(如每5秒)进行电压检测,可使平均功耗控制在2.8uA。实验部分验证了低压中断处理流程,包括断电时写入512字节数据(实际建议400字节)和上电后通过串口读取的通信协议(帧格式包含读写标识、地址和数据)。硬件采用22uF+10uF+10uF滤波电容组合,程序基
基本知识
虽然 LVD 和比较器均可唤醒主时钟停振/省电模式化,但主时钟停振/省电模式下,不建议启动LVD 和比较器,否则硬件系统还会自动启动内部 1.19V 的高精准参考源,这个高精准参考源有有相应的抗温漂和调校线路,大约会额外增加 300uA 的耗电,而 MCU 进入主时钟停振/省电模式后,3.3V 工作电压时只耗约 0.4uA 的电流,所以进入主时钟停振/省电模式时不建议开 LVD 和比较器。如果确实需要用,建议开启掉电唤醒定时器,掉电唤醒定时器只会增加约 1.4uA 的耗电,这个耗电一般系统是可以接受的。让掉电唤醒定时器每 5 秒唤醒一次 MCU,唤醒后可用 LVD、比较器、 ADC 检测外部电池电压,检测工作约耗时1mS后再进入主时钟停振/省电模式,这样增加的平均电流小于1uA,则整体功耗大约为2.8uA(0.4uA + 1.4uA + 1uA)。
实验说明
给单片机断电,触发低压中断,向01地址中写入512个字节的01,然后重新上电,通过串口1读取地址01的内容,读取完毕后发送0xFF,作为结束标志。
帧格式: XX(读写) XX(地址) 数据 返回
读: 00 1-2 无 数据
写: 01 1-2 数据 FE
发送:01 01 11 22
返回:FE
发送:00 01
返回:11 22
断电上电后

说明,滤波电容为22uF、10uF、10uF,最多可以写入506字节,但是最好写400字节
接线图
无
编写程序
代码说明:部分代码借鉴STC官网,根据实验改动,由于代码过只展示部分代码,完整代码可下载。



更多推荐



所有评论(0)