Hi,
I am developing a device based on a TM4C MCU that most of time is doing nothing but waiting for external signals to wake up. In the sleep and deep sleep modes, the input TTL signals are programmed as interruptions and the system is waken up very easy. But, the system also needs to be waken up periodically, let's say every 5 or 10 minutes, even every hour, to measure some parameters of external sensors.
My first (and so far, unique) idea was to use a timer whose interruption could wake up the system from sleep mode. The problem that I see is that the timer is limited by the timer load. For instance let's suppose the clock frequency is set to 16 MHz. Then, if the maximum load value in ROM_TimerLoadSet is set, that is (2^32 -1), the maximum period of the interruption is (2^32 -1)/16MHz= 268 sec=4,47 minutes.
Are my calculations right?
Do yo know other ways to wake up the MCU from sleep mode after long period?
I know that I could use the hibernation mode and that it would be quite easy to program the time out. But I am quite new in programming MCU and I see this mode quite tricky so far. As I said, the device periodically measure the value of several sensors and stores the result in memory. I have the feeling that if I do not configure the hibernation mode well, these date sets will be lost. So, I prefer to work in the sleep or deep sleep mode so far. I'm aware that sooner or later I will have to use the hibernation mode.
Thank you for any help,
Gerard