欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3047|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

PS2鼠標(biāo)解析

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:105323 發(fā)表于 2016-2-12 20:53 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
  標(biāo)準(zhǔn)的PS/2鼠標(biāo)支持下面的輸入X左右位移,Y上下位移,左鍵、中鍵和右鍵。鼠標(biāo)以一個(gè)固定的頻率讀取這些輸入并更新不同的計(jì)數(shù)器然后標(biāo)記出反映的移動(dòng)和按鍵狀態(tài),而Microsoft的Intellimouse它既支持標(biāo)準(zhǔn)輸入也支持滾輪和兩個(gè)附加的按鍵。
  標(biāo)準(zhǔn)的PS/2鼠標(biāo)發(fā)送位移和按鍵信息給主機(jī)采用如下的3字節(jié)數(shù)據(jù)包格式:
  鼠標(biāo)有4個(gè)模式:Reset、Stream、Remote、Wrap,各個(gè)模式具體的介紹詳見《PS2技術(shù)參考》一文,通常我們使用Stream模式,即一旦鼠標(biāo)檢測到位移或發(fā)現(xiàn)一個(gè)或多個(gè)鼠標(biāo)鍵的狀態(tài)改變了,就發(fā)送位移數(shù)據(jù)包數(shù)據(jù)報(bào)告的最大速率被認(rèn)為是采樣速率。參數(shù)的范圍從10采樣點(diǎn)/秒到200采樣點(diǎn)/秒。這個(gè)參數(shù)的缺省值是100采樣點(diǎn)/秒,主機(jī)可以用設(shè)置采樣速率0xF3命令來改變它Stream模式是操作的缺省模式。
  微軟的Intellimouse工作起來象標(biāo)準(zhǔn)的PS/2鼠標(biāo)(也就是使用3字節(jié)位移數(shù)據(jù)包,和標(biāo)準(zhǔn)PS/2鼠標(biāo)一樣回應(yīng)所有命令,報(bào)告設(shè)備ID0x00)。要進(jìn)入滾輪模式,主機(jī)應(yīng)該發(fā)送如下的命令序列:  
Set sample rate 200
Set sample rate 100
Set sample rate 80
  主機(jī)然后應(yīng)該發(fā)布“獲得設(shè)備ID”命令(0xF2)并等待回應(yīng)。如果安裝的是是標(biāo)準(zhǔn)PS/2鼠標(biāo)(非Intellimouse),它回應(yīng)設(shè)備ID0x00。在這種情況下,主機(jī)回辨認(rèn)出實(shí)際這個(gè)設(shè)備沒有滾輪并繼續(xù)把它當(dāng)作是標(biāo)準(zhǔn)PS/2鼠標(biāo)。但是,如果安裝的是微軟的Intellimouse,它返回的ID是0x03。這就告訴主機(jī)掛接的定點(diǎn)設(shè)備有滾輪并且主機(jī)認(rèn)為鼠標(biāo)使用4字節(jié)的位移數(shù)據(jù)包:
  Z位移是2的補(bǔ)碼表示滾輪的自上次數(shù)據(jù)報(bào)告以來的位移,有效值的范圍在-8到+7這意味著數(shù)值實(shí)際只有低四位;高四位僅用作符號(hào)擴(kuò)展位。

命令集具體介紹詳見《PS2技術(shù)參考》一文:
#definePS2_RESET          0XFF //復(fù)位命令 回應(yīng)0XFA
#defineRESEND             0XFE //再次發(fā)送
#define SET_DEFAULT        0XF6 //使用默認(rèn)設(shè)置 回應(yīng)0XFA
#define DIS_DATA_REPORT     0XF5 //禁用數(shù)據(jù)報(bào)告 回應(yīng)0XFA
#defineEN_DATA_REPORT      0XF4 //使能數(shù)據(jù)報(bào)告 回應(yīng)0XFA
#defineSET_SAMPLE_RATE     0XF3 //設(shè)置采樣速率 回應(yīng)0XFA
#defineGET_DEVICE_ID       0XF2 //得到設(shè)備ID   回應(yīng)0XFA+ID
#defineSET_REMOTE_MODE     0XF0 //設(shè)置到REMOTE模式 回應(yīng)OXFA
#defineSET_WRAP_MODE       0XEE //設(shè)置到WRAP模式 回應(yīng)0XFA
#defineRST_WRAP_MODE       0XEC //回到WRAP之前的模式 回應(yīng)0XFA
#defineREAD_DATA           0XEB //讀取數(shù)據(jù) 回應(yīng)0XFA+位移數(shù)據(jù)包
#defineSET_STREAM_MODE     0XEA //設(shè)置到STREAM模式 回應(yīng)0XFA
#defineSTATUS_REQUEST      0XE9 //請(qǐng)求得到狀態(tài) 回應(yīng)0XFA+3個(gè)字節(jié)
#defineSET_RESOLUTION      0XE8 //設(shè)置分辨率 回應(yīng)OXFA+讀取1個(gè)字節(jié)+再回應(yīng)0XFA
#defineSET_SCALING21       0XE7 //設(shè)置縮放比率為2:1 回應(yīng)0XFA
#defineSET_SCALING11       0XE6 //設(shè)置縮放比率為1:1 回應(yīng)0XFA

   

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表