如何让CC3200正确进入LPDS模式?
RT,请问如何让CC3200正确进入LPDS模式?
希望能使设备进入 MCU LPDS + NWP LPDS 的状态, 手册上的标称电流是 0.25mA(250uA)
1.如果使用 idle_profile_nonos例程,需要做什么修改?
2.是否一定要让CC3200连接AP以后才能进入LPDS模式?
你好,
如何让CC3200正确进入LPDS模式:
In Non-OS mode, the call to cc_idle_task_pm should be made directly to get into the LPDS mode (after initialization and setting wake up source).
In OS mode, the idle hook of the OS would invoke cc_idle_task_pm, to enter into LPDS.
至于在代码里如何实现LPDS,你可以参考如下链接,但是是基于TI-RTOS的。
https://e2e.ti.com/support/embedded/tirtos/f/355/p/574775/2119936#pi317008filter=all&pi317008scroll=false
idle_profile例程是使用了RTOS的,如果你要改为nonos模式,可以参考如下步骤:
1. You will be able to reuse the PM framework files (cc3200-sdk\middleware\framework\pm) and also the supporting reference implementation for the platform (cc3200-sdk\middleware\soc).
2. The drivers use the OS services but not the HAL. So you will need to make a choice here. Anyways you will need to do a reinitialzation of the hardware in the lp3p0_restore_soc_data function.
3. You may be able to reuse the cc3200-sdk\example\idle_profile\lp3p0_plat_ops.c.
4. The file cc3200-sdk\example\idle_profile\lp3p0_board.c will need modifications to not register the drivers.
This is just a direction. Please try to follow the idle_profile working to make more informed changes.
With this as reference, you may also try to rewrite the LPDS entry-exit sequence.
对于CC3200,其包括两种LPDS模式,即MCU LPDS+NWP Idle Connected以及MCU LPDS + NWP LPDS模式;
1.MCU LPDS+NWP Idle Connected
这种模式下,电流消耗为0.695mA,该模式下APPs-MCU处于LowPowerDeepSleep模式下,而设备仍然连接着AP。此时唤醒源可以为waketimer,GPIO和network activity。
2. MCU LPDS + NWP LPDS
这种模式下,电流消耗为0.25mA,该模式下 APPs MCU enters LPDS and the networking engine is not started (NWP LPDS is the default).
不需要CC3200连接AP才能进入LPDS模式,
M4内核可以进入 LPDS但是如果要一直在网则NWP 必须一直connect AP 此时的功耗大约在600uA~2mA 波动 CC3200的大约平均功耗为 1mA 左右,同时M4内核可以通过定时器的方式进行周期的唤醒,进行数据的计算和TCP、UDP数据的发送工作。
之前在实验室简单做过一个CC3200的功耗实验,可以参考如下(详见附件)
实验室实际测试功耗记录(测试代码 idle_profile_nonos): 模式 条件 电流消耗 测试图 Datasheet
M4 Active(80MHz)+NWP connect AP 1 15.9mA 图 1 15.3mA
M4 LPDS+NWP start but do nothing 2 282uA 图 2 266uA
M4 LPDS+NWP connect AP<1> 3 600uA~2mA(Avr=900uA) 图 3 图 4 825uA
M4 LPDS+NWP Hib<2> 4 229uA 图 5 120uA
M4 Hib+NWP Hib 5 10.65uA 图 6 4uA 备注: M4 LPDS(RAM-Retained)/Hib(RAM-Not Retained) 唤醒: RTC+GPIO(UART 复用 GPIO)
M4 Active+NWP connect AP =15.9mA
M4 LPDS+NWP connect AP =600uA~2mA 波动 大约平均功耗为 1mA 左右
M4 LPDS+NWP start but do nothing 即 sl_start 但不连接 AP =282uA
M4 LPDS+NWP 进入 Hib 模式 229uA 注意此时网络已经断开,但是 RAM 还是保存的!
M4 Hib+NWP 进入 Hib 模式 10.65uA(注意 Hib 模式下测试的电流消耗为 CC3200+SPI_Flash 的功耗,而 Datasheet 上 4uA 是不包括 SPI_Flash 的功耗)