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.

CC3220MODA: Power_shutdown() function for permanent hibernation

Part Number: CC3220MODA

Hi, 

I'm using the function "Power_shutdown(0, 7200000)" to go to hibernation and wake up automatically after 2 hrs and it works well.

Then how can I put the device into hibernation until I push/pull the wake-up GPIO?

Check.1

I tried to put 0 for time parameter (Power_shutdown(0, 0)) but the device wakes up after about a few hrs.

Check.2

In the definition of this function (Power.h), the second parameter looks clear : time in milliseconds and not supported on all families.

But the first parameter is not clear as it says "device-specific shutdown state" and I could't find device-specific definitions.

I've read the link below and still not clear.

http://downloads.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/tirtos/2_14_02_22/exports/tirtos_full_2_14_02_22/docs/doxygen/html/_power_8h.html#a29fb5d887d2b49ffbe86472dee8cd338

So my questions are

Q1. What is correct way to put the device into permanent hibernation?

Q2. Where can I find device-specific definitions for the first parameter?

Q3. In the "out_of_box" example, I can find powerShutdown(MAX_INT) which means Power_shutdown(?, 7FFFFFFF).

But the definition in Power.h defines the type of the second parameter as uint_32 which can max out to FFFFFFFF.

What does MAX_INT(7FFFFFFF) means? 

Thanks,

Yun

  • Hi Yun,

    Q1. What is correct way to put the device into permanent hibernation?

    See section 15.3.10 Hibernate of the Technical Reference Manual. You can use PRCMHibernateWakeupSourceDisable() to disable the slow clock counter as a wakeup source.

    Q2. Where can I find device-specific definitions for the first parameter?

    Power_shutdown() automatically puts the device in its lowest-power state (hibernate)--the first parameter should just be 0. Device-specific implementations can be found in PowerCC32XX.h and PowerCC32XX.c

    Q3. In the "out_of_box" example, I can find powerShutdown(MAX_INT) which means Power_shutdown(?, 7FFFFFFF).

    In the case of the out_of_box example, powerShutdown(MAX_INT) calls Power_shutdown(0, 0x7FFFFFFF) which puts the device in hibernate for 2,147,483,647 milliseconds.

    Best regards,

    Jesse

  • Hi Jesse,

    Thank you for your reply.

    Summary, you are saying that I can't have permanent hibernation with Power_shutdown() function. 

    Regarding MAX_INT, what I'm asking is that MAX_INT is 0x7FF.. although it can actually go up to 0xFF... as it is typed uint32_t.

    So I though MAX_INT value triggers something else such as permanent hibernation.

    Regards,

    Yun