Rocketman46
Member level 3
Hi,
I am just in the process of understanding the best way to use my ATMEGA328P in low power mode. Currently it runs constantly at 4 mhz with an external crystal. The system runs the i2c at 100 kHz and usart at 9600 baud.
So am I correct in thinking, to swap the 4 mhz external crystal for a 32 kHz and put the micro to sleep when external devices are not being used. And to wake the micro up using an interrupt when an external event occurs. But when the micro wakes up and my only clock is 32 kHz the i2c and usart will not operate as the clock speed is to slow.
So is the best way to Implement this is to use a 32 kHz external crystal, put the micro to sleep, wake up via interrupt, implement services using the internal 4 mhz clock, then put to sleep and use the low power external 32 kHz crystal again.
Please feel free to comment on my thinking.
Thanks.
I am just in the process of understanding the best way to use my ATMEGA328P in low power mode. Currently it runs constantly at 4 mhz with an external crystal. The system runs the i2c at 100 kHz and usart at 9600 baud.
So am I correct in thinking, to swap the 4 mhz external crystal for a 32 kHz and put the micro to sleep when external devices are not being used. And to wake the micro up using an interrupt when an external event occurs. But when the micro wakes up and my only clock is 32 kHz the i2c and usart will not operate as the clock speed is to slow.
So is the best way to Implement this is to use a 32 kHz external crystal, put the micro to sleep, wake up via interrupt, implement services using the internal 4 mhz clock, then put to sleep and use the low power external 32 kHz crystal again.
Please feel free to comment on my thinking.
Thanks.