Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Enkoder kwadraturowy AVR C - cz.1

Radzio M. 21 Sty 2015 21:05 3318 2
  • Niniejszy artykuł przedstawia programową obsługę enkodera kwadraturowego przy użyciu mikrokontrolera Atmel AVR. Zajmowałem się tutaj enkoderem pochodzącym z drukarki HP.

    Obrazek niżej przedstawia wyprowadzenia enkodera :
    Enkoder kwadraturowy AVR C - cz.1

    Podłączamy oscyloskop i patrzymy co się dzieje:
    Enkoder kwadraturowy AVR C - cz.1

    Automat obsługi enkodera w postaci grafu:
    Enkoder kwadraturowy AVR C - cz.1

    Kod w C.
    plik nagłówkowy .h :

    Kod: c
    Zaloguj się, aby zobaczyć kod


    plik .c:
    Kod: c
    Zaloguj się, aby zobaczyć kod


    Można użyć dowolny enkoder kwadraturowy. Kolejna część będzie dotyczyć obsługi w przerwaniach.


    Fajne!
  • #2 01 Lut 2015 22:08
    Svavo
    Poziom 23  

    Czy dobrze wydaje mi się, że z obsługi wynika, że zmiana zbocza oznacza jeden krok? Są jednak enkodery w których jednemu krokowi odpowiada jeden impuls (2 zbocza). Jeśli to ma działać, to przydałby się filtr cyfrowy i/lub analogowy. Nie rozumiem nie używania przerwań przy obsłudze tego typu urządzeń wejściowych.

  • #3 01 Lut 2015 22:11
    Radzio M.
    Poziom 32  

    Tak zmiana zbocza to jeden krok. Filtr oczywiście jak najbardziej, ja po prostu doświadczalnie wybrałem prędkość, przy której jestem w stanie odczytać impulsy.
    Przerwania będą w 2 cz.