Introduction to 74HC595

Hello everyone! I hope you will be absolutely fine and having fun. Today, I am going to explain all of you about Introduction to 74HC595. It is basically a shift register. It has an ability to store and to shift the data of 8 bits. First of all the data is written on the register serially and then it goes to the storage register. All of the output lines are controlled by this register. 74HC595 register is a very high speed device based on Complementary Metal Oxide Semiconductor (CMOS). 8 bit data register receives the data from the input DS. This data is then transferred from the input shift register to the output shift register. 74HC595 has a vey wide range of applications in daily life. It can be used as serial to parallel data converter, can receive and keeps the data for a long time etc. Moreover, It can be used in home appliances, for the industrial management, as computer peripheral. We will discuss further about this register later in this tutorial.

Introduction to 74HC595

74HC595 is a shift register having and eight bit storage register and an eight bit shift register. The data is written first and then stored into the device. It is high speed CMOS device. The data is usually entered in a serial format. Storage register is used to control the output lines of 74HC595. It has different real life applications e.g. in home appliances, computer peripherals, serial to parallel converter etc.
1. 74HC595 Pinout
  • It has 16 pins in total out which eight are on left side and the remaining on the right side of the structure.
  • The different function is associated with each of the pin.
  • Some of the pins acts as an input to this device and receives data serially and transfer to the output pins to observe the received data.
  • The pin diagram for 74HC595 is shown in the figure below:
  • DS pin acts and receives the serial data.
  • All of the lines with prefix acts as the output lines.
2. 74HC595 Pin Configuration
  • In this section if the tutorial Introduction to 74HC595, I will tell you about the functions associated with each of the individual pin of 74HC595.
  • All of the associated functions are describes in the table given below.
3. Functioning Diagarm
  • The proper functional diagram of the shift register 74HC595 is shown in the figure below.
  • From the above figure you can see that SHCP, master reset (MR) and the input DS are connected to 8 stage shift register.
  • Pin number 12 i.e. STCP is connected to 8 bit storage register.
  • The output enable (OE) is connected to 3 state outputs.
4. 74HC595 Functional Description
  •  In this section of the tutorial Introduction to 74HC595, I will tell you about the functions of each line of the 8 bit shift register 74HC595.
  • Complete description of the functions of 74HC595 is given in the table shown below.
5. 74HC595 Timing Diagram
  • The arrow in the upward direction shows the rising edge of the each wave either received or applied.
  • The shape of the signals applied and received and their relation with each other is shown in the figure below.
5. 74HC595 Logic Diagram
  • The logic diagram for 74HC595 8 bit shift register is shown in the figure below.
  • You can see that there are 8 different stages from 0 to 7 and latches are there in the logic diagram of 74HC595.
  • Output enable (OE) and master reset (MR) are connected to latches with an inverted sign usually known as bubble.
6. 74HC595 Current/Voltage Rating
  • The current, power and voltage rating along with their values and system international units are shown in the table given below.
  • The values of operating temperature and storage temperature are also shown in the figure below.
7. 74HC595 Proteus Simulation
  • I have a Proteus simulation for continuous control of the different LED's using 74HC595.
  • The screenshot of the simulation is shown in the figure below.
  • The complete Arduino source code is shown below.
  • You need to just upload .hex file of this code into the Arduino of Proteus and run the simulation.
int RCLK = 5;
int SER = 6;
int SRCLK = 7;

#define TotalIC 1
#define TotalICPins TotalIC * 8

boolean Data[TotalICPins];

void setup()
{
  pinMode(SER, OUTPUT);
  pinMode(RCLK, OUTPUT);
  pinMode(SRCLK, OUTPUT);

  ClearBuffer();
}              


void loop()
{
   for(int i = TotalICPins - 1; i >=  0; i--)
   {
      Data[i] = HIGH;
      UpdateData();
      delay(300);
      ClearBuffer();
   }

   for(int i = 1;i < TotalICPins - 1;  i++)
   {
      Data[i] = HIGH;
      UpdateData();
      delay(300);
      ClearBuffer();
   }
   
}
  • The running form of the above simulation is shown in the GIF below.
  • You can download the complete simulation as well as the complete Arduino source code, here by clicking on the button below.

Proteus Simulation & Arduino Code

  • Just download .rar file, extract it and enjoy the complete package having both Arduino source code as well as Proteus simulation.
So that is all from the tutorial Introduction to 74HC595. I hope you really enjoyed this tutorial. If you face any sort of problem regarding any thing, you can ask me anytime in comments without even feeling any kind of hesitation. I will try my level to entertain you and to solve your issues in a better way, if possible. Our entire team is 24/7 here to entertain you and to solve your issues in a way or the other. I will explore different IC's in my later tutorials and will surely share all them with all of as you as well. So, till then, Take Care :)
Syed Zain Nasir

I am Syed Zain Nasir, the founder of <a href=https://www.TheEngineeringProjects.com/>The Engineering Projects</a> (TEP). I am a programmer since 2009 before that I just search things, make small projects and now I am sharing my knowledge through this platform.I also work as a freelancer and did many projects related to programming and electrical circuitry. <a href=https://plus.google.com/+SyedZainNasir/>My Google Profile+</a>

Share
Published by
Syed Zain Nasir