Advertisement
Guest User

Untitled

a guest
Sep 8th, 2015
195
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.78 KB | None | 0 0
  1. #define encoderB 3
  2.  
  3. long lastDebounceTime = 0;
  4. long delayDebounce = 100;
  5.  
  6. unsigned int incremento = 1;
  7.  
  8. volatile unsigned int var = 0;
  9.  
  10. void setup() {  
  11.   pinMode(encoderA, INPUT);
  12.   //digitalWrite(encoderA, HIGH);
  13.   pinMode(encoderB, INPUT);
  14.   //digitalWrite(encoderB, HIGH);
  15.   attachInterrupt(0, encoder, CHANGE);
  16.   Serial.begin(9600);
  17. }
  18.  
  19. void loop(){
  20.  
  21. }
  22.  
  23. void encoder() {
  24.  
  25.   int readA = digitalRead(encoderA);
  26.   int readB = digitalRead(encoderB);
  27.  Serial.println(var);
  28.  
  29.   if(readA==readB){
  30.     lastDebounceTime = micros();
  31.     delay(100);
  32.   }
  33.  
  34. if((micros() - lastDebounceTime) > delayDebounce){
  35.   if(readA==readB){
  36.    
  37.     var += incremento;
  38.  
  39.     if(var > 100) var = 0;
  40.   }
  41.   else{
  42.     var -= incremento;
  43.     if(var < 1) var = 100;
  44.   }
  45. }
  46.  
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement