Pages

Friday 31 October 2014

Arduino Program to Display 3, 6 and 9 in an SSD by 7490 and 4511 (Part 9 of 9)

<<<<  Read Previous Part (Part 8)

          Arduino program to display "3", "6" and "9" in the seven segment display is given below. Complete the circuit and upload the following program to your arduino board.

int INPUT_A = 13;
int R01_and_R02 = 12;
int LE = 10;

int i=0;

// the setup routine runs once when you press reset:
void setup() {                
  // initialize the digital pin as an output.
  pinMode(INPUT_A, OUTPUT);     
  pinMode(R01_and_R02, OUTPUT);
  pinMode(LE, OUTPUT);
}

// the loop routine runs over and over again forever:
void loop() {  
  digitalWrite(R01_and_R02, HIGH);  
  digitalWrite(LE, LOW);
  digitalWrite(R01_and_R02, LOW);
  for(i=0;i<3;i++)
  {
    digitalWrite(INPUT_A, HIGH);
    digitalWrite(INPUT_A, LOW);   
  }
  digitalWrite(LE, HIGH);  

  delay(1000);
  
  digitalWrite(R01_and_R02, HIGH);  
  digitalWrite(LE, LOW);
  digitalWrite(R01_and_R02, LOW);
  for(i=0;i<6;i++)
  {
    digitalWrite(INPUT_A, HIGH);
    digitalWrite(INPUT_A, LOW);   
  }
  digitalWrite(LE, HIGH);  
  
  delay(1000);
  
  digitalWrite(R01_and_R02, HIGH);  
  digitalWrite(LE, LOW);
  digitalWrite(R01_and_R02, LOW);
  for(i=0;i<9;i++)
  {
    digitalWrite(INPUT_A, HIGH);
    digitalWrite(INPUT_A, LOW);   
  }
  digitalWrite(LE, HIGH);  
  delay(1000);
}

Output will be 3, 6 and 9 displayed in the seven segment display.

Algorithm of program is given below.

Make LE of 4511 LOW, so that any change in input (D0 - D3) of 4511 will make changes in the output (Qa - Qg) of 4511 and hence in the seven segment display.

Send HIGH to R0(1) and R0(2) of 7490 to reset 7490. This is to display "0" in the seven segment display.

Send LOW to R0(1) and R0(2) to convert 7490 from reset mode to count mode.

Send three HIGH to LOW transitions to INPUT A of 7490 using an "i" loop. This will display "3" in the seven segment display.

Make LE of 4511 HIGH, so that further changes in input (D0 - D3) of 4511 will not change the output (Qa - Qg) of 4511. That is, number displayed will not change in further HIGH to LOW transitions of clock input (INPUT A of 7490).

Delay for 1 second.


Make LE of 4511 LOW, so that any change in input (D0 - D3) of 4511 will make changes in the output (Qa - Qg) of 4511 and hence in the seven segment display.

Send HIGH to R0(1) and R0(2) of 7490 to reset 7490. This is to display "0" in the seven segment display.

Send LOW to R0(1) and R0(2) to convert 7490 from reset mode to count mode.

Send six HIGH to LOW transitions to INPUT A of 7490 using an "i" loop. This will display "6" in the seven segment display.

Make LE of 4511 HIGH, so that further changes in input (D0 - D3) of 4511 will not change the output (Qa - Qg) of 4511. That is, number displayed will not change in further HIGH to LOW transitions of clock input (INPUT A of 7490).

Delay for 1 second.


Make LE of 4511 LOW, so that any change in input (D0 - D3) of 4511 will make changes in the output (Qa - Qg) of 4511 and hence in the seven segment display.

Send HIGH to R0(1) and R0(2) of 7490 to reset 7490. This is to display "0" in the seven segment display.

Send LOW to R0(1) and R0(2) to convert 7490 from reset mode to count mode.

Send nine HIGH to LOW transitions to INPUT A of 7490 using an "i" loop. This will display "9" in the seven segment display.

Make LE of 4511 HIGH, so that further changes in input (D0 - D3) of 4511 will not change the output (Qa - Qg) of 4511. That is, number displayed will not change in further HIGH to LOW transitions of clock input (INPUT A of 7490).

Delay for 1 second.
Next : Control 2 Seven Segment Displays using Arduino Mega, 7490 and two 4511 ICs>>>>

Program to Display 3 and 6 in a Seven Segment Display, 7490 + Arduino (Part 8 of 9)

<<<<  Read Previous Part (Part 7)

          Arduino program to display "3" and "6" in the seven segment display is given below. Complete the circuit and upload the following program to your arduino board.

int INPUT_A = 13;
int R01_and_R02 = 12;
int LE = 10;

int i=0;

// the setup routine runs once when you press reset:
void setup() {                
  // initialize the digital pin as an output.
  pinMode(INPUT_A, OUTPUT);     
  pinMode(R01_and_R02, OUTPUT);
  pinMode(LE, OUTPUT);
}

// the loop routine runs over and over again forever:
void loop() {  
  digitalWrite(R01_and_R02, HIGH);  
  digitalWrite(LE, LOW);
  digitalWrite(R01_and_R02, LOW);
  for(i=0;i<3;i++)
  {
    digitalWrite(INPUT_A, HIGH);
    digitalWrite(INPUT_A, LOW);   
  }
  digitalWrite(LE, HIGH);  

  delay(1000);
  
  digitalWrite(R01_and_R02, HIGH);  
  digitalWrite(LE, LOW);
  digitalWrite(R01_and_R02, LOW);
  for(i=0;i<6;i++)
  {
    digitalWrite(INPUT_A, HIGH);
    digitalWrite(INPUT_A, LOW);   
  }
  digitalWrite(LE, HIGH);  
  delay(1000);
}

Output will be 3 and 6 displayed in the seven segment display.

Algorithm of program is given below.

Make LE of 4511 LOW, so that any change in input (D0 - D3) of 4511 will make changes in the output (Qa - Qg) of 4511 and hence in the seven segment display.

Send HIGH to R0(1) and R0(2) of 7490 to reset 7490. This is to display "0" in the seven segment display.

Send LOW to R0(1) and R0(2) to convert 7490 from reset mode to count mode.

Send three HIGH to LOW transitions to INPUT A of 7490 using an "i" loop. This will display "3" in the seven segment display.

Make LE of 4511 HIGH, so that further changes in input (D0 - D3) of 4511 will not change the output (Qa - Qg) of 4511. That is, number displayed will not change in further HIGH to LOW transitions of clock input (INPUT A of 7490).

Delay for 1 second.

Make LE of 4511 LOW, so that any change in input (D0 - D3) of 4511 will make changes in the output (Qa - Qg) of 4511 and hence in the seven segment display.

Send HIGH to R0(1) and R0(2) of 7490 to reset 7490. This is to display "0" in the seven segment display.

Send LOW to R0(1) and R0(2) to convert 7490 from reset mode to count mode.

Send six HIGH to LOW transitions to INPUT A of 7490 using an "i" loop. This will display "6" in the seven segment display.

Make LE of 4511 HIGH, so that further changes in input (D0 - D3) of 4511 will not change the output (Qa - Qg) of 4511. That is, number displayed will not change in further HIGH to LOW transitions of clock input (INPUT A of 7490).

Delay for 1 second.

Continued in Next Part (Part 9) >>>>

Arduino Program to Display 9 in a Seven Segment Display using 7490 (Part 7 of 9)

<<<<  Read Previous Part (Part 6)

          Arduino program to display "9" in the seven segment display is given below. Complete the circuit and upload the following program to your arduino board.

int INPUT_A = 13;
int R01_and_R02 = 12;
int LE = 10;

int i=0;

// the setup routine runs once when you press reset:
void setup() {                
  // initialize the digital pin as an output.
  pinMode(INPUT_A, OUTPUT);     
  pinMode(R01_and_R02, OUTPUT);
  pinMode(LE, OUTPUT);
  
  /*When 10th digital output of arduino is LOW, 
  LE of 4511 becomes LOW. Now, the output (Qa - Qg) 
  of 4511 will change when input (D0 - D3) of 4511 changes.*/
  
  digitalWrite(LE, LOW);
}

// the loop routine runs over and over again forever:
void loop() {

  /* When 12th digital output of arduino is HIGH, R0(1) 
  and R0(2) of 7490 becomes HIGH. This will reset 7490. 
  Counting will restart from 0 */
  
  digitalWrite(R01_and_R02, HIGH);  
  
  /*When 10th and 12th digital outputs of arduino are LOW, 
  during the negative transition (HIGH to LOW transition) of  
  clock input (INPUT A of 7490 IC), 7490 counts.*/
  
  digitalWrite(R01_and_R02, LOW);
  for(i=0;i<9;i++)
  {
    digitalWrite(INPUT_A, HIGH);
    digitalWrite(INPUT_A, LOW);   
  }
  
  /*When 10th digital output of arduino is HIGH, 
  LE of 4511 becomes HIGH. This will keep the output 
  (Qa - Qg) of 4511 in previous state, even if the 
  input (D0 - D3) of 4511 changes.*/
  digitalWrite(LE, HIGH);    
}

