This is the second entry in a series on Dynamic Tick Mode for µC/OS-III V3.07 and above. If you have not done so, please read the first part “How to Write a Basic Dynamic Tick BSP for µC/OS-III V3.07.00”. This document assumes that the reader is familiar with the concepts described in Part 1.
Part 1 of this series demonstrated a fully functional Dynamic Tick BSP running on a Silabs EFM32GG11.
You may recall that the BSP made use of a 32-bit timer, which is recommended for most applications. However, µC/OS-III makes no assumptions regarding the size of the hardware timer. For those cases where a spare 32-bit timer is not available, a smaller timer can be used.
Regardless of the timer size, a sub-optimal configuration of the timer will reduce the number of ticks that it can count before overflowing. The resulting interrupt may bring our system out of low-power mode prematurely with nothing to run. Optimizing your configuration increases the length of time that the system can remain idle. This is especially important when using smaller timers.