低功耗常见问题

1. 为什么我配置Sleep模式,系统还是不会进入睡眠?

  • 这种情况一般是外设还在工作,阻止了系统进入睡眠,可参考社区论坛的方法,查找正在工作的外设:https://developers.goodix.com/zh/bbs/detail/bec3c962c72c4988bb6852ae250e9e8b。

2. UART调用app_uart_receive_async后,系统不进入睡眠?

  • 调用app_uart_receive_async后,由于还没收到数据,此时处于RX Busy状态会阻止系统进入睡眠,这时可以调用app_uart_abort退出接收数据,随后系统便能正常进入睡眠了。

4. 程序中没有设置唤醒时间,蓝牙没有开,直接进入睡眠模式后,为什么会每隔30s自动唤醒一次?

  • 在SDK包中,默认会开启30s间隔的PMU校准,该校准可以增强系统PMU的健壮性。

#ifndef DRIVER_TEST
/* Enable auto pmu calibration function period =3s on default. */
system_pmu_calibration_init(30000);
#endif