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

zliczanie impulsów z myszy

09 Cze 2008 18:45 2490 13
  • Poziom 2  
    Próbuję napisać program w asemblerze zliczający impulsy jednej z rolek myszy (oś pionowa lub pozioma). Mam problem bo nie chodzi o samą ilość obrotów rolki, ale także o określenie w którą stronę się ona porusza. Myślałem nad wykorzystaniem detektora przejścia przez zero, ale nie do końca wiem jak się za to zabrać. Może jakieś sugestie albo podpowiedzi?
    Z góry dzięki za pomoc.
  • Poziom 38  
    Heeh?
    A przy rolce masz dwa czujniki? Jak tak to wykrywaj gdzie pierwsze pojawiło się 0 czy 1... i na podstawie tego określ kierunek.
  • Poziom 2  
    Przy rolce jest jeden czujnik (fotodioda i fotodetektor).
  • Poziom 25  
    Do określenia w którą stronę kręci się rolka potrzebujesz 2 sygnałów. Poczytaj o działaniu enkoderów.
    Najprościej to zrobić tak:
    Przy opadającym lub narastającym zboczu jednego sygnału sprawdzasz stan sygnału drugiego. Jeżeli jest stan wysoki to rolka kręci się w jedną stronę a jak niski to w drugą.

    Spóźniłem się troszkę :)
    Jesteś pewien ze tam jest jeden czujnik? może są 2 w obudowie.
    Przy jednym czujniku nie widzę możliwości odczytania kierunku obrotu.
  • Poziom 38  
    To nie wiem :P pc skądś wie w jaką stronę się kręci więc pewnie jest jakiś catch - poczekamy może ktoś podpowie;)

    Dodano po 51 [sekundy]:

    Szkoda, że napisał, że tam tylko jeden czujnik jest:>
  • Poziom 30  
    Dwa elementy...
    Jeden to dioda IR a drugi element to podwójny fototranzystor...
    Dostajesz dwa przesunięte względem siebie przebiegi co pozwala określić kierunek...
  • Poziom 30  
    Częściej taki element przypomina prostokątnego leda tyle, że ma trzy wyprowadzenia...
  • Specjalista techniki cyfrowej
    Ja to kiedyś zrobiłem tak, że wyjście jednego kanału do wejścia przerwania, a drugi do jakiegoś pinu. Działało na banalnie prostej zasadzie - sygnałz pierwszego kanału wywoływał przerwanie (opadające zbocze) a w procedurze obsługi przerwania odczytywany był stan drugiego kanału i na podstawie tego albo zwiększanie, albo zmniejszanie licznika.
    Efekt był taki, że z jedna myszką działało idealnie (oryginalna z Amigi, mam do dziś i wciąż działa :]), a z inną było kompletnie do kitu.
    Okazało się, że ta druga myszka nie daje ostrych zboczy, tylko jakieś śmieci podczas przełączania, a poza tym sygnały maja wypełnienie <50% (przy ruchu ze stałą prędkością), przez co procedura odczytująca drugi kanał głupiała, bo dużo częściej odczytywała tylko jeden ze stanów.

    Przede wszystkim jednak nie widzę odpowiedzi na pytanie, które nie zostało jeszcze zadane. Czy chodzi o sam układ optyczny z myszki, czy o komunikację z myszką? Jeżeli wariant drugi, to z jaką myszką?
  • Poziom 21  
    Nie potrzeba FPGA to tylko przykład, a że był schemat dekodera to bardzo dobry przykład. :)