Spis treści 

Jak zmusić pecetowską mysz (Microsoft mouse) do współpracy z Amigą? (1996r.)

UWAGA :!: Konieczne przeróbki wymagają jako-takiej umiejętności posługiwania się lutownicą (trzeba będzie wylutować układ scalony) oraz rozkręcenia myszki (gwarancja!). Autor nie bierze na siebie odpowiedzialności za ewentualne szkody powstałe w wyniku niedbałego lub niestarannego wykonania przeróbek! Jeśli nie czujesz się na siłach by samodzielnie dokonać przeróbek - poproś kogoś o pomoc a pieniądze zaoszczędzone na naprawie komputera i pecetowskiej myszki przeznacz na jakieś zbożne cele :-)

Anatomia gryzonia

Konstrukcja części mechaniczno-optycznej myszki jest taka sama bez względu na typ komputera do którego jest ona podłączona. Składają się na nią dwie tarcze (z dużą ilością podłużnych rowków) połączone z rolkami (dla osi X i Y), które to z kolei są napędzane przez poruszającą się wewnątrz myszki kulkę. Poruszenie myszką powoduje obrót wałków, a co za tym idzie i tarcz z rowkami, które służą do określania kierunku ruchu myszki.

Ruch tarcz powoduje modulowanie promieni świetlnych (wysyłanych przez diody świecące), które padają na fotodetektory. Fotodetektory (a nie fotodetektor), ponieważ na każdą tarczę przypadają dwa fotodetektory i zależnie od producenta jedna lub dwie diody świecące. Dzięki specjalnej konstrukcji tarcz (nieparzysta liczba rowków) nie jest możliwe jednoczesne oświetlenie obu fotodetektorów, które dodatkowo są przesunięte względem siebie o 180 stopni (zawsze jeden z nich będzie oświetlony wcześniej od drugiego!).

Badając sygnały z fotodetektorów można więc łatwo określić kierunek ruchu myszki - przy poruszaniu w prawo sygnały otrzymywane z detektorów ruchu osi X mogą wyglądać tak:

        ____         _______          _______
    Xa      |       |       |        |       |
            |_______|       |________|       |________
           ____         _______          _______
    Xb         |       |       |        |       |
               |_______|       |________|       |________

Przy zmianie kierunku ruchu sytuacja oczywiście będzie odwrotna - sygnał Xb pojawi się pierwszy. Podobnie dzieje się z sygnałami Ya i Yb przy poruszaniu myszką w pionie.

W części elektronicznej gryzoni różnice są już znaczne - przede wszystkim dlatego, że w Amigach sygnały z fotodetektorów (po odpowiednim uformowaniu) wędrują bezpośrednio do komputera a w komputerach PC konieczna jest jeszcze konwersja sygnałów do postaci akceptowalnej przez sterownik portu szeregowego bowiem właśnie tam jest podłączona myszka.

Formowaniem impulsów z czterech fotodetektorów (dwa dla kierunku X i dwa dla Y) zajmuje się najczęściej układ scalony LM339 (4 komparatory). Przykładowy obwód komparatora może wyglądać tak:

 o Vcc                   100 K               o Vcc
 |                                           |
 |                 ____/\/\/\/\____          \
 /                |                |         /
|                 |    |\          |         \ 3.3K
|  detektor       |    |  \        |         /
\_________________|____|+   \      |         |
 |                     |      \____|_________|_____o wyj
 \2.2K    o Vcc        |      /
 /        /        ____|-   /
 \   10K  \       |    |  /
 /        /       |    |/ 1/4 LM339
 |        |_______|
---       |
 -        \
    2.7K  /
          \
          |
        -----
         ---
          -

UWAGA :!: Wartości elementów podane na rysunku odnoszą się do układu pracującego z Amigą tj. przy napięciu zasilania 5V. W przypadku pecetów, ze względu na wyższe napięcie zasilania, wartości elementów będą inne. Rezystory 10K i 2.7K tworzą dzielnik napięcia polaryzujący komparator napięciem około 1V. Jest to istotne ponieważ detektor pracuje przy napięciu 5V. Dzielnik napięcia jest wspólny dla wszystkich czterech komparatorów w układzie scalonym.

Za konwersję na postać zrozumiałą dla sterownika portu szeregowego, w myszkach przeznaczonych dla pecetów, odpowiada najczęściej układ scalony Mitsumi MS02 choć zdarzają się konstrukcje w których całą robotę wykonuje jeden "scalak" przejmujący funkcje komparatorów i konwersji (w tym przypadku przeróbka myszki nie ma sensu chyba, że ktoś pokusi się o wykorzystanie samego układu opto-mechanicznego). Sygnały wysyłane do komputera mają często format spotykany w myszkach "Mouse System" (tzw. 5bajtów)

