关于CH573在BLE模式下睡眠和唤醒

用的是BLE_PHY例程。有没有这样的一种机制:


  1. 通过蓝牙指令让CH睡眠。(这个已经实现)

  2. 再次通过蓝牙数据唤醒CH




第二步骤有没有可参考的程序呢?


目前我能想到的就是利用RTC,定时唤醒,然后收几个BLE包,判断是否继续睡。但是不知道该采用哪种睡眠能够最大程度的降低功耗。目前试了几个,效果不是特别理想。


CH573EVT包中没有BLE_PHY这个例程,用的是RF_PHY例程吧?

32M主频在休眠期间是停止工作的,而2.4G频段的信号依赖32M晶振产生,故2.4GRF的接收功能,在sleep休眠期间是关闭的.目前只有“先唤醒再收包”这个逻辑可以用来在休眠后接收2.4GRF信号。“利用RTC,定时唤醒,然后收几个BLE包,判断是否继续睡”或者用GPIO唤醒后再去开RF收包,一个道理。

采用哪种睡眠能够最大程度的降低功耗”使能HAL_SLEEP后的sleep休眠,是次最低功耗了;shutdown休眠是最低功耗,不过唤醒后MCU会复位。

功耗不仅与休眠等级有关,与唤醒频次、唤醒后的工作时长关系更为密切。可以监控MCU的工作时长,尽量压缩。


只有登录才能回复,可以选择微信账号登录