工作模式如下
鼠标的工作模式:
1、Reset模式:鼠标上电或受到复位命令(0xFF)时进入次模式。(一般电脑才用吧)
设置缺省的Sample rate:100samples/s;Resolution: 4 counts/mm;Scaling: 1:1; Da
复位完成后向Host发送0xAA/0xFC(successful/Error)。Host如果没有收到0xAA,就重新给鼠标上电。
发送完0xAA后,鼠标继续向Host发送自己的ID号:0x00。之后进入Stream模式,此时,禁止向Host发送任何数据包,直到收到0xF4(Da
2、Stream模式:缺省模式。一旦发现鼠标状态有任何变化,就向Host发送数据包。
3、Remote模式:鼠标不主动向Host发送数据包,只有在收到命令0xEB后才发送数据包并复位计数器。(觉得适合单片机)
4、Wrap模式:鼠标将除了Reset(0xFF)和Reset Wrap Mode(0xEC)以外的所有从Host收到的命令发送回去。
让鼠标工作在Remote模式,你可以每过一段时间才去读取那位移值,这样就不怕单片机的速度跟不上了,而且这段时间还可以让单片机去做其他的事情~~~~
如:
PS2_send(0xeb);
f=PS2_get();
f=PS2_get();
a1=PS2_get(); //a1收到的是X轴的位移
a2=PS2_get(); //a2收到的是Y轴的位移
『本文转载自网络,版权归原作者所有,如有侵权请联系删除』