I am trying to set one 4200 BLE CPU at Stop Low Power Mode. The snippet of code to do this is the following
inline void GotoStop()
sense_Batt_SetDriveMode(sense_Batt_DM_ALG_HIZ); // High Z
RED_P_SetDriveMode(RED_P_DM_ALG_HIZ); // High Z
GREEN_P_SetDriveMode(GREEN_P_DM_ALG_HIZ); // High Z
BLUE_P_SetDriveMode(BLUE_P_DM_ALG_HIZ); // High Z
but unfortunately nothing happens. The power consumption remains the same.
The strange thing is that if I changed the first code line from CySysPmSetWakeupPolarity(CY_PM_STOP_WAKEUP_ACTIVE_LOW); to CySysPmSetWakeupPolarity(CY_PM_STOP_WAKEUP_ACTIVE_HIGH); the CPU goes at Stop mode and the power consumption is almost zero.
But as far as my hardware asks for falling edge at pin P0.7 for wake up, the CPU remains at Stop Low Power Mode forever.
Any idea, or suggestion?
Solved! Go to Solution.
For PSoC 4200 BLE device, Stop Mode wake-up is possible with P2 only. Or else, you need to use XRES.
Also please Un-Freeze the IOs initially. By default polarity of Wake-Up pin is low, so we need not explicitly mention that.
I am attaching a sample project tested in the -042 BLE Kit. it works fine when a falling edge is given to P2. Please ensure that before again putting the device to Stop mode again, the Pin is at high potential. The wake-up signal is level based.