mouse - rozhraní pro sériovou myš
Sériové myši jsou připojeny na sériová
rozhraní RS232/V24, viz
ttyS(4).
Zapojení 9 pinového konektoru sériové myši:
pin |
jméno |
použití |
2 |
RX |
Data |
3 |
TX |
-12 V, Imax = 10 mA |
4 |
DTR |
+12 V, Imax = 10 mA |
7 |
RTS |
+12 V, Imax = 10 mA |
5 |
GND |
Zem |
To je specifikace, ve skutečnosti vystačí
většina myší s 9 V.
Ovladač myši rozpozná typ myši tak, že na RTS
nasadí logickou nulu a vzápětí jedničku. Po
asi 14 ms pošle myš na datový pin 0x4D ('M'). Po
dalších 63 ms pošle Microsoft kompatibilní
třítlačítková myš 0x33 ('3').
Relativní pohyb myši je posílán jako
dx
(kladné znamená pohyb vpravo) a
dy (kladné
znamená dolů). Různé myši mohou fungovat na
různých rychlostech. Chcete-li vybrat rychlost (jednu z 9600,
4800, 2400 nebo 1200 bitů/s, zapište vždy dva znaky z
následující tabulky a počkejte 0.1 sekundy.
Následující tabulka udává dostupné
rychlosti a řetězce, které je vyberou:
bitů/s |
řetězec |
9600 |
*q |
4800 |
*p |
2400 |
*o |
1200 |
*n |
První bajt z datového paketu může být
určen k synchronizačním účelům.
Microsoft protokol používá 1 start bit, 7
datových bitů, žádný paritní a jeden
stop bit na rychlosti 1200 bitů/sec. Data jsou posílána
na RxD v 3-bajtových paketech.
dx a
dy jsou
posílány jako dvojkové doplňky,
lb
(
rb) jsou poslány, je-li stisknuto levé (pravé)
tlačítko:
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 |
Původní myš Microsoft měla pouze dvě
tlačítka. Nyní jsou již i
třítlačítkové myši, které
komunikují tímto protokolem. Stisk prostředního
tlačítka je poslán jako paket, kde se myš nepohla
a ani jedno tlačítko nebylo stisknuto. (Takže,
narozdíl od levého a pravého tlačítka, stav
prostředního tlačítka není
vysílán v každém paketu.)
Sériové 3-tlačítkové myši Logitech
používají jiné
rozšíření protokolu Microsoft: Pokud není
prostřední tlačítko stisknuto,
posílá se výše popsaný 3-bajtový
paket. Pokud stisknuto je, posílá se 4-bajtový paket,
jehož čtvrtý bajt má hodnotu 0x20 (nebo má
alespoň nastavený bit 0x20). Konkrétně, stisk
prostředního tlačítka (pokud nejsou stisknuta
ostatní tlačítka) se posílá jako
0,0,0,0x20.
Protokol
Mousesystems používá 1 start bit, 8
datových bitů, žádný paritní a dva
stop bity na rychlosti 1200 bitů/sec. Data jsou posílána
na RxD v 5-bajtových paketech.
dx je posíláno jako
součet dvou dvojkových doplňků,
dy je
posíláno jako invertovaný součet dvou
dvojkových doplňků.
lb (
mb,
rb)
jsou vymazány, je-li stisknuto levé (prostřední,
pravé) tlačítko:
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 a 5 popisují změny, které nastaly od
vyslání bajtů 2 a 3.
Protokol
Sun je 3-bajtová verze 5-bajtového protokolu
Mousesystems: poslední dva bajty se neposílají.
Protokol
MM používá 1 start bit, 8 datových
bitů, lichou paritu a jeden stop bit na rychlosti 1200 bitů/sec.
Data jsou posílána na RxD v 3-bajtových paketech.
dx a
dy jsou posílány jako samostatné
hodnoty se znaménkem. Nastavení bitu pro znaménko
znamená zápornou hodnotu.
lb (
mb,
rb) jsou
nastaveny, je-li stisknuto levé (prostřední,
pravé) tlačítko:
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 |
- /dev/mouse
- často používaný
symbolický odkaz na skutečné
zařízení myši.
ttyS(4),
gpm(8)
Překlad této příručky do
španělštiny vytvořili Jiří
Pavlovský <
[email protected]> a Pavel Heimlich
<
[email protected]>
Tento překlad je bezplatná dokumentace;
Přečtěte si
GNU
General Public License Version 3 nebo novější
ohledně podmínek autorských práv. Neexistuje
ŽÁDNÁ ODPOVĚDNOST.
Pokud narazíte na nějaké chyby v překladu
této příručky, pošlete e-mail na adresu
[email protected]