最近项目中需要用到门磁,用的STM8L051芯片。使用纽扣电池自然少不了要求低功耗节能省电。

首先看下这款芯片的低功耗能力:

STM8L051低功耗实现-LMLPHP

halt模式下可以达到350nA,可以说是非常省电了。从Halt模式唤醒的时间也非常快,只需要5us。

门磁的功能介绍:就是利用磁铁吸合干簧管之后,给单片机一个脉冲,分开后再产生一个脉冲。然后通过无线发射模块将状态发送出去。非常简单。

实现思路:

上电后进入Halt模式-->有按键或吸合IO变化,唤醒MCU-->发射状态-->完成后进入Halt模式,如此循环。

补充,在进入Halt模式之前,要先做好一些前期设置,否则测量出来的电流会与理想值有偏差。

主要是IO口的设置。1.空的引脚全部推挽输出高或低;2.有上拉的引脚设置为推挽输出高电平;3.有下拉的引脚设置为推挽输出低电平;4.触发源的IO还是保持原样不变,一般是配置的外部触发输入。

STM8L051低功耗实现-LMLPHP

进入Halt模式,直接调用halt()函数即可。

最终测试,待机状态电流值在20uA,正常工作发射数据时约为25mA。不知道能不能优化,后续会继续观察。

02-11 06:48