Hirdetés

Új hozzászólás Aktív témák

  • válasz ekkold #16860 üzenetére

    Ahogy értem, ez mind a kettő inkrementális AB enkóder.

    A feldolgozási logika mindkettőnél ugyanaz, csak a mechanikája az egyiknek egyszeres felbontásra van stabilizálva, a másiknak pedig kétszeresre.

    Az elsőnek az a logikája hogy az A jelre "rising" interruptot teszel. Tehát amikor a jel 0->1 átmeneten halad át, akkor hajtasz végre feladatot.
    A feladat az, hogy ellenőrzöd B-t. Ha B=1, akkor pozitív irányba történt fordítás, ha B=0 akkor negatívba.

    A másodiknak annyival bővül a logikája, hogy az A jelre "falling" interruptot is teszel (a kettő együtt "changing" interrupt).
    A logika pedig:
    - Ha A=1 és B=1 -> előre fordult
    - Ha A=1 és B=0 -> vissza fordult
    - Ha A=0 és B=0 -> előre fordult
    - Ha A=0 és B=1 -> vissza fordult

    tovább egyszerűsítve akár a fentit, akár a lentit:
    Ha az interrupt eseményben A és B értéke egyezik -> előre fordult, ellenkező esetben hátra.

    (négyszeres felbontás esetén pedig a B váltásait is lehet figyelni, és eljárni A értéke szerint)

Új hozzászólás Aktív témák