Output will be 9.

Algorithm of program is given below.

Make LE of 4511 LOW, so that any change in input (D0 - D3) of 4511 will make changes in the output (Qa - Qg) of 4511 and hence in the seven segment display.

Send HIGH to R0(1) and R0(2) of 7490 to reset 7490. This is to display "0" in the seven segment display.

Send LOW to R0(1) and R0(2) to convert 7490 from reset mode to count mode.

Send nine HIGH to LOW transitions to INPUT A of 7490 using an "i" loop. This will display "9" in the seven segment display.

Make LE of 4511 HIGH, so that further changes in input (D0 - D3) of 4511 will not change the output (Qa - Qg) of 4511. That is, number displayed will not change in further HIGH to LOW transitions of clock input (INPUT A of 7490).

Continued in Next Part (Part 8) >>>>

Displaying 3 in a Common Cathode Seven Segment Display using 7490 (Part 6 of 9)

<<<<  Read Previous Part (Part 5)

          Arduino program to display "3" in the seven segment display is given below. Complete the circuit and upload the following program to your arduino board.

int INPUT_A = 13;
int R01_and_R02 = 12;
int LE = 10;

int i=0;

// the setup routine runs once when you press reset:
void setup() {                
  // initialize the digital pin as an output.
  pinMode(INPUT_A, OUTPUT);     
  pinMode(R01_and_R02, OUTPUT);
  pinMode(LE, OUTPUT);
  
  /*When 10th digital output of arduino is LOW, 
  LE of 4511 becomes LOW. Now, the output (Qa - Qg) 
  of 4511 will change when input (D0 - D3) of 4511 changes.*/
  
  digitalWrite(LE, LOW);
}

// the loop routine runs over and over again forever:
void loop() {

  /* When 12th digital output of arduino is HIGH, R0(1) 
  and R0(2) of 7490 becomes HIGH. This will reset 7490. 
  Counting will restart from 0 */
  
  digitalWrite(R01_and_R02, HIGH);  
  
  /*When 10th and 12th digital outputs of arduino are LOW, 
  during the negative transition (HIGH to LOW transition) of  
  clock input (INPUT A of 7490 IC), 7490 counts.*/
  
  digitalWrite(R01_and_R02, LOW);
  for(i=0;i<3;i++)
  {
    digitalWrite(INPUT_A, HIGH);
    digitalWrite(INPUT_A, LOW);   
  }
  
  /*When 10th digital output of arduino is HIGH, 
  LE of 4511 becomes HIGH. This will keep the output 
  (Qa - Qg) of 4511 in previous state, even if the 
  input (D0 - D3) of 4511 changes.*/
  digitalWrite(LE, HIGH);    
}

Output will be 3.
Algorithm of program is given below.

Make LE of 4511 LOW, so that any change in input (D0 - D3) of 4511 will make changes in the output (Qa - Qg) of 4511 and hence in the seven segment display.

Send HIGH to R0(1) and R0(2) of 7490 to reset 7490. This is to display "0" in the seven segment display.

Send LOW to R0(1) and R0(2) to convert 7490 from reset mode to count mode.

Send three HIGH to LOW transitions to INPUT A of 7490 using an "i" loop. This will display "3" in the seven segment display.

Make LE of 4511 HIGH, so that further changes in input (D0 - D3) of 4511 will not change the output (Qa - Qg) of 4511. That is, number displayed will not change in further HIGH to LOW transitions of clock input (INPUT A of 7490).

Continued in Next Part (Part 7) >>>>

Arduino Program to Display 1 in a Common Cathode SSD by 7490 and 4511 (Part 5 of 9)

<<<<  Read Previous Part (Part 4)

          Arduino program to display "1" in the seven segment display is given below. Complete the circuit and upload the following program to your arduino board.

int INPUT_A = 13;
int R01_and_R02 = 12;
int LE = 10;

int i=0;

// the setup routine runs once when you press reset:
void setup() {                
  // initialize the digital pin as an output.
  pinMode(INPUT_A, OUTPUT);     
  pinMode(R01_and_R02, OUTPUT);
  pinMode(LE, OUTPUT);
  
  /*When 10th digital output of arduino is LOW, 
  LE of 4511 becomes LOW. Now, the output (Qa - Qg) 
  of 4511 will change when input (D0 - D3) of 4511 changes.*/
  
  digitalWrite(LE, LOW);
}

