In digital logic and computing, a counter is a device which stores and/or display the number of times a particular event or process has occurred. In practice, there are two types of counters: Up counters and Down counters.
In electronics, a counter can be implemented quite easily using register-type circuits such as the flip-flop, and a wide variety of designs exist.
There are many types of electronic counters. Each is useful for different applications.
Asynchronous (ripple) counter – changing state bits are used as clocks to subsequent state flip-flops
Synchronous counter – all state bits change under control of a single clock
Decade counter – counts through ten states per stage
Up–down counter – counts both up and down, under command of a control input
Ring counter – formed by a shift register with feedback connection in a ring
Johnson counter – a twisted ring counter
Cascaded counter
A timer is a specialized type of clock used to control the sequence of an event or process. A timer may count upwards like a stopwatch or may count downwards like a hourglass. When the set period expires the timer will indicate the event by alarm sound, electrical switches, or other means. There are several different types of timers based on their operation principles: Mechanical timer, Electromechanical timer, Electronic timer, and Computer timer.