This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

如何让CC3200正确进入LPDS模式?

Other Parts Discussed in Thread: CC3200

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 的功耗)

    CC3200-Power Management Test Report-V2.0.pdf
  • 能说一下这个测试中,你是怎么接线的吗?以及MCU的电源是谁提供?