Wednesday, November 15, 2017

7 segment Display on Arduino.

  • In this project we will see how to display 0-9 digits on a 7-segment display.



Code:
 // make an array to save Seven Segment pin configuration of numbers
int num_array[10][7] = {  { 1,1,1,1,1,1,0 },    // 0
                                          { 0,1,1,0,0,0,0 },    // 1
                                          { 1,1,0,1,1,0,1 },    // 2
                                          { 1,1,1,1,0,0,1 },    // 3
                                          { 0,1,1,0,0,1,1 },    // 4
                                          { 1,0,1,1,0,1,1 },    // 5
                                          { 1,0,1,1,1,1,1 },    // 6
                                          { 1,1,1,0,0,0,0 },    // 7
                                          { 1,1,1,1,1,1,1 },    // 8
                                          { 1,1,1,1,0,1,1 }};   // 9
  //function header
void Num_Write(int);
void setup()
                 {
   // set pin modes
                 pinMode(2, OUTPUT); 
                 pinMode(3, OUTPUT);
                 pinMode(4, OUTPUT);
                 pinMode(5, OUTPUT);
                 pinMode(6, OUTPUT);
                 pinMode(7, OUTPUT);
                 pinMode(8, OUTPUT);
                 }
void loop()
               {
    //counter loop
               for (int counter = 10; counter > 0; --counter)
                                              {                   // count down 9 to 0
                                               delay(1000);
                                               Num_Write(counter-1);
                                                }
  delay(3000);
                   }

                // this functions writes values to the sev seg pins
void Num_Write(int number)
{
  int pin= 2;
  for (int j=0; j < 7; j++) {
   digitalWrite(pin, num_array[number][j]);
   pin++;
  }
}

No comments:

Post a Comment