Fork me on GitHub

Project Notes

#852 CD4020 Counter

Introducing the CD4020 14-stage binary counter with a basic demonstration circuit.

Build

Here’s a quick demo..

clip

Notes

The CD4020 14-Stage Ripple Carry Binary Counter is most commonly used as a frequency divider. It skips stages 2 and 3 to fit the higher order divisors 4-14 on a 16 pin package.

About the CD4020

The CD4020 is a CMOS 14-stage ripple-carry binary counter that functions as both an event counter and a frequency divider. With each input clock pulse, the internal flip-flops divide the clock frequency by successive powers of two, providing multiple binary outputs ranging from divide-by-16 up to divide-by-16,384 (intermediate stages are available, though not every stage is brought out to package pins). An asynchronous master reset input clears the counter to zero, making it easy to restart timing or counting operations. As a ripple counter, its outputs change sequentially rather than simultaneously, making it best suited for counting and clock division rather than synchronous logic.

Operating from a supply voltage of 3V to 15V, the CD4020 offers the low power consumption, wide operating range, and high noise immunity typical of the CMOS 4000 series. It is widely used in long-duration timers, clock dividers, digital clocks, frequency synthesizers, and sequencing applications where large divide ratios are required without the need for additional logic. Its ability to generate many divided clock frequencies from a single input makes it a versatile and economical component in both hobbyist and professional digital circuit designs.

cd4020-ref

Circuit Design

The following circuit is a simple demonstration of the CD4024:

  • a 555 timer provides a clock pulse
  • LEDs are attached to display the state of the output pins
  • a push-button pulls the RESET pin momentarily high to reset the counter

Designed with Fritzing: see Counter.fzz.

bb

schematic

Setup on a breadboard. For demonstration purposes I have attached LEAP#791 555 Breadboard Pulse Generator to provide the clock signal.

bb_build

Measuring the Output

I’ve attached a logic analyzer to measure the output transitions:

  • D0: attached to Q1
  • D1-D7: attached to Q8-Q14 respectively
  • CH1 (Yellow): attached to Q14 to sync on the slowest changing signal

scope

Circuit with logic analyzer attached:

test1a

Credits and References

About LEAP#852
CMOS/TTL555 TimerCD4020

This page is a web-friendly rendering of my project notes shared in the LEAP GitHub repository.

Project Source on GitHub Return to the LEAP Catalog
About LEAP

LEAP is my personal collection of electronics projects - usually involving an Arduino or other microprocessor in one way or another. Some are full-blown projects, while many are trivial breadboard experiments, intended to learn and explore something interesting.

Projects are often inspired by things found wild on the net, or ideas from the many great electronics podcasts and YouTube channels. Feel free to borrow liberally, and if you spot any issues do let me know or send a pull-request.

NOTE: For a while I included various scale modelling projects here too, but I've now split them off into a new repository: check out LittleModelArt if you are looking for these projects.

Project Gallery view the projects as an image gallery Notebook reference materials and other notes Follow the Blog follow projects and notes as they are published in your favourite feed reader