Stipa

Stepper switch case millis

Aug 28th, 2018
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. void loop() {
  2.    
  3.     int state = 0;
  4.  
  5.     if (currentMillis - previousMillis > interval) {
  6.         previousMillis = currentMillis;
  7.    
  8.         if (OpenedState == LOW && temperature > SetTemp + 0.10) {
  9.             state = 1;
  10.             steps++;
  11.                 if (steps >= 8)
  12.                     steps = 0;
  13.         }
  14.  
  15.         if (ClosedState == LOW && temperature < SetTemp - 0.10) {
  16.             state = 1;
  17.             steps--;
  18.                 if (steps <= 0)
  19.                     steps = 8;
  20.         }
  21.    
  22.         switch(steps){
  23.             case 0:
  24.                 digitalWrite(Pin1, LOW);  
  25.                 digitalWrite(Pin2, LOW);
  26.                 digitalWrite(Pin3, LOW);
  27.                 digitalWrite(Pin4, HIGH);
  28.                 break;  
  29.             case 1:
  30.                 digitalWrite(Pin1, LOW);  
  31.                 digitalWrite(Pin2, LOW);
  32.                 digitalWrite(Pin3, HIGH);
  33.                 digitalWrite(Pin4, HIGH);
  34.                 break;  
  35.             case 2:
  36.                 digitalWrite(Pin1, LOW);  
  37.                 digitalWrite(Pin2, LOW);
  38.                 digitalWrite(Pin3, HIGH);
  39.                 digitalWrite(Pin4, LOW);
  40.                 break;  
  41.             case 3:
  42.                 digitalWrite(Pin1, LOW);  
  43.                 digitalWrite(Pin2, HIGH);
  44.                 digitalWrite(Pin3, HIGH);
  45.                 digitalWrite(Pin4, LOW);
  46.                 break;  
  47.             case 4:
  48.                 digitalWrite(Pin1, LOW);  
  49.                 digitalWrite(Pin2, HIGH);
  50.                 digitalWrite(Pin3, LOW);
  51.                 digitalWrite(Pin4, LOW);
  52.                 break;  
  53.             case 5:
  54.                 digitalWrite(Pin1, HIGH);  
  55.                 digitalWrite(Pin2, HIGH);
  56.                 digitalWrite(Pin3, LOW);
  57.                 digitalWrite(Pin4, LOW);
  58.                 break;  
  59.             case 6:
  60.                 digitalWrite(Pin1, HIGH);  
  61.                 digitalWrite(Pin2, LOW);
  62.                 digitalWrite(Pin3, LOW);
  63.                 digitalWrite(Pin4, LOW);
  64.                 break;  
  65.             case 7:
  66.                 digitalWrite(Pin1, HIGH);  
  67.                 digitalWrite(Pin2, LOW);
  68.                 digitalWrite(Pin3, LOW);
  69.                 digitalWrite(Pin4, HIGH);
  70.                 break;  
  71.             default:
  72.                 digitalWrite(Pin1, LOW);  
  73.                 digitalWrite(Pin2, LOW);
  74.                 digitalWrite(Pin3, LOW);
  75.                 digitalWrite(Pin4, LOW);
  76.                 break;  
  77.         }
  78.         if (state == 0) {
  79.             steps = 8;
  80.         }
  81.     }
  82. }
Advertisement
Add Comment
Please, Sign In to add comment