Hardware counters are very useful in a Micro Controller application. They can be used for generating PWM signal on the IO port, generating interrupt regularly or when we want it (see OnlineCourse/OutputCompareRegisters). TIMER2 takes care of timing in the OnlineCourse/EventQueue application.