74HC595 Shift Register Tutorial

Sr Banner
Shift register is a sequential logic circuit consisting of flip-flops. They are created mainly to store digital data in the form of bits.


The basic working principle of a shift register is the user would enter data into it sequentially and the data will move from the beginning till the end of the shift register.


Any bits that ‘flow’ out of the shift register can either be entered into another shift register or it’ll be lost forever.

It is the simplest form of data storage that paved the way to more complex and advanced storage like what we have in the 21st century.

In this tutorial, I’m using a very common shift register IC which is the 74HC595. It is an 8 bit shift register which means that it can store up to 8 bits at one time.


Here is a PCB I’ve made for the shift register IC.


Essentially, there are only 3 inputs. They are DATA, CLOCK and LATCH.

DATA is the bit that you want to enter into the shift register. Pull it HIGH to enter a ‘1’ or LOW to enter a ‘0’. Pretty simple?

CLOCK is to tell when the shift register will accept the input on the DATA line. Whenever the CLOCK is on the rising edge, the shift register will accept the input on the DATA line.

LATCH is to update the outputs to the latest input on the DATA line. The LATCH input is active-high.

There is a video tutorial down below if the explanation here is not clear enough.

Beside storing data, shift register is commonly used nowadays to save microcontroller output pins. With just 3 pins, the microcontroller can control a limitless amount of output pins with a cascading shift register configuration.

Hope this article will be of great use to those who need it.

Thanks for reading.

Print Friendly
  1. kannan r03-22-2017

    Good tutorial…..Thank you

  2. vick09-30-2013

    The left LED is output QA then QB , QC til the last at right is QH ?

    Thanks !

    • Wai Hung09-30-2013

      Yup. Correct.

Leave a Reply