一 前言
一个不断获取加速度变化并作数据波形分析的蓝牙通信设备,经过不断尝试与改进,总算把设备静态功耗做到了 15uA 以下,在间隔 SPI 获取数据以及无线通信的基础上,平均功耗做到了 25uA 左右,也算是对近期努力的一个回馈。
二 低功耗设计
2.1 控制子模块电路电源
比如 AD 采样电压电路,可以通过 GPIO 对采样电源进行控制,解决不采样时电阻分压电路一直通电增加功耗的问题
2.2 控制 MCU 内部外设
把不需要使用的外设时钟全部关闭,需要时开启;比如固件分 debug 和 release 版本,release 版本屏蔽串口调试输出,关闭串口时钟;
2.3 控制时钟频率
同等时间内,时钟越快,功耗越高,根据需要设置合适的时钟频率
2.4 控制 IO 状态
未用到和悬空的 IO,配置为模拟输入并启用内部上拉或下拉,若无模拟输入功能则配置输入模式并启用内部上拉或下拉,或者配置成输出模式并设置为低电平;凡是对接其他子模块电路的 IO 需要关注子模块的 IO 状态进行对应调整,避免存在电压差
2.5 降低唤醒频率
比如通过 SPI 读取子模块的数据,可开启子模块的 FIFO,由轮询读取改为中断触发读取,这样提高 MCU 休眠时间,读取数据更高效。
2.6 分析功耗时需要拔掉一切外接线
比如串口线,下载线,调试器等等