微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI无线射频设计 > CC1310 低功耗问题

CC1310 低功耗问题

时间:12-23 整理:3721RD 点击:

致TI工程师:

pinshutdown例程我这边已经了解过了,使用power_shutdown确实是可以进入低功耗,不过每次唤醒都会重启,这一点有点麻烦

我看到手册上,可以使用和CC2650相同的指令Power_setConstraint(PowerCC26XX_SB_DISALLOW);及Power_releaseConstraint(PowerCC26XX_SB_DISALLOW);来控制,但是实际使用的时候,我发现并没有进入低功耗,串口的数据收发都还是正常的,功耗也是6.3mA。

问题是:以上两个电源控制指令在CC1310的使用中有什么特殊的前提条件或者配置需要修改吗

先行感谢!

增加一下叙述:

CC1310 launchpad使用Power_shutdown进入低功耗,Button IRQ唤醒,按键中断回调中使用Power_setConstraint(PowerCC26XX_SD_DISALLOW);

这样好像不能约束它不再进入shutdown状态

TI-RTOS已经帮你做好了低功耗相关操作。

当用户定义的task都处于pending状态时,处于最低优先级的idle task将得到控制权,这时系统就可以进入低功耗状态了。

所以,对于用户来说,不需要执行特定的语句使系统进入低功耗状态,只需要通过Semaphore、Event等机制,升值task_sleep()使用户定义的task都处于被blocked的pending状态,系统就会自动进入低功耗了。

进入最低功耗模式相当于要重新加载代码,所以唤醒的感觉就像重启。

如果用Power_setConstraint指令并不是让芯片处于最低功耗模式

请问我不用TI-RTOS要如何实现低功耗呢?我们的系统用电池供电,要采集电池电压,要采集外部传感器的信息,然后通过无线与其它节点通讯,该如何做到低功耗?

请问你为什么不用TI-RTOS呢?

TI-RTOS帮用户省去了功耗管理相关的许多繁琐操作,当所有的user task处于blocked状态时,系统就会进入standby。

请问升值task_sleep()是什么意思?是在每个任务结束后调用这个函数吗?

请问有没有一个返回值或者标志位,标志系统进入了standby模式?比如我需要在进入低功耗前把所有的IO口关闭,我需要如何操作?

task_sleep是将当前task置于blocked状态指定时间。

用得更多的是event或semphore

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top