【教程】小安派BW21-CBV-Kit——深度睡眠

[复制链接]
查看75 | 回复1 | 2025-1-20 16:32:28 | 显示全部楼层 |阅读模式

用料

  • BW21-CBV-Kit x 1
  • (可选)按钮 x 1
  • (可选)220Ω电阻 x 1

示例

说明

在这个示例中,开发板将演示深度睡眠模式以节省电力。

深度睡眠模式有 3 种唤醒源:AON 定时器、AON GPIO 和 RTC。系统将倒计时 5 秒,然后进入深度睡眠模式。

当唤醒源被触发时,系统将重新启动并再次唤醒。

模块和板在深度睡眠模式下的功耗报告列在以下两个表格中。

RTL8735B 模块功耗测试结果

唤醒源 模块功耗(uA)
深度睡眠模式(在 3.3V 下测量)
AON 定时器 32.78
AON GPIO 40.98
RTC 41.08

AMB82 迷你板功耗

唤醒源 开发板功耗近似测量(mA)
正常模式
AON 定时器 53.01
AON GPIO 52.97
RTC 53.05

实现流程

“文件”->“示例”->“AmebaPowerMode”->“DeepSleepMode”中打开示例。

image.png

  • 接下来是设置系统并进入电源模式。请参阅以下步骤进入深度睡眠模式。
    • 步骤 1:设置“WAKEUP_SOURCE”,AON 定时器:0;AON GPIO: 1; RTC: 2.
    • 步骤 2:设置唤醒源设置。有 3 种唤醒源,每种都有自己的设置。

对于 AON 定时器,在 #if (WAKEUP_SOURCE == 0)部分,设置“CLOCK”和“SLEEP_DURATION”的值。“CLOCK”可以是 4MHz 或 100kHz。“SLEEP_DURATION”单位是秒。

对于 AON GPIO,在“#elif (WAKEUP_SOURCE == 1)”部分,设置“WAKUPE_SETTING”的值。在这种情况下,“WAKUPE_SETTING”是引脚号,可以是 21 或 22。GPIO 引脚设置为高电平有效,请参考以下连接图。

image.png

对于 RTC,在“#elif (WAKEUP_SOURCE == 2)”部分,设置“ALARM_DAY”,“ALARM_HOUR”,“ALARM_MIN”或“ALARM_SEC”的值。所有闹钟值设置 RTC 唤醒的持续时间。范围是“1 天,0 小时,0 分,0 秒”到“365 天,23 小时,59 分,59 秒”。

  • 步骤 3:启动深度睡眠模式。

这一步只有一个可选设置。当唤醒源设置为 RTC 时,使用“PowerMode.start(1970, 1, 1, 0, 0, 0);”替换“PowerMode.start();”来设置开始时间。(默认是 1970 年 1 月 1 日 00:00:00)。

image.png

要唤醒,所有定时器将在持续时间结束后自动唤醒,所有 GPIO 引脚必须通过按下按钮激活高电平。

正确的启动、进入深度睡眠和重启周期将与以下图片相同。

image.png

用心做好保姆工作
回复

使用道具 举报

1055173307 | 2025-1-21 10:49:00 | 显示全部楼层
学习
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则