微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > CC2640如何主动进入IDLE或者STANDBY模式?

CC2640如何主动进入IDLE或者STANDBY模式?

时间:10-02 整理:3721RD 点击:

各位好,

我想知道有没有API接口可以让我的mcu进入IDLE或者STANDBY模式。

类似shutdown模式的 Power_shutdown(NULL);函数。

用这个API  Power_sleep()

另外可以参考下 TI-RTOS pinStandby 这个例程

Hi Viki,

1.TI-RTOS pinStandby例程在哪里找?

2. 调用Power_sleep();或者Power_sleep(NULL);都编译不过。提示参数不对。我只找到#define Power_sleep ti_sysbios_family_arm_cc26xx_Power_sleep

3.Power_sleep是进入IDLE模式还是STANDBY模式?

4.我在main函数中屏蔽了

// Power_setConstraint(Power_SB_DISALLOW);
// Power_setConstraint(Power_IDLE_PD_DISALLOW);

电流只降低0.5mA,有2.5mA将至2.0mA。这正常吗?

我描述一下我的需求吧,您给个好的方案么。

低功耗模式下,电流要尽量的低,但是一定要进行BLE广播,当有BLE连接时,唤醒芯片,正常工作。

安装tirtos_cc13xx_cc26xx,在tirtos_cc13xx_cc26xx_2_16_01_14_examples文件夹下可找到

Power_sleep() 的具体调用过程请看http://www.ti.com/lit/ug/sprui20/sprui20.pdf 第12页步骤9

Hi viki,

 这个NOTIFY_LACTENCY,程序里面就没有。有没有相关的说明文档?

          

Hi Viki,

我把NOTIFY_LATENCY强制写成0,可以进入STANDBY模式。

请问:如何把STANDBY模式唤醒?

          如何进入IDLE模式?

         如何把IDLE模式唤醒?

请您一次性都说了,或者有个文档。这么挤牙膏方式交流真的好累,我真的是找不到方式了,才来烦您的,请您不要烦我。

HI viki,

按照我的需求,我还得需要RTC相关的资料,您能给我发个资料吗

文档就是上面发的那个: Power Management for CC26xx SimpleLink Wireless MCUs 

http://www.ti.com/lit/ug/sprui20/sprui20.pdf 

无论哪种更好模式,操作上就是打开POWER SAVING的宏,然后使用Power Consumption处理,文档上有详细说明。

请不要急躁,有问题还可以继续探讨。如果需要其他资料请回帖告诉我

关于RTC的使用,建议看下这两个帖子:

https://e2e.ti.com/support/wireless_connectivity/bluetooth_low_energy/f/538/t/467792

https://e2e.ti.com/support/wireless_connectivity/bluetooth_low_energy/f/538/t/478380

Hi Viki,

我现在的需要实现这样的功能:

1.每间隔100ms,CC2640由STANDBY模式切换的到IDLE模式,进行广播,检测连接。

2.如果有设备连接它,就不切换到STANDBY模式;否则再次进入STANDBY模式。

3.重复以上操作。

我理解的:

Power_setConstraint函数是允许进入相应的模式,进不进去还得看具体的代码。

我这么理解对吗?

Hi Viki,

我需要是在STANDBY模式下,RTC何如唤醒芯片的例子,这个方面有没有?

HI Viki。

您好,其实我需要的是RTC唤醒 CC2640的相关资料

Power_setConstraint也可以用于不允许进入standby模式---Power_setConstraint(Power_SB_DISALLOW);

“如果有设备连接它,就不切换到STANDBY模式;否则再次进入STANDBY模式” 这种情况你可以做个判断,有设备连接就用上述语句disallow standby

目前只有在TI RTOS下的RTC资料,目录: C:\TI\tirtos_simplelink_2_13_00_06\products\cc26xxware_2_21_01_15600\doc\driverlib\group__aonrtc__api.html

相关例子请看这边: https://e2e.ti.com/support/wireless_connectivity/bluetooth_low_energy/f/538/p/455021/1641514#1641514

Hi Viki,

调用了Power_sleep()进入standby之后,如何唤醒呢?

请问大神

如何确认当前是什么模式?

比如我调用了Power_sleep(),但是不知道有没有进入standby模式,这时怎么知道当前状态?

请参考下本文档中的wakeup介绍: http://www.ti.com/lit/ug/sprui20/sprui20.pdf

通过功耗判断是个不错的办法

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

网站地图

Top