CH582M蓝牙从机模式使能HAL_SLEEP模式应用问题

目前在做CH582M蓝牙从机模式使能HAL_SLEEP模式应用时遇到了一些问题:

1. CH582M蓝牙从机模式打开HAL_SLEEP模式宏定义,RTC中断只进去了一次,CH58X_LowPower也相应的只执行了一次,而不是循环工作,这是什么原因?另外CH58X_LowPower函数参数是传入了什么样的数据?是cfg.WakeUpTime = WAKE_UP_RTC_MAX_TIME;这个变量吗?

2. config.h文件里面,CH583比CH573多了三个宏定义:

?/* 非空闲模式下睡眠的最小时间(单位:一个RTC周期)? */

?#ifndef SLEEP_RTC_MIN_TIME

?#define SLEEP_RTC_MIN_TIME? ? ? ? ? ? ? ? ? US_TO_RTC(1000)

?#endif

/* 非空闲模式下睡眠的最大时间(单位:一个RTC周期)? */

#ifndef SLEEP_RTC_MAX_TIME

#define SLEEP_RTC_MAX_TIME? ? ? ? ? ? ? ? ? MS_TO_RTC(RTC_TO_MS(RTC_TIMER_MAX_VALUE) - 1000 * 60 * 60)

#endif

/* 等待32M晶振稳定时间 (单位:一个RTC周期) */

#ifndef WAKE_UP_RTC_MAX_TIME

#define WAKE_UP_RTC_MAX_TIME? ? ? ? ? ? ? ? US_TO_RTC(1400)

#endif

如果要调整功耗,该修改哪一个参数?取值范围怎么调节?


请问厂家有没有调试成功的CH582的HAL_SLEEP模式的工程,麻烦发我一份,邮箱:个人信息保护,已隐藏



最小睡眠时间设置的过小没有意义,毕竟代码需要执行时间,因此这里给了1ms进行判断;

最大睡眠时间设置1天的时间,这是RTC的机制导致的,结合TMOS来看时间参数填写不要超过23.5小时。

针对你的问题:1、开启睡眠后一定会频繁的进入CH58X_LowPower这个函数的,可以在该函数一开始加打印进行查看;2、需要在蓝牙基础上调整功耗,一般是针对蓝牙进行调整,如TMOS任务的执行,广播间隔和连接间隔,这些参数是对功耗产生重要影响的。


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