Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define encoderB 3
- long lastDebounceTime = 0;
- long delayDebounce = 100;
- unsigned int incremento = 1;
- volatile unsigned int var = 0;
- void setup() {
- pinMode(encoderA, INPUT);
- //digitalWrite(encoderA, HIGH);
- pinMode(encoderB, INPUT);
- //digitalWrite(encoderB, HIGH);
- attachInterrupt(0, encoder, CHANGE);
- Serial.begin(9600);
- }
- void loop(){
- }
- void encoder() {
- int readA = digitalRead(encoderA);
- int readB = digitalRead(encoderB);
- Serial.println(var);
- if(readA==readB){
- lastDebounceTime = micros();
- delay(100);
- }
- if((micros() - lastDebounceTime) > delayDebounce){
- if(readA==readB){
- var += incremento;
- if(var > 100) var = 0;
- }
- else{
- var -= incremento;
- if(var < 1) var = 100;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement