YohanesWahyu

Counter UP down

Feb 8th, 2017
493
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.79 KB | None | 0 0
  1.  
  2. int a=2;
  3.  
  4. int b=3;
  5. int c=4;
  6. int d=6;
  7. int dp=5;
  8. int e=7;
  9. int f=8;
  10. int g=9;
  11. int btn1=13;
  12. int btn2=12;
  13. int counter=0;
  14. int buttonUpState=0;
  15. int lastButtonUpState=0;
  16. int buttonDownState=0;
  17. int lastButtonDownState=0;
  18.  
  19. void setup()
  20. {
  21.   Serial.begin(9600);
  22.  
  23.   pinMode(a,OUTPUT);
  24.   pinMode(b,OUTPUT);
  25.   pinMode(c,OUTPUT);
  26.   pinMode(d,OUTPUT);
  27.   pinMode(e,OUTPUT);
  28.   pinMode(f,OUTPUT);
  29.   pinMode(g,OUTPUT);
  30.   pinMode(dp,OUTPUT);
  31.  
  32.   digitalWrite(dp,HIGH);
  33. }
  34.  
  35. void loop()
  36. {
  37.   buttonUpState=digitalRead(btn1);
  38.   buttonDownState=digitalRead(btn2);
  39.  
  40.   if(buttonUpState!=lastButtonUpState)
  41.   {
  42.     if(buttonUpState==HIGH)
  43.     {
  44.       if(counter==9)
  45.       {
  46.         counter=-1;
  47.       }
  48.       counter++;
  49.       Serial.println(counter);
  50.       changeNumber(counter);
  51.       delay(300);
  52.     }
  53.     else
  54.     {
  55.         Serial.println("OFF");
  56.     }
  57.    delay(50);
  58.   }
  59.  
  60.  
  61.   if(buttonDownState!=lastButtonDownState)
  62.   {
  63.     if(buttonDownState==HIGH)
  64.     {
  65.       if(counter == 0)
  66.       {
  67.         counter = 10;
  68.       }
  69.       counter--;
  70.       Serial.println(counter);
  71.       changeNumber(counter);
  72.       delay(300);
  73.     }
  74.     else
  75.     {
  76.         Serial.println("OFF");
  77.     }
  78.    delay(50);
  79.   }
  80.   changeNumber(counter);
  81. }
  82.  
  83.  
  84.  
  85.  
  86.  
  87. void changeNumber(int buttonPress)
  88. {
  89.   switch (buttonPress)
  90.   {
  91.     //number 0
  92.     case 0:
  93.       digitalWrite(a,LOW);
  94.       digitalWrite(b,LOW);
  95.       digitalWrite(c,LOW);
  96.       digitalWrite(d,LOW);
  97.       digitalWrite(e,LOW);
  98.       digitalWrite(f,LOW);
  99.       digitalWrite(g,HIGH);
  100.       break;
  101.     //number 1
  102.     case 1:
  103.       digitalWrite(a,HIGH);
  104.       digitalWrite(b,LOW);
  105.       digitalWrite(c,LOW);
  106.       digitalWrite(d,HIGH);
  107.       digitalWrite(e,HIGH);
  108.       digitalWrite(f,HIGH);
  109.       digitalWrite(g,HIGH);
  110.       break;
  111.     //number 2
  112.     case 2:
  113.       digitalWrite(a,LOW);
  114.       digitalWrite(b,LOW);
  115.       digitalWrite(c,HIGH);
  116.       digitalWrite(d,LOW);
  117.       digitalWrite(e,LOW);
  118.       digitalWrite(f,HIGH);
  119.       digitalWrite(g,LOW);
  120.       break;
  121.     //number 3
  122.     case 3:
  123.       digitalWrite(a,LOW);
  124.       digitalWrite(b,LOW);
  125.       digitalWrite(c,LOW);
  126.       digitalWrite(d,LOW);
  127.       digitalWrite(e,HIGH);
  128.       digitalWrite(f,HIGH);
  129.       digitalWrite(g,LOW);
  130.       break;
  131.     //number 4
  132.     case 4:
  133.       digitalWrite(a,HIGH);
  134.       digitalWrite(b,LOW);
  135.       digitalWrite(c,LOW);
  136.       digitalWrite(d,HIGH);
  137.       digitalWrite(e,HIGH);
  138.       digitalWrite(f,LOW);
  139.       digitalWrite(g,LOW);
  140.       break;
  141.     //number 5
  142.     case 5:
  143.       digitalWrite(a,LOW);
  144.       digitalWrite(b,HIGH);
  145.       digitalWrite(c,LOW);
  146.       digitalWrite(d,LOW);
  147.       digitalWrite(e,HIGH);
  148.       digitalWrite(f,LOW);
  149.       digitalWrite(g,LOW);
  150.       break;
  151.     //number 6
  152.     case 6:
  153.       digitalWrite(a,LOW);
Advertisement
Add Comment
Please, Sign In to add comment