Keresés

Hirdetés

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

  • And

    veterán

    válasz Janos250 #13673 üzenetére

    Ez nem jó elképzelés. Mindkét (A, B) jel minden szintváltozására megszakítást kell kapni, és ezekből ideális esetben négy, de minimum három vagy kettő darab szükséges az irány egyértelmű detektálásához (ha nincs meg a 3 db. él, akkor 'félútról' visszatekerve kaphatunk egy ellenkező irányú jelzést is, ami nem feltétlenül korrekt). Amíg nincs meg az irány, addig nem lehet / szabad felhasználni a beérkezett éleket, mert addig csak annyi bizonyos, hogy az enkódert megmozdították, de még nincs feldolgozható és egyértelmű (üzembiztos) működtetés valamelyik irányban. Az nem elegendő, hogy az első megszakításban olvassuk a másik fázis jelét, mivel ha a futás kellően gyors és/vagy a rotary-t lassan tekerik, akkor nagyságrendekkel gyorsabban fut le az IRQ, mint ahogy az összes szükséges él beérkezne az inputokra.
    Van rotary enkóder olvasásra bevált kódom, de nem arduino-ra, hanem más uC-re.

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