Advertisement
prasanth_ntu

2b 7 seg LED counter using Push Button

Mar 31st, 2015
266
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.08 KB | None | 0 0
  1. /*2b  7 seg LED counter using Push Button
  2.   The  seven segment LED will count from 0 to 9 in a infinite loop
  3.   Components Required
  4.    1 Arduino Board
  5.    1 seven segment LED + 2 Resistors (220 ohm)
  6.    1 Push Button + 1 Resistor (10K ohm)
  7. */
  8.  
  9. int a = 2;  //For displaying segment "a"
  10. int b = 3;  //For displaying segment "b"
  11. int c = 4;  //For displaying segment "c"
  12. int d = 5;  //For displaying segment "d"
  13. int e = 6;  //For displaying segment "e"
  14. int f = 7;  //For displaying segment "f"
  15. int g = 8;  //For displaying segment "g"
  16. int dp = 9;
  17.  
  18. char inputButtonState;
  19. int i = 0;
  20.  
  21. void setup() {            
  22.   pinMode(a, OUTPUT);  //A
  23.   pinMode(b, OUTPUT);  //B
  24.   pinMode(c, OUTPUT);  //C
  25.   pinMode(d, OUTPUT);  //D
  26.   pinMode(e, OUTPUT);  //E
  27.   pinMode(f, OUTPUT);  //F
  28.   pinMode(g, OUTPUT);  //G
  29.   pinMode(dp, OUTPUT);  //G
  30.   pinMode(10, INPUT);
  31.   pinMode(13, HIGH);
  32. }
  33.  
  34. void displayDigit(int digit)
  35. {
  36.  //Conditions for displaying segment a
  37.  if(digit!=1 && digit != 4)
  38.  digitalWrite(a,LOW);
  39.  
  40.  //Conditions for displaying segment b
  41.  if(digit != 5 && digit != 6)
  42.  digitalWrite(b,LOW);
  43.  
  44.  //Conditions for displaying segment c
  45.  if(digit !=2)
  46.  digitalWrite(c,LOW);
  47.  
  48.  //Conditions for displaying segment d
  49.  if(digit != 1 && digit !=4 && digit !=7)
  50.  digitalWrite(d,LOW);
  51.  
  52.  //Conditions for displaying segment e
  53.  if(digit == 2 || digit ==6 || digit == 8 || digit==0)
  54.  digitalWrite(e,LOW);
  55.  
  56.  //Conditions for displaying segment f
  57.  if(digit != 1 && digit !=2 && digit!=3 && digit !=7)
  58.  digitalWrite(f,LOW);
  59.  if (digit!=0 && digit!=1 && digit !=7)
  60.  digitalWrite(g,LOW);
  61. }
  62.  
  63. void turnOff()
  64. {
  65.   digitalWrite(a,HIGH);
  66.   digitalWrite(b,HIGH);
  67.   digitalWrite(c,HIGH);
  68.   digitalWrite(d,HIGH);
  69.   digitalWrite(e,HIGH);
  70.   digitalWrite(f,HIGH);
  71.   digitalWrite(g,HIGH);
  72. }
  73.  
  74.  
  75. void loop() {
  76.   inputButtonState = digitalRead(10);
  77.  
  78.   if(i>=10)
  79.   i=0;
  80.  
  81.   if(inputButtonState == HIGH)
  82.   {
  83.    digitalWrite(13, HIGH);
  84.     displayDigit(i);
  85.     i++;
  86.     while(inputButtonState == HIGH)
  87.   {
  88.     inputButtonState = digitalRead(10);
  89.   }
  90.   }
  91.   else
  92.   {
  93.     turnOff();
  94.   }
  95. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement