当前位置: 技术问答>linux和unix
鼠标信息读取和写入问题!
来源: 互联网 发布时间:2015-09-05
本文导语: 请问如何在LINUX下,得到鼠标的按键和当前鼠标的坐标信息,我试过用/dev/mouse下读,但读出来是一些数字,而且速度很慢!我是用open,和read 两个函数作的。 我还用IOCTL函数做过,但好像都不行,请问如何才能得到鼠...
请问如何在LINUX下,得到鼠标的按键和当前鼠标的坐标信息,我试过用/dev/mouse下读,但读出来是一些数字,而且速度很慢!我是用open,和read 两个函数作的。
我还用IOCTL函数做过,但好像都不行,请问如何才能得到鼠标的按键和当前鼠标的坐标信息?谢谢!
我还用IOCTL函数做过,但好像都不行,请问如何才能得到鼠标的按键和当前鼠标的坐标信息?谢谢!
|
鼠标编程通讯协议
数据格式
㈠ MicroSoft 公司标准:
MICROSOFT FORMAT
字节 字元(B i t)
7 6 5 4 3 2 1 0
BYTE1 1 1 L R Y7 Y6 X7 X6
BYTE2 0 0 X5 X4 X3 X2 X1 X0
BYTE3 0 0 Y5 Y4 Y3 Y2 Y1 Y0
注释:
L = 左键状态
R = 右键状态 1 = 按下
0 = 释放
X0-X7 = X 距离
Y0-Y7 = Y 距离 X7或Y7为±符号位
串口特性:波特率 = 1200 Baud,8 位数据,无校验位,2 停止位。
--------------------------------------------------------------------------------
㈡ MOUSE SYSTEM 公司标准:
MOUSE SYSTEM FORMAT
字节 字元(B i t)
7 6 5 4 3 2 1 0
BYTE1 1 0 0 0 0 L M R
BYTE2 X7 X6 X5 X4 X3 X2 X1 X0
BYTE3 Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0
BYTE4 X7 X6 X5 X4 X3 X2 X1 X0
BYTE5 Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0
注释:
L = 左键状态
R = 右键状态
M = 中间键状态 1 = 按下
0 = 释放
X0-X7 = X 距离
Y0-Y7 = Y 距离 X7或Y7为±符号位
串口特性:波特率 = 1200 Baud,8 位数据,无校验位,2 停止位。
--------------------------------------------------------------------------------
㈢ IBM 公司 PS/2 MOUSE 标准:
PS/2 MOUSE FORMAT
字节 字元(B i t)
7 6 5 4 3 2 1 0
BYTE1 YV XV YS XS 1 0 R L
BYTE2 X7 X6 X5 X4 X3 X2 X1 X0
BYTE3 Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0
注释:
L = 左键状态
R = 右键状态 1 = 按下
0 = 释放
X0-X7 = X 距离
Y0-Y7 = Y 距离 X7或Y7为±符号位
XS,YS = ±符号位 1--- 反向移动
XV,YV = 溢出位 1---- X Y 数据溢出
数据格式
㈠ MicroSoft 公司标准:
MICROSOFT FORMAT
字节 字元(B i t)
7 6 5 4 3 2 1 0
BYTE1 1 1 L R Y7 Y6 X7 X6
BYTE2 0 0 X5 X4 X3 X2 X1 X0
BYTE3 0 0 Y5 Y4 Y3 Y2 Y1 Y0
注释:
L = 左键状态
R = 右键状态 1 = 按下
0 = 释放
X0-X7 = X 距离
Y0-Y7 = Y 距离 X7或Y7为±符号位
串口特性:波特率 = 1200 Baud,8 位数据,无校验位,2 停止位。
--------------------------------------------------------------------------------
㈡ MOUSE SYSTEM 公司标准:
MOUSE SYSTEM FORMAT
字节 字元(B i t)
7 6 5 4 3 2 1 0
BYTE1 1 0 0 0 0 L M R
BYTE2 X7 X6 X5 X4 X3 X2 X1 X0
BYTE3 Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0
BYTE4 X7 X6 X5 X4 X3 X2 X1 X0
BYTE5 Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0
注释:
L = 左键状态
R = 右键状态
M = 中间键状态 1 = 按下
0 = 释放
X0-X7 = X 距离
Y0-Y7 = Y 距离 X7或Y7为±符号位
串口特性:波特率 = 1200 Baud,8 位数据,无校验位,2 停止位。
--------------------------------------------------------------------------------
㈢ IBM 公司 PS/2 MOUSE 标准:
PS/2 MOUSE FORMAT
字节 字元(B i t)
7 6 5 4 3 2 1 0
BYTE1 YV XV YS XS 1 0 R L
BYTE2 X7 X6 X5 X4 X3 X2 X1 X0
BYTE3 Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0
注释:
L = 左键状态
R = 右键状态 1 = 按下
0 = 释放
X0-X7 = X 距离
Y0-Y7 = Y 距离 X7或Y7为±符号位
XS,YS = ±符号位 1--- 反向移动
XV,YV = 溢出位 1---- X Y 数据溢出