table of contents
- bookworm 1:4.18.1-1
- bookworm-backports 1:4.25.1-1~bpo12+1
- testing 1:4.25.1-1
- unstable 1:4.25.1-1
mouse(4) | Device Drivers Manual | mouse(4) |
NAZWA¶
mouse - interfejs myszy szeregowej
KONFIGURACJA¶
Myszy szeregowe podłączane są do linii szeregowej RS232/V24, której opis można znaleźć w ttyS(4).
OPIS¶
Wstęp¶
Połączenia zwykłej wtyczki 9-pinowej stosowanej w myszach to:
pin | nazwa | zastosowanie |
2 | RX | Dane |
3 | TX | -12 V, Imax = 10 mA |
4 | DTR | +12 V, Imax = 10 mA |
7 | RTS | +12 V, Imax = 10 mA |
5 | GND | Masa |
Taka jest specyfikacja, ale w praktyce dla większości myszy wystarcza 9 V.
The mouse driver can recognize a mouse by dropping RTS to low and raising it again. About 14 ms later the mouse will send 0x4D ('M') on the data line. After a further 63 ms, a Microsoft-compatible 3-button mouse will send 0x33 ('3').
Względne przemieszczenie myszy wysyłane jest jako dx (wartość dodatnia oznacza w prawo) i dy (wartość dodatnia oznacza w dół). Myszy mogą pracować z różnymi prędkościami. Wybór prędkości odbywa się poprzez cykliczne przejście przez prędkości 9600, 4800, 2400 i 1200 bitów/s, za każdym razem zapisując dwa znaki z poniższej tabeli i czekając 0,1 sekundy. Następująca tabela pokazuje dostępne prędkości i sekwencje znaków, służące do ich wyboru:
bitów/s | sekwencja |
9600 | *q |
4800 | *p |
2400 | *o |
1200 | *n |
The first byte of a data packet can be used for synchronization purposes.
Protokół Microsoft¶
Protokół Microsoft używa 1 bitu startu, 7 bitów danych, bez parzystości i z jednym bitem stopu przy prędkości 1200 bitów/sekundę. Dane są przesyłane do RxD w 3-bajtowych pakietach. Przesunięcia dx i dy są przesyłane jako uzupełnienie do dwóch, lb (rb) są ustawiane, gdy wciśnięty jest lewy (prawy) przycisk myszy:
bajt | d6 | d5 | d4 | d3 | d2 | d1 | d0 |
1 | 1 | lb | rb | dy7 | dy6 | dx7 | dx6 |
2 | 0 | dx5 | dx4 | dx3 | dx2 | dx1 | dx0 |
3 | 0 | dy5 | dy4 | dy3 | dy2 | dy1 | dy0 |
3-przyciskowy protokół Microsoft¶
Oryginalne myszy Microsoft mają jedynie dwa przyciski. Istnieją jednak myszy trójprzyciskowe, które również korzystają z protokołu Microsoft. Wciśnięcie trzeciego przycisku zgłaszane jest przez wysłanie pakietu z zerowym przesunięciem i bez wciśniętych przycisków. (Zatem, w odróżnieniu od pozostałych dwu przycisków, stan przycisku środkowego nie jest zgłaszany w każdym pakiecie).
Protokół Logitech¶
Szeregowa 3-przyciskowa mysz Logitech korzysta z innego rozszerzenia protokołu Microsoft: gdy środkowy przycisk jest zwalniany, wysyłany jest 3-bajtowy pakiet opisany powyżej. Gdy środkowy przycisk jest naciskany, wysyłany jest 4-bajtowy pakiet, w którym czwarty bajt ma wartość 0x20 (lub ma ustawiony przynajmniej bit 0x20). W szczególności, naciśnięcie środkowego przycisku jest sygnalizowane jako 0,0,0,0x20, gdy żaden inny przycisk nie jest wciśnięty.
Protokół Mousesystems¶
The Mousesystems protocol uses 1 start bit, 8 data bits, no parity, and two stop bits at the speed of 1200 bits/sec. Data is sent to RxD in 5-byte packets. dx is sent as the sum of the two two's-complement values, dy is send as negated sum of the two two's-complement values. lb (mb, rb) are cleared when the left (middle, right) button is pressed:
bajt | d7 | d6 | d5 | d4 | d3 | d2 | d1 | d0 |
1 | 1 | 0 | 0 | 0 | 0 | lb | mb | rb |
2 | 0 | dxa6 | dxa5 | dxa4 | dxa3 | dxa2 | dxa1 | dxa0 |
3 | 0 | dya6 | dya5 | dya4 | dya3 | dya2 | dya1 | dya0 |
4 | 0 | dxb6 | dxb5 | dxb4 | dxb3 | dxb2 | dxb1 | dxb0 |
5 | 0 | dyb6 | dyb5 | dyb4 | dyb3 | dyb2 | dyb1 | dyb0 |
Bajty 4 i 5 opisują zmianę, która nastąpiła od chwili wysłania bajtów 2 i 3.
Protokół Sun¶
Protokół Sun jest 3-bajtową wersją opisanego powyżej 5-bajtowego protokołu Mousesystemsi: ostatnie dwa bajty nie są wysyłane.
Protokół MM¶
The MM protocol uses 1 start bit, 8 data bits, odd parity, and one stop bit at the speed of 1200 bits/sec. Data is sent to RxD in 3-byte packets. dx and dy are sent as single signed values, the sign bit indicating a negative value. lb (mb, rb) are set when the left (middle, right) button is pressed:
bajt | d7 | d6 | d5 | d4 | d3 | d2 | d1 | d0 |
1 | 1 | 0 | 0 | dxs | dys | lb | mb | rb |
2 | 0 | dx6 | dx5 | dx4 | dx3 | dx2 | dx1 | dx0 |
3 | 0 | dy6 | dy5 | dy4 | dy3 | dy2 | dy1 | dy0 |
PLIKI¶
- /dev/mouse
- A commonly used symbolic link pointing to a mouse device.
ZOBACZ TAKŻE¶
TŁUMACZENIE¶
Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Paweł Olszewski <alder@amg.net.pl>, Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl> i Michał Kułach <michal.kulach@gmail.com>
Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.
Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.
5 lutego 2023 r. | Linux man-pages 6.03 |