bajt 0:  (bajt synchronizacji) %10000XXX (XXX = stan przycisków)
bajt 1:  X delta
bajt 2:  Y delta
bajt 3:  X delta
bajt 4:  Y delta
---
bajty 3 i 4 określają kierunek ruchu myszki po tym jak bajty 1
i 2 zostały wysłane.

Taki sposób przesyłania danych ma tę zaletę, że do połączenia myszki z komputerem wystarczą 4 przewody (w przypadku myszek amigowskich potrzeba ich aż 8). Trzeba także pamiętać, że myszki amigowskie pracują przy znacznie niższym napięciu zasilania (5V) niż pecetowe (12V).

Konieczne przeróbki

Potrzebne przybory to:

Na początek trzeba myszkę (Microsoft mouse) rozkręcić, co jak wiadomo wiąże się z utratą gwarancji. Na dodatek wcale nie jest takie pewne, że po ponownym skręceniu wszystkiego do kupy TO będzie działało! Najlepiej więc przed podjęciem decyzji zastanowić się dwa razy (a potem jeszcze raz).

Po rozkręceniu myszki należy najpierw upewnić się, że na płytce są układy scalone LM339 i Mitsumi MS02 (ten drugi powinien znajdować się najbliżej złącza oznaczonego jako CN1). Jeśli są - to dobrze, a jeśli np. jest tylko jeden układ scalony to niestety należy złożyć myszkę i zapomnieć o przeróbkach.

No dobrze. Teraz należy odłączyć przewody (złącze CN1) i odkręcić układ opto-mechaniczny. Nie jest to skomplikowane (a przynajmniej być nie powinno). Po wyjęciu płytki z elektroniką należy usunąć z niej układ scalony Mitsumi MS02 - jeśli jest on w podstawce to dobrze - jeśli nie to będzie trochę zabawy z wylutowaniem go. Jest to chyba najbardziej pracochłonny i niebezpieczny moment całej operacji. Należy uważać by nie przepalić lutownicą ścieżek na płytce i nie uszkodzić układu scalonego - może się jeszcze przydać.

Teraz trzeba odszukać rezystor (powierzchniowy) oznaczony symbolem "182" - powinien znajdować się na lewo od złącza CN1. Między jego górną końcówkę a linię zasilającą (taka grubsza ścieżka na płytce w miejscu po usuniętym scalaku) należy przylutować rezystor 470 ohm. Ta "proteza" powoduje przystosowanie diod świecących do pracy przy napięciu 5V (zamiast 12V).

           o  o  o  o  o  o  o  o
                       |  |          znak | to rezystor pow.
         ________________            <---
        |           |   |     |
 470    \  o  o  o  o  o  o  o  o    <-- usunięty układ scalony
Rezystor/
        \   o  o  o
        /
        |_______
               |    o  o  o  o  o    <-- złącze CN1
             "182"
             rezystor do montażu powierzchniowego

Żeby założyć drugą "protezę" należy odszukać puste końcówki rezystora powierzchniowego, które powinny się znajdować poniżej końcówki 3 i 4 układu LM339. W to miejsce należy przylutować rezystor 10K co spowoduje przestawienie dzielnika napięcia przy komparatorach na niższe napięcie zasilania.

            |
         o  o  o  o  o  o  o
         |  |  _  _                znak | to rezystor pow.
               Pads                <---
         |
         o  o  o  o  o  o  o       <-- LM339

Teraz kolej na kabelki, które poniosą sygnały elektryczne do komputera. Sygnały trzeba pobrać z punktów lutowniczych usuniętego układu scalonego (Mitsumi MS02).

  złącze DB9   końcówka scalaka  funkcja
 ------------------------------------------
      1           12            Yb
      2           10            Xa
      3           11            Ya
      4           9             Xb
      5           --            (środkowy przycisk myszki)
      6           13            lewy przycisk
      7           16            Vcc (+5V)
      8           8             masa
      9           14            prawy przycisk
    ochrona złącza DB9 połączona do końcówki 5 złącza CN1

Teraz jeszcze tylko rzut okiem na wykonaną pracę, sprawdzenie połączeń, złożenie myszki do kupy (za którymś razem uda się to na pewno) i gotowe.

Jeśli coś jest nie tak np. gdy:

Literatura

  1. mousehack.txt (Aminet)
  2. optmouse.lha (Fish)

Artykuł ten powstał na podstawie informacji zawartych w pliku [1] autorstwa Jeff Eastona easton@andrews.edu oraz własnych doświadczeń przy przerabianiu myszki DEXTRA.