开启POWER_SAVING宏开关后,汇总所有出现的问题
1.开启POWER_SAVING宏开关后,什么时候设备会进入PM2模式,什么时候进入PM3模式呢?
2.开启POWER_SAVING后,在PM2或PM3模式,是否外部晶振都会被关闭掉,只会使用32K的晶振呢?
3.如果进入了PM2模式,此时是否能够直接搜索到广播的连接信息?那么软件定时器事件触发了是否可以唤醒CC2541,此时是否能够直接搜索到广播的连接信息?唤醒后多久再次进入PM2模式呢?
4.同样如果在PM3模式,此时是否能够直接搜索到广播的连接信息?那么按键中断触发后,是不是会立即唤醒CC2541,此时是否能够直接搜索到广播的连接信息?多久后会重新进入PM3模式呢?
5.开启POWER_SAVING后,建立蓝牙连接比较困难,如LightBlue连接CC2541后,很容易断开链接,或者很难连接上,总是出现超时问题,此原因是?
欢迎各位围绕开启低功耗的这个点,再补充新的问题。
以上一些问题都一直没有得到清晰统一的解答,希望在本贴中能够得到完整的支持,方便后续开发人员清晰的得到正确的答案。回答时希望能够按点给出。
期待各位技术牛人的支持,谢谢!
xiaobo,
唉,老问题了,回答了不知多少次了,有空论坛里面搜索搜索。
1. 在有连接的情况下,或者无连接的情况下,但是有定时任务的时候,会进入PM2. 如果在无连接情况下,连定时任务都没有,那么就进入PM3.
2. PM2模式下,高速的会关掉,32K继续用。PM3下,两个全关。
3. 进入PM2当然不能搜到。必须在active 的模式下才能搜索,接收和发送数据也一样。系统就是通过定时唤醒来完成你说的这些事情的。完事后多久进入PM2,TI的官网有个功耗测试指导PDF,里面你可以看一下,做完post process之后就进了。
4. PM3, 连时钟都没了,搜索个毛啊。按键能唤醒,但你要启动搜索之后才能搜索到东西,又不是醒着就一直在搜索。多久,参考问题2.
5. 显然你的32K 有严重的问题。ppm没达标,或者质量不行,或者电路不行等等等等,反正是32K。
在PM2模式时,如何利用定时器跳出休眠模式
使用 sleepTimer 定时器,对应 32.768KHz 的晶振,Timer 1、2、3、4 都不能唤醒 PM2 模式
1预编译POWER_SAVING;
2-DRFD_RCVC_ALWAYS_ON=FALSE
3
pwrmgr_attribute.pwrmgr_device = PWRMGR_BATTERY; 允许节电
pwrmgr_attribute.pwrmgr_task_state = 0;
4 HalKeyConfig(HAL_KEY_INTERRUPT_ENABLE, OnBoard_KeyCallback); 按键使能 关闭按键轮询
终端在连上网后 等级一个5s的事件 在5s事件里 继续登记5s事件, 达到没5s唤醒的目的,因为要收到协调器的消息 -DPOLL_RATE=1000 每1s唤醒发送数据请求
实际运行时 , 每1s 黄灯闪一次 这是数据请求的唤醒 然后闪的第五次会在闪 这是5s的唤醒 , 然后我通过协调器给终端发数据 终端接收到了 ,之后协调器再给终端发数据 都接收不到了
一直没找到原因, 请教TI大神