SWRU543B January 2019 – June 2025 CC3230S , CC3230SF , CC3235MODS , CC3235MODSF , CC3235S , CC3235SF
In this mode, the entire SOC loses its state, including the MCU subsystem, the NWP subsystem, and SRAM except 2 × 32-bit OCR registers and the free-running slow-clock counter. Core resumes its execution in the ROM bootloader upon wakeup due to configured wake sources, which include the following:
Hibernate wake-up sources are configured using the following APIs:
● void PRCMHibernateWakeupSourceEnable(unsigned long ulHIBWakupSrc)
Description: This function enables the specified HIB wake-up sources.
Parameter: ulHIBWakupSrc: Bit-packed representation of valid wake-up sources. ulHIBWakupSrc is bitwise or one or more of the following:
Return: None
● void PRCMHibernateWakeupSourceDisable(unsigned long ulHIBWakupSrc)
Description: This function disables the specified HIB wake-up sources.
Parameter: ulHIBWakupSrc: Bit-packed representation of valid wake-up sources. ulHIBWakupSrc is bitwise or one or more of the following:
Return: None
● unsigned long PRCMHibernateWakeupCauseGet(void)
Description: This function gets the HIB wake-up cause.
Parameter: None
Return: Returns the HIB wake-up cause enumerated as one of the following:
● void PRCMHibernateWakeUpGPIOSelect(unsigned long ulMultiGPIOBitMap, unsigned long ulType)
Description: Sets the specified GPIOs as wake-up source and configures them to sense the specified event.
Parameter:
Return: None
● void PRCMHibernateIntervalSet(unsigned long long ullTicks)
Description: This function sets the HIB wake-up interval based on the current slow clock count. The 48-bit timer is clocked at 32.768 kHz and triggers a wakeup when the counter reaches a particular value. The function computes the wake-up count value by adding a specified interval to the current value of the slow clock counter.
Parameter: ullTicks: Wake-up interval in 32.768-kHz ticks
Return: None
● The application can put the system in HIB by invoking the following API:
void PRCMHibernateEnter (void)
Description: This function puts the system into hibernate power mode.
Parameter: None
Return: None
Two 32-bit OCR registers retained during the hibernate power mode can be accessed using the following APIs:
● void PRCMOCRRegisterWrite(unsigned char ucIndex, unsigned long ulRegValue)
Description: This function writes into a specified OCR register.
Parameter:
Return: None
● unsigned long PRCMOCRRegisterRead(unsigned char ucIndex)
Description: This function reads from a specified OCR register.
Parameter: ucIndex: Selects one of two available registers, 0 or 1
Return: Returns a 32-bit value read from a specified OCR register.