树莓派5包含一个RTC模块。这可以通过位于USB-C电源连接器右侧的电路板上的J5 (带 JST 型 SH 2P 接头的电线)连接器进行钮扣电池供电。
这样在断网或者掉电的情况下RTC仍然可以保存时钟信息,此外,RTC接口还可以用于实现定时器功能,例如定时唤醒、定时中断等。这对于需要精确控制时间的应用程序来说是非常有用的。
给可充电的钮扣锂电池充电
在准备时就需要购买一枚可以充电的钮扣锂电池。
将充电电压设置为3v,通过把 rtc_bbat_vchg 添加到 /boot/firmware/config.txt来实现:
sudo nano /boot/firmware/config.txt
#在文尾添加一句:
dtparam=rtc_bbat_vchg=3000000
可以使用以下命令检查备用电池的电压。
cat /sys/devices/platform/soc/soc:rpi_rtc/rtc/rtc0/battery_voltage
输出为:
电池将采用涓流充电。从config.txt中删除dtparam这一行就可以停止涓流充电。
控制低功耗定时输出
我们可以让树莓派5进入低功耗状态电流只有3MA,为了支持低功耗唤醒模式,你应该编辑bootloader配置:
sudo -E rpi-eeprom-config --edit
#内容修改为:
[all]
BOOT_UART=1
POWER_OFF_ON_HALT=1
WAKE_ON_GPIO=0
BOOT_ORDER=0xf41
如果你后悔了,不想这样设置可以输入:
sudo rpi-eeprom-update -r
重启(reboot)生效,此时的待机功率仅1.3W。
测试十分钟低功耗待机重启代码:
echo +600 | sudo tee /sys/class/rtc/rtc0/wakealarm
sudo halt