2024-02-04 10:53 PM
Hi, when configure MCU to deep sleep mode as the low power mode, it seems okay when debugging. But, when only power up STM32C0 by just connected its vcc and ground, it do not enter its interrupt. How can I solve it?
My project goals are to achieve lowest current consumption and MCU able to communication with other modules through I2C and USART. Those communication protocols are triggered by its interrupt using timer1.
2024-02-04 11:20 PM
In deep sleep the standard peripherals are turned off, so they cannot wake up the processor. Read the manual and check how can you wake up the MCU from deep sleep.
2024-02-06 10:17 PM
Hello,
I have checked, it can work in deep sleep. But i try debug, it does wake up from deep sleep....
2024-02-06 10:35 PM - edited 2024-02-06 10:36 PM
TIMx timers are stopped in stop mode. In the code above I cannot see any peripherals being activated, so they cannot generate any interrupts.
2024-02-06 10:44 PM
Then, any suggested peripheral use in deep sleep mode and able wake up the i2c and uart communication?
2024-02-07 01:59 AM
Use RTC for periodic wakeup. UART may wake up on incoming transmisssion.
2024-02-07 03:22 AM
As @gbm suggested you can use USART1 to wake up from stop 0, but as far as I know (from L0 and L4 uC) you must have LSI enabled and running, and USART1 must use LSI as its clock source (which means that you can't have high baud rate).
I don't know about I2C.
In any case check the C0 reference manual.
2024-02-14 05:53 PM
Thank you for the information. I have solved my case by implementing the provided info and methods.