// the loop routine runs over and over again forever:
void loop() {

  /* When 12th digital output of arduino is HIGH, R0(1) 
  and R0(2) of 7490 becomes HIGH. This will reset 7490. 
  Counting will restart from 0 */
  
  digitalWrite(R01_and_R02, HIGH);  
  
  /*When 10th and 12th digital outputs of arduino are LOW, 
  during the negative transition (HIGH to LOW transition) of  
  clock input (INPUT A of 7490 IC), 7490 counts.*/
  
  digitalWrite(R01_and_R02, LOW);
  for(i=0;i<1;i++)
  {
    digitalWrite(INPUT_A, HIGH);
    digitalWrite(INPUT_A, LOW);   
  }
  
  /*When 10th digital output of arduino is HIGH, 
  LE of 4511 becomes HIGH. This will keep the output 
  (Qa - Qg) of 4511 in previous state, even if the 
  input (D0 - D3) of 4511 changes.*/
  digitalWrite(LE, HIGH);    
}

Output will be 1.
Algorithm of program is given below.

Make LE of 4511 LOW, so that any change in input (D0 - D3) of 4511 will make changes in the output (Qa - Qg) of 4511 and hence in the seven segment display.

Send HIGH to R0(1) and R0(2) of 7490 to reset 7490. This is to display "0" in the seven segment display.

Send LOW to R0(1) and R0(2) to convert 7490 from reset mode to count mode.

Send a HIGH to LOW transition to INPUT A of 7490. This will display "1" in the seven segment display.

Make LE of 4511 HIGH, so that further changes in input (D0 - D3) of 4511 will not change the output (Qa - Qg) of 4511. That is, number displayed will not change in further HIGH to LOW transitions of clock input (INPUT A of 7490).


Continued in Next Part (Part 6) >>>>

Arduino Program to Control a Common Cathode SSD by 7490 and 4511 (Part 3 of 9)

<<<<  Read Previous Part (Part 2)

         After completing the circuit, upload the following program to your arduino board. If uploading is successful, numbers will start displaying in the seven segment display. Program is written as three parts.

          In the first part, 10th and 12th digital outputs of arduino are LOW. During the negative transition (HIGH to LOW transition) of  clock input (INPUT A of 7490 IC), 7490 counts. Count will be converted to BCD and is given as input to 4511. 4511 will convert BCD for seven segment display and corresponding number will be displayed in the seven segment display.

          In the second part, 10th digital output of arduino is HIGH. LE of 4511 becomes HIGH. This will keep the output (Qa - Qg) of 4511 in previous state, even if the input (D0 - D3) of 4511 changes. When 10th digital output of arduino is LOW, LE of 4511 becomes LOW. Now, the output (Qa - Qg) of 4511 will change when input (D0 - D3) of 4511 changes.

          In the third part, 10th and 12th digital outputs of arduino are LOW. During the negative transition (HIGH to LOW transition) of  clock input (INPUT A of 7490 IC), 7490 counts. Count will be converted to BCD and is given as input to 4511. 4511 will convert BCD for seven segment display and corresponding number will be displayed in the seven segment display.

          In the fourth part, 12th digital output of arduino is HIGH. R0(1) and R0(2) of 7490 becomes HIGH. This will reset 7490. When 12th digital output of arduino is LOW, R0(1) and R0(2) of 7490 becomes LOW. Now, 7490 will count in all negative transition of clock input (INPUT A of 7490).

int INPUT_A = 13;
int R01_and_R02 = 12;
int LE = 10;

int i=0;

// the setup routine runs once when you press reset:
void setup() {                
  // initialize the digital pin as an output.
  pinMode(INPUT_A, OUTPUT);     
  pinMode(R01_and_R02, OUTPUT);
  pinMode(LE, OUTPUT);
}

