This question came from a very good friend and ex-colleague. So just responding it via this post which i trust will be useful to others also.
The question
What is a "Cyclic Wakeup Timer"?
The question can be answered if we understand each of the three terms.
We start with Timer. Timer is a hardware or software that keeps track of time via counts. If we know that each count takes say 10ms then we know that 10 counts will mean 100ms. The timer is controlled by its clock which is usually derived from an external crystal or internal PLL circuits.
Next we take Cyclic. It is clear from the word that this shows a repetitive process. The timer runs continuously and maintains time. Which means i can configure a cyclic timer to create an event every 10ms. When 10ms elapses there is a event generated by the Timer (called the timer interrupt by some people). In the event handler we can choose to reinitialize the timer to count for another 10ms. Various configurations are possible, we will not discuss all of them here.
Last part is Wakeup. This is simple, we do this everyday. In this case we are talking about the microcontroller waking up.
To put it all together, a timer that wakes up the microcontroller at periodic intervals is a CWT or Cyclic wakeup timer.
The pertinent question is now, why do we need this?
I can talk only for automotive and perhaps for some other battery powered devices.
Many devices go into sleep mode when they are not doing anything useful, however the periodically wakeup to check if there is something useful to be done. I quote a few examples :
Hope this clears my buddy's query...
Please leave your comment if you have one. You can subscribe to this blog by using the links under "Subscribe" section.
The question
What is a "Cyclic Wakeup Timer"?
The question can be answered if we understand each of the three terms.
We start with Timer. Timer is a hardware or software that keeps track of time via counts. If we know that each count takes say 10ms then we know that 10 counts will mean 100ms. The timer is controlled by its clock which is usually derived from an external crystal or internal PLL circuits.
Next we take Cyclic. It is clear from the word that this shows a repetitive process. The timer runs continuously and maintains time. Which means i can configure a cyclic timer to create an event every 10ms. When 10ms elapses there is a event generated by the Timer (called the timer interrupt by some people). In the event handler we can choose to reinitialize the timer to count for another 10ms. Various configurations are possible, we will not discuss all of them here.
Last part is Wakeup. This is simple, we do this everyday. In this case we are talking about the microcontroller waking up.
To put it all together, a timer that wakes up the microcontroller at periodic intervals is a CWT or Cyclic wakeup timer.
The pertinent question is now, why do we need this?
I can talk only for automotive and perhaps for some other battery powered devices.
Many devices go into sleep mode when they are not doing anything useful, however the periodically wakeup to check if there is something useful to be done. I quote a few examples :
- A PKE ( Passive Keyless Entry) system might wakeup periodically to see if there is a key in the vicinity of the vehicle. If there is then it automatically unlocks the door. (Note: It is technically quite challenging and complicated)
- A BCM ( Body Computer Module) needs to wakeup periodically to check for monitoring certain inputs.However, this is usually because multiple external events might try to wakeup the ECU but there might not be so many interrupt pins available.
- I know of a system which used to maintain the time. The system would go to sleep and wakeup every 1 sec to update its time variables. Only when the vehicle was on the system would display the time else it would go to low power mode and wakeup only every 1 sec.
Hope this clears my buddy's query...
Please leave your comment if you have one. You can subscribe to this blog by using the links under "Subscribe" section.
Powered by ScribeFire.
Reminds me of the "ECUM" days!! Nice blog!! Enjoyed reading it..
ReplyDelete