MOUSE
Section: Linux Programmer's Manual (4)
Updated: 2020-08-13
Index
JM Home Page
roff page
名前
mouse - シリアルマウスインターフェース
設定
シリアルマウスは RS232/V24 ダイアルアウトラインに接続される。 RS232/V24 ダイアルアウトライン については ttyS(4)
を参照のこと。
説明
概説
シリアルマウスで使われる普通の 9 ピンプラグのピン配列は以下である:
pin | name | used for
|
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 | Ground
|
これは仕様書であり、実際はほとんどのマウスでは 9 V で十分である。
マウスドライバは RTS をロー(low)に落し、再び上げることによって、マウスを認識でき る。およそ 14 ms 後、マウスはデータライン上に
0x4D ('M') を送るだろう。さら に 63ms あと、マイクロソフト互換 3ボタンマウスは 0x33 ('3')
を送る。
マウスの相対的な移動は、dx(正が右)とdy(正が下)として伝えられる。
各種のマウスは異なったスピードで操作できる。スピードを選択するには、 下の表の2文字を送ってから 0.1 秒待つことで、9600, 4800,
2400, 1200 bit/s を順に選べる。 以下の表では選択可能なスピードとそれを選択するための文字列を示している。
bit/s | string
|
9600 | *q
|
4800 | *p
|
2400 | *o
|
1200 | *n
|
データパケットの第 1 バイトは同期をとるのに利用できる。
マイクロソフト プロトコル(Microsoft Protocol)
マイクロソフトプロトコルは、1200 bits/sec のスピードで、1 ス タートビット(1 start bit)、7 データビット(7
data bits)、パリティな し、1 ストップビット(1 stop bit)である。 データは RxD に 3
バイトのパケットとして送られる。dx と dy の動きは 2 の補数表示で送られ、左(右)のボタンが押された時には lb
(rb)がセットされる。
byte | 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つボタン マイクロソフト プロトコル(3-button Microsoft protocol)
本来のマイクロソフトマウスは 2 つのボタンしか持たない。しかし、3 つボタン のマウスでマイクロソフトプロトコルの物も存在する。真中のボタンを押す、
または放すということは、動きゼロでボタンが押されていないというパケット を送ることで伝えられる。(従って他の二つのボタンと違い、真中のボタ
ンのステータスは、それぞれのパケットからは伝わって来ない。)
ロジテック プロトコル(Logitech protocol)
ロジテック シリアル 3つボタンマウスは、マイクロソフト プロトコルとは 異なった拡張をしている。:真中のボタンが押されてないと、上記 3バイトの
パケットが送られる。真中のボタンが押されていると、4バイトのパケットが 送られる。第4バイトは 0x20 の値を持っている(あるいは、少なくとも
0x20 ビットがセットされている)。 但し、他のボタンが押されていない状態で、 真中のボタンが押されると、0,0,0,0x20 と伝えられる。
マウスシステムズ プロトコル(Mousesystems protocol)
マウスシステムズプロトコルは、1200 bits/secで、1 スタートビット、 8 データビット、パリティなし、2 ストップビットである。
データは、RxD に 5 バイトのパケットとして送られる。dx は 2 つの 2 の補数の和として送られ、dy は 2 つの 2
の補数の和の否定 として送られる。左(中、右)のボタンが押された時にはlb (mb, rb) がクリアされる。
byte | 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
|
第 4,5 バイトには、第 2,3 バイトが送られたあと生じた変更が記述される。
サン プロトコル(Sun protocol)
サン プロトコルは、上記の 5 バイト マウスシステムプロトコルの 3 バイト版です。後の 2 バイトは送られません。
MM プロトコル(MM protocol)
MM プロトコルは 1200 bits/sec で 1 スタートビット、8 データビッ ト、奇数パリティ、 1 ストップビットを使う。データは
RxD に 3 バイトのパ ケットとして送られる。dx と dy は一つの符号つきの値として
送られ、サインビットは負の値を表す。左(中、右)のボタンが押された時には lb (mb, rb)がセットされる。
byte | 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
-
一般的にマウスデバイスをさすのに使われるシンボリックリンク
関連項目
ttyS(4), gpm(8)
この文書について
この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は
https://www.kernel.org/doc/man-pages/ に書かれている。
Index
- 名前
-
- 設定
-
- 説明
-
- 概説
-
- マイクロソフト プロトコル(Microsoft Protocol)
-
- 3つボタン マイクロソフト プロトコル(3-button Microsoft protocol)
-
- ロジテック プロトコル(Logitech protocol)
-
- マウスシステムズ プロトコル(Mousesystems protocol)
-
- サン プロトコル(Sun protocol)
-
- MM プロトコル(MM protocol)
-
- ファイル
-
- 関連項目
-
- この文書について
-
This document was created by
man2html,
using the manual pages.
Time: 16:46:42 GMT, November 24, 2023