Interfacing 7-segment display using 7447 decoder

The Light Emitting Diode (LED), finds its place in many applications in this modern electronic fields. One of them is the Seven Segment Display. Seven-segment displays contains the arrangement of the LEDs in “Eight” (8) passion, and a Dot (.) with a common electrode, lead (Anode or Cathode). The purpose of arranging it in that passion is that we can make any number out of that by switching ON and OFF the particular LED’s. Here is the block diagram of the Seven Segment LED arrangement.

Pin configuration of a seven segment display:
7 segment pin configuration

LED’s are basically of two types:

  1. Common Cathode (CC)
    All the 8 anode legs uses only one cathode, which is common.
  2. Common Anode (CA)
    The common leg for all the cathode is of Anode type.

For the discussion purpose, we use CC LED, where by just reversing the logical voltages we can implement the same for CA LED also.

In a CC LED, all the 8 legs (‘a’ through ‘h’) are of anode type and the common cathode will be connected to the GND of the supply. By energizing any of the legs with +5 Volts will lead to switch the correspondent segment ON. In the microprocessor binary system, 0Volts will be considered as Binary 0, and 5Volts will be considered as Binary1. Considering these two condition, we can make an arrangement as the microcontroller gives OUT the 0s and 1s through its ports, which is connected to the 8 legs of the LED. Of course, we can control the Port Output; implicitly we can Switch-ON required legs of the display.

There 2 methods of interfacing LED with the Microcontroller Intel 8051/8951.

  1. Using lookup table. This uses 7 output pins of microcontroller
  2. Using 7447 decoder. This method uses 4 output pins of microcontroller

The difference between the two main methods is simple and clear. In both the cases, microcontroller communicates with external world through its ports. But, in the 1st case, we connect all the 8 pins of the port directly to the LED and control the voltage through the ports manually to display the desired number. But, in the second case, we send the BCD of the number that we wanted to display to a middleware IC 7447, the BCD to LED code converter, which by itself gives out the correspondent 7 segment codes to the LED.

Here we explain using lookup table. Click here for the method “using 7447 decoder”

Using 7447 decoder:

The IC7447 is a BCD to 7-segment pattern converter. This setup is the advanced form of the <previous> setup where we entered the patterns manually to display the desired character. Here in this case, the IC7447 takes the Binary Coded Decimal (BCD) as the input and outputs the relevant 7 segment code. We connect first four pins of the microcontroller Port 2  to the 7447 and the Output 8 pins of 7447 to the 8 legs of the LED as shown in the figure. Te circuit diagrams are shown below, the first figure is interfacing the CA LED where as the second is of CC LED. The number required to display is sent as the lower nibble of the Port 2 of the Microcontroller. The 7447 converts the four input bits (BCD) to their corresponding 7-segment codes. The outputs of the 7447 are connected to the 7-segment display.

Circuit diagram for interfacing Common Anode 7-Segment Display
Circuit diagram for interfacing Common Anode 7-Segment Display
Circuit diagram for Common Cathode 7-Segment Display
Circuit diagram for Common Cathode 7-Segment Display


This program displays characters 0 through 9 on seven-segment display 
using IC 7447 as the middle wear.
  again: mov a,#00h                  ; Start form zero
     up:  mov p2, a                  ; Move to Port 2
          mov r3,#255                ; Delay
     D1:  mov r1,#255
      D:  djnz r1,D
          djnz r3,D1
          inc a
          cjne a,#0ah,up
          sjmp again

Want to build your own robot? Check out these robotics products and kits that you can use to get started on building a bot, either totally from scratch or by using a kit.

54 Responses to “Interfacing 7-segment display using 7447 decoder”

  1. Please give m a circuit for football substitute board using 89c51&7447

  2. Pradeep

    How to recognise7-Segment Display is common cathode or common anode.

  3. eiram lee

    Hello there, do you have codes or program aside from the one given above?…specifically using c++

  4. Hello there, I want to make an circuit with using Opam to perform addtion of two voltage signal….which should be displayed on double seven segment display… between these..i used simply encoder and Bcd but im unable to display the result as per according to my circuit…………please help me………or send me a corect circuit for it…….
    [email protected] that’s my email id…………please send me that correct circuit…

  5. i want to make a digital clock with 3 displays of hours minutes and seconds using 8051 uc & 7 segment displays….so can u please tell me how to interface six seven segments with the microcontroller for this purpose?

  6. soldeerridder

    common cathode (second circuit) does not work.
    In the first circuit a 0 turns a segment on, where in the second circuit a 1 causes the segment to lid.

  7. Abhishek thakur

    hey i wanna make a pass key controlled interactive parking system….please help me by suggesting thge code…..

    only authorised people can park the car,means they have a password to open the gate and on the gate itself the LCD is showing the number of places epmty for parking.

  8. can i ask if how i can display 1 and 2 using push buttons,seven segment common anode,74ls47 and 74ls190.thank you.hope i can have a reply as much as possible

  9. hello…am a 2nd year student so can u answer me 1 question and my question is:-

    So plz give me answer in detail………
    my email id is :-
    [email protected]

  10. we have a project in our subject, and it was based on the elevator. when you input 1, it requires to light up the LED #1, and display 1 in 7-segment. Using this materials, 7 segment, 8 LED, 7447, and a parallel port. can anyone help me? ps. using .asm file?

  11. parth arora

    hey do u knw how to interface 7 segment common cathode to pic 18f4520 using ic 7447
    if anyone knw plss mail me that
    my id is [email protected]
    plss send that

  12. kumar deep

    i want to interface 7 segment with 89c51 using single loop and without any middle ic

  13. Amar Singh

    from where can I got the internal circuit diagram of BCD decoder? Plz help me.


Leave a Reply