CC2640R2F: 关于自动进入StandBy状态的问题
各位大侠好,
最近因项目需要,要求适时令CC2640R2进入StandBy低功耗状态。发现几个问题恳请解答一下,看看我个人的理解对不对。
1.我看了一些问题和回复,不知CC2640R2F进入低功耗模式是不是也是TI-RTOS让自动进入的?
2.是否在调用 Power_setConstraint(POWERCC26XX_SB_DISALLOW) 这一句后,CC2640R2F会被禁止进入StandBy状态以维持蓝牙连接?(同样也需要禁止自动进入ShutDown状态)
3.是否在调用 Power_releaseConstraint(POWERCC26XX_SB_DISALLOW) 这一句后,如果再使用Semaphore_pend()将Task线程截停,系统是不是就自动进入StandBy状态了?(但要禁止进入ShutDown状态)
4.如果我写的不对,请问我丢掉了什么命令没写?
5.官方的SDK包内例程是使用sleep指令让CC2640R2F进入StandBy状态的,但例程中有5秒的StandBy时间限制,请问sleep指令能不能永久令CC2640R2保持StandBy状态,除非用Pin唤醒?
6.当CC2640R2F进入StandBy状态后,如何用中断方式唤醒?
谢谢。
standby 和 cc2540 pm2工作模式类似的,都是通过powersaving模式,
32k定时器唤醒工作
1、是,开启power saving并无任务执行的情况下,TI RTOS自动进入低功耗
2、是
3、是
4、建议参考CC26XX power management文档: http://www.ti.com/lit/ug/sprui20/sprui20.pdf
5、standby状态可以用定时器唤醒,你可以自己设置唤醒时间
6、一般来说,standby用定时器唤醒,如果RF频率不高,为什么不进入shutdown模式?更低功耗,中断唤醒
感谢您的帮助。
6.我看了一下手册,是因为shutdown模式不能保持RAM内的数据,这样一来会给程序的运行造成麻烦,所以考虑使用standby,但是范例中的standby状态有时间限制,过了时限之后恢复工作,所以我需要一个能无时间限制保持standby的方法,并且可以用中断方式唤醒