Появилась необходимость подключить энкоедер оптический как здесь его можно реализовать энкодер имеет 40импульсов на оборот
Выход логика работы 00 01 11 10 , 00 01 11 10 и так далее
Как можно реализовать сей проект ?
Добавлено (29.09.2015, 21:13)
---------------------------------------------
то что получилось реализовать работает программно и очень медленно на малых скоростях норм 20 сек на оборот а быстрее проскальзывает
нужна на аппаратном прерывание
Код: Выделить всё
#define pinB 30
volatile int val = 0;     
void setup() {
     Serial.begin (9600);
     pinMode(pinB, INPUT);
     attachInterrupt(0, encoder, FALLING);    
}
void loop() {
        
}
void encoder() {     
     if (digitalRead(pinB)) {
       val++;    
       Serial.print(">> ");     
     }    
     else {
       val--;    
       Serial.print("<< ");    
     }
    Serial.println (val);     
}считывания показаний