// the loop routine runs over and over again forever:
void loop() {

  /********** PART 1 ***********/
  
  /*When 10th and 12th digital outputs of arduino are LOW, 
  during the negative transition (HIGH to LOW transition) of  
  clock input (INPUT A of 7490 IC), 7490 counts.

  This part of program displays 0, 1 and 2*/
  
  for(i=0;i<2;i++)
  {
    digitalWrite(LE, LOW);
    digitalWrite(R01_and_R02, LOW);
    digitalWrite(INPUT_A, HIGH);
    delay(500);
    digitalWrite(INPUT_A, LOW);
    delay(500);
  }

  /********* PART 2 ***********/

  /*When 10th digital output of arduino is HIGH, 
  LE of 4511 becomes HIGH. This will keep the output (Qa - Qg) 
  of 4511 in previous state, even if the 
  input (D0 - D3) of 4511 changes. 

  This part of program will keep the seven segment 
  display in "2" for two seconds*/
    
  for(i=0;i<3;i++)
  {
    digitalWrite(LE, HIGH);
    digitalWrite(R01_and_R02, LOW);
    digitalWrite(INPUT_A, HIGH);
    delay(500);
    digitalWrite(INPUT_A, LOW);
    delay(500);
  } 

  /*********** PART 3 ***********/

  /*When 10th and 12th digital outputs of arduino are LOW, 
  during the negative transition (HIGH to LOW transition) of  
  clock input (INPUT A of 7490 IC), 7490 counts.

  This part of program displays 5, 6 and 7*/

  for(i=0;i<2;i++)
  {
    digitalWrite(LE, LOW);
    digitalWrite(R01_and_R02, LOW);
    digitalWrite(INPUT_A, HIGH);
    delay(500);
    digitalWrite(INPUT_A, LOW);
    delay(500);
  } 

  /*********** PART 4 ************/
  
  /* When 12th digital output of arduino is HIGH, R0(1) 
  and R0(2) of 7490 becomes HIGH. This will reset 7490. 
  Counting will restart from 0 */
  
  digitalWrite(R01_and_R02, HIGH);
}


Next : Continued in Next Part (Part 4) >>>>

Working of the Circuit to Control a Seven Segment Display, 7490 + 4511 (Part 2 of 9)

<<<<  Read Previous Part (Part 1)

Pin out diagram of 4511

          Datasheet of 4511 is given hereDatasheet must be read before using 4511. 4511 is a BCD to 7-segment latch / decoder / driver with four address inputs (D0-D3), an active low blanking input (BL), a lamp test (LT) and a latch enable (LE).

          From the function table of 4511 given in page 2 of datasheet, it is clear that, when a BCD input is given to 4511 through D0, D1, D2 and D3, we will get a corresponding number displayed in seven segment display. BCD input for 4511 is given from the output pins of 7490 (Qa, Qb, Qc and Qd). LT and BL pins of 4511 should be at HIGH voltage. Similarly LE pin should be at LOW voltage.

Pin out diagram of Common Cathode Seven Segment Display

          Pin out diagram of common cathode seven segment display is given below. There will be only one cathode pin for all the eight anode pins. Segments of the seven segment display is connected to the output pins (Qa - Qg) of 4511. A resistor of 1 K should be connected to the anode pins to protect the segments from high currents.
          Vcc is given from a regulated 5V source. Vcc is given to 7490 as well as 4511. Gnd pin of 7490, 4511 and Common cathode seven segment display is connected to the Gnd pin of voltage source.

Connections of 4511 and 7490 to arduino mega can be summarized as:

* Connect INPUT A (leg 14) of 7490 to 13th digital output of arduino mega.
* Connect R0(1) (leg 2) and R0(2) (leg 3) of 7490 to 12th digital output of arduino mega.
* Connect LE (leg 5) of 4511 to 10th digital output of arduino mega.

* Gnd of arduino mega should be connected to the gnd terminal of voltage source.

Working of Circuit

          We had already seen the circuit for controlling a common cathode seven segment display using 4511 driver in previous blogs. In this circuit, when 10th digital output of arduino is HIGH, LE of 4511 becomes HIGH. This will keep the output (Qa - Qg) of 4511 in previous state, even if the input (D0 - D3) changes. When 10th digital output of arduino is LOW, LE of 4511 becomes LOW. Now, the output (Qa - Qg) of 4511 will change when input (D0 - D3) changes.

         When 12th digital output of arduino is HIGH, R0(1) and R0(2) of 7490 becomes HIGH. This will reset 7490. When 12th digital output of arduino is LOW, R0(1) and R0(2) of 7490 becomes LOW. Now, 7490 will count in all negative transitions of clock_input (INPUT A of 7490).

          When 10th and 12th digital outputs of arduino are LOW, during the negative transitions (HIGH to LOW transition) of  clock input (INPUT A of 7490 IC), 7490 counts. Count will be converted to BCD and is given as input to 4511. 4511 will convert BCD for seven segment display and corresponding number will be displayed in the seven segment display.

Continued in Next Part (Part 3) >>>>

Circuit to Control a Common Cathode Seven Segment Display using 7490 (Part 1 of 9)

<<<<  Previous : Seven Segment Display + 7490 + 4511 + Press Button Switch

          We had already seen the circuit to control a common cathode seven segment display using 7490 and 4511 through a press button switch in previous blog. Here, we will see the circuit to control a common cathode seven segment display using 4511 and 7490 through an arduino mega. Circuit is done as shown in the following diagram. It is better to read my previous blog which will give you an idea about the working of 7490 and 4511.



Pin out diagram of 7490

          7490 is clearly explained in it's datasheet. It is better to learn the datasheet before using 7490. It is a monolithic counter and contains four master-slave flip-flops and additional gating to provide a divide-by-two counter for which the count cycle length is divide-by-five. Pin out diagram of 7490 is given below.
          From the datasheet, it is clear that, counting will take place, if any of the following conditions is satisfied (Refer Reset / Count Function table in Page 3 of datasheet).

R0(2) and R9(2) are LOW.
R0(1) and R9(1) are LOW.
R0(1) and R9(2) are LOW.
R0(2) and R9(1) are LOW.

          In our circuit, we are grounding R0(2) (pin 3) and R9(1) (pin 6) of 7490 (condition 4). We can design two types of counters using 7490. They are BCD counter and Bi-quinary counter (Refer Function Tables of 7490 given in page 3 of datasheet). Here, we are designing the circuit for BCD counter. 7490 will work in BCD Count mode if, output Qa (Pin 12) of 7490 is connected to the input B (pin 1) of 7490. Clock input is given to the input A (pin 14) of 7490. In our circuit, clock input is given using a press button switch. If all these conditions are met, we will get a BCD counter at the output pins (Qa, Qb, Qc and Qd). Counter will count from 0-9 in each negative transition of clock input.

          7490 provides some options for resetting the IC (Refer Reset / Count Function table in Page 3 of datasheet). Two types of resetting are there. In the first type Qa, Qb, Qc and Qd becomes 0, 0, 0 and 0. In the second type, Qa, Qb, Qc and Qd becomes 1, 0, 0, and 1. Resetting can be done by three methods.

Method 1 : R0(1) - HIGH, R0(2) - HIGH, R9(1) - LOW.
Method 2 : R0(1) - HIGH, R0(2) - HIGH, R9(2) - LOW.
Method 3 : R9(1) - HIGH, R9(2) - HIGH.

Method 1 results in first type of resetting.
Method 2 results in first type of resetting.
Method 3 results in second type of resetting.

After resetting, counting will restart from 0.

Continued in Next Part (Part 2) >>>>

Working of Circuit - Seven Segment Display + 7490 + 4511 + Press Button Switch (Part 2)

<<<<  Read Previous Part (Part 1)

Pin out diagram of 4511

          Datasheet of 4511 is given here. Datasheet must be read before using 4511. 4511 is a BCD to 7-segment latch / decoder / driver with four address inputs (D0-D3), an active low blanking input (BL), a lamp test (LT) and a latch enable (LE).

          From the function table of 4511 given in page 2 of datasheet, it is clear that, when a BCD input is given to 4511 through D0, D1, D2 and D3, we will get a corresponding number displayed in seven segment display. BCD input for 4511 is given from the output pins of 7490 (Qa, Qb, Qc and Qd). LT and BL pins of 4511 should be at HIGH voltage. Similarly LE pin should be at LOW voltage.

Pin out diagram of Common Cathode Seven Segment Display

          Pin out diagram of common cathode seven segment display is given below. There will be only one cathode pin for all the eight anode pins. Segments of the seven segment display is connected to the output pins (Qa - Qg) of 4511. A resistor of 1 K should be connected to the anode pins to protect the segments from high currents.
          Vcc is given from a regulated 5V source. Vcc is given to 7490 as well as 4511. Gnd pin of 7490, 4511 and Common cathode seven segment display is connected to the Gnd pin of voltage source.

Working of Circuit

          When the press button switch is pressed, 7490 will increment the counter and BCD corresponding to the present count will be there at the output pins (Qa, Qb, Qc and Qd) of 7490. This BCD output is given as input to the 4511 IC. Number corresponding to the BCD given as input to the 4511 will be displayed at the seven segment display. In the next press of press button switch, count will increment again and the number displayed at the seven segment display get incremented. After 9, count will restart from 0 again.

Next : Watch the Video Demonstration >>>>

Circuit to Control a Seven Segment Display, 7490 + 4511 + Press Button Switch (Part 1)

<<<<  Previous : Climbing Pattern in a 3*3*3 LED Cube using 555

          So far we have seen a lot of circuits to control seven segment displays. We have also designed a circuit to control a common cathode seven segment display using 4511 driver IC. There, we need four press button switches to control four inputs (D0, D1, D2, D3) of 4511. Here, we are introducing a new technique to reduce the number of press button switches. By putting an IC named 7490 in front of 4511, we can reduce the number of press button switches from 4 to 1. Circuit is done as shown in the following diagram. A common cathode seven segment display is using for our purpose.

Pin out diagram of 7490

          7490 is clearly explained in it's datasheet. It is better to learn the datasheet before using 7490. It is a monolithic counter and contains four master-slave flip-flops and additional gating to provide a divide-by-two counter for which the count cycle length is divide-by-five. Pin out diagram of 7490 is given below.
          From the datasheet, it is clear that, counting will take place, if any of the following conditions is satisfied (Refer Reset / Count Function table in Page 3 of datasheet).

R0(2) and R9(2) are LOW.
R0(1) and R9(1) are LOW.
R0(1) and R9(2) are LOW.
R0(2) and R9(1) are LOW.

          In our circuit, we are grounding R0(2) (pin 3) and R9(1) (pin 6) of 7490 (condition 4). We can design two types of counters using 7490. They are BCD counter and Bi-quinary counter (Refer Function Tables of 7490 given in page 3 of datasheet). Here, we are designing the circuit for BCD counter. 7490 will work in BCD Count mode if, output Qa (Pin 12) of 7490 is connected to the input B (pin 1) of 7490. Clock input is given to the input A (pin 14) of 7490. In our circuit, clock input is given using a press button switch. If all these conditions are met, we will get a BCD counter at the output pins (Qa, Qb, Qc and Qd). Counter will count from 0-9 in each negative transition of clock input.

Circuit to Control a Seven Segment Display by 7490, 4511 and a Press Button Switch

<<<<  Previous : Climbing Pattern in a 3*3*3 LED Cube using 555

          So far we have seen a lot of circuits to control seven segment displays. We have also designed a circuit to control a common cathode seven segment display using 4511 driver IC. There, we need four press button switches to control four inputs (D0, D1, D2, D3) of 4511. Here, we are introducing a new technique to reduce the number of press button switches. By putting an IC named 7490 in front of 4511, we can reduce the number of press button switches from 4 to 1. Circuit is done as shown in the following diagram. A common cathode seven segment display is using for our purpose.
Pin out diagram of 7490

          7490 is clearly explained in it's datasheet. It is better to learn the datasheet before using 7490. It is a monolithic counter and contains four master-slave flip-flops and additional gating to provide a divide-by-two counter for which the count cycle length is divide-by-five. Pin out diagram of 7490 is given below.
          From the datasheet, it is clear that, counting will take place, if any of the following conditions is satisfied (Refer Reset / Count Function table in Page 3 of datasheet).

R0(2) and R9(2) are LOW.
R0(1) and R9(1) are LOW.
R0(1) and R9(2) are LOW.
R0(2) and R9(1) are LOW.

          In our circuit, we are grounding R0(2) (pin 3) and R9(1) (pin 6) of 7490 (condition 4). We can design two types of counters using 7490. They are BCD counter and Bi-quinary counter (Refer Function Tables of 7490 given in page 3 of datasheet). Here, we are designing the circuit for BCD counter. 7490 will work in BCD Count mode if, output Qa (Pin 12) of 7490 is connected to the input B (pin 1) of 7490. Clock input is given to the input A (pin 14) of 7490. In our circuit, clock input is given using a press button switch. If all these conditions are met, we will get a BCD counter at the output pins (Qa, Qb, Qc and Qd). Counter will count from 0-9 in each negative transition of clock input.

Pin out diagram of 4511

          Datasheet of 4511 is given here. Datasheet must be read before using 4511. 4511 is a BCD to 7-segment latch / decoder / driver with four address inputs (D0-D3), an active low blanking input (BL), a lamp test (LT) and a latch enable (LE).

          From the function table of 4511 given in page 2 of datasheet, it is clear that, when a BCD input is given to 4511 through D0, D1, D2 and D3, we will get a corresponding number displayed in seven segment display. BCD input for 4511 is given from the output pins of 7490 (Qa, Qb, Qc and Qd). LT and BL pins of 4511 should be at HIGH voltage. Similarly LE pin should be at LOW voltage.

Pin out diagram of Common Cathode Seven Segment Display

          Pin out diagram of common cathode seven segment display is given below. There will be only one cathode pin for all the eight anode pins. Segments of the seven segment display is connected to the output pins (Qa - Qg) of 4511. A resistor of 1 K should be connected to the anode pins to protect the segments from high currents.

          Vcc is given from a regulated 5V source. Vcc is given to 7490 as well as 4511. Gnd pin of 7490, 4511 and Common cathode seven segment display is connected to the Gnd pin of voltage source.

Working of Circuit

          When the press button switch is pressed, 7490 will increment the counter and BCD corresponding to the present count will be there at the output pins (Qa, Qb, Qc and Qd) of 7490. This BCD output is given as input to the 4511 IC. Number corresponding to the BCD given as input to the 4511 will be displayed at the seven segment display. In the next press of press button switch, count will increment again and the number displayed at the seven segment display get incremented. After 9, count will restart from 0 again.

Next : Watch the Video Demonstration >>>>

Saturday 25 October 2014

Climbing Pattern in a 3*3*3 LED Cube using 555 Timer and 74HC4017 / 74HCT4017

<<<<  Previous : Easy Demo of Controlling RGB LED Using Arduino Mega

          So far, we have seen a lot of methods to control 3*3*3 LED Cube without using micro controllers. Here, we will design a simple circuit to create a climbing pattern in a 3*3*3 LED cube using a 555 timer and 74HC4017 / 74HCT4017, johnson counter chip. We had already seen the circuit to control 74HC4017 / 74HCT4017 using 555 timer and the circuit to reduce the number of decoded outputs of 74HC4017 / 74HCT4017. Circuit is completed as shown below.


Pin out diagram of 555 timer.

Pin out diagram of 74HC4017 / 74HCT4017.

         Square wave (clock pulse) generated in the 555 timer is given to the CP0 input of 74HC4017 / 74HCT4017. Timing diagram of 74HC4017 / 74HCT4017 is given in this datasheet. From the timing diagram, it is clear that, during the positive transition of clock pulse, HIGH voltage will be shifted in the consecutive output pins (Q0-Q9) of 74HC4017 / 74HCT4017. After Q9, HIGH voltage will again start from Q0.

          In our circuit, we don't want all the ten decoded outputs (Q0-Q9). We need only three decoded outputs (Q0, Q1, and Q2). If we need only Q0, Q1 and Q2, after Q2, counting should restart from Q0. That is, we have to eliminate Q3-Q9. A simple trick have to be used to eliminate Q3-Q9. Connect the Q4 output of 74HC4017 / 74HCT4017 to the MR pin of 74HC4017 /74HCT4017. This will reset 74HC4017 / 74HCT4017 when Q3 becomes HIGH. That is, after Q2, counting will restart from Q0. Q0, Q1 and Q2 of 74HC4017 / 74HCT4017 is connected to the anode terminals of 3*3*3 LED cube. Similarly, all the cathode terminals of LED cube are connected to ground.

Next : Seven Segment Display Control using 7490, 4511 and Press Button Switch  >>>>

Thursday 23 October 2014

Video Demo of Reducing the Number of Decoded Outputs of 74HC4017 / 74HCT4017

          We had already seen the circuit for controlling 74HC4017 / 74HCT4017 using 555 timer. Here, we will see the video demonstration of reducing the decoded outputs of 74HC4017 / 74HCT4017 using 555 timer.

For more similar videos, subscribe us on YouTube.



Monday 20 October 2014

Easy Method to Reduce the Number of Decoded Outputs of 74HC4017 / 74HCT4017

<<<< Previous : Simple Animation in 3*3*3 LED Cube using 555

          We have already seen the animated presentation of working of 74HC4017 / 74HCT4017 in previous blogs. As we know, 4017 is a 5 stage johnson counter with 10 decoded outputs as shown in the following circuit.


          In certain situations, we may not need all the 10 decoded outputs. For example, if we need only 7 decoded outputs, we have to eliminate 8th (Q7), 9th (Q8) and 10th (Q9) decoded outputs. One method is, simply disconnect the LEDs connected to these decoded outputs. This will not give the expected output because, the time delay between the blinking of 7th (Q6) LED and 1st (Q0) LED will become more. To avoid this problem, make some modifications in the circuit as shown below. Connect the decoded output, after the last LED to be blink, to the MR pin 4017. This will reset 4017 IC, when that decoded output  becomes HIGH. In this case Q7 pin of 4017 is connected to the MR pin of 4017.


          Similarly, if you want only 5 decoded outputs, make some simple modifications as shown in the following circuit.


Next : Video Demonstration of Working of 74HC4017 / 74HCT4017 >>>>