版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、PS2鍵盤與鼠標(biāo)的接口定義針腳定義:Make 公的公的female 母的母的6 * Mmi-DIXlPS 2)【一數(shù)揩【一數(shù)揩2未實(shí)現(xiàn)未實(shí)現(xiàn)”螺留螺留3 電源地電源地4 一電源一一電源一 Vpi頓插頭頓插頭(SockeO 插座插座5-Wi6-未疝未疝.flffl.flffl原理PS2鼠標(biāo)接口采用一種雙向同步串行協(xié)議?即每在時(shí)鐘線上發(fā)一個(gè)脈沖,就在數(shù)據(jù)線上發(fā)送一位數(shù)據(jù)?在相互傳輸中,主機(jī)擁有總線控制權(quán),即它可以在任何時(shí)候抑制鼠標(biāo)的發(fā)送?方法是把時(shí)鐘線一直拉低,鼠標(biāo)就不能產(chǎn)生時(shí)鐘信號(hào)和發(fā)送數(shù)據(jù)?在兩個(gè)方向的傳輸中,時(shí)鐘信號(hào)都是由鼠標(biāo)產(chǎn)生,即主機(jī)不產(chǎn)生通信時(shí)鐘信號(hào)?如果主機(jī)要發(fā)送數(shù)據(jù),它必須控制鼠標(biāo)
2、產(chǎn)生時(shí)鐘信號(hào)?方法如下:主機(jī)首先下拉時(shí)鐘線至少100 ps抑制通信,然后再下拉數(shù)據(jù)線,最后釋放時(shí)鐘線?通過這一時(shí)序控制鼠標(biāo)產(chǎn)生時(shí)鐘信號(hào) ?當(dāng)鼠標(biāo)檢測到這個(gè) 時(shí)序狀態(tài),會(huì)在10ms內(nèi)產(chǎn)生時(shí)鐘信號(hào)?如圖3中A時(shí)序段?主機(jī)和鼠標(biāo)之間,傳輸數(shù)據(jù)幀的時(shí)序如圖2?圖3所示?2.2數(shù)據(jù)包結(jié)構(gòu)在主機(jī)程序中,利用每個(gè)數(shù)據(jù)位的時(shí)鐘脈沖觸發(fā)中斷 ,在中斷例程中實(shí)現(xiàn)數(shù)據(jù)位 的判斷和接收?在實(shí)驗(yàn)過程中,通過合適的編程,能夠正確控制并接收鼠標(biāo)數(shù)據(jù) ?但該方案有一點(diǎn)不足,由 于每個(gè)CLOC睹E要產(chǎn)生一次中斷,中斷頻繁,需要耗用大量的主機(jī)資源?時(shí)仲Lf_Lr_Ln_r_Ln_r_L_njLrLj_uft 停 止 位位ffi
3、2鼠標(biāo)到主機(jī)的傳村酎序ffiffi 3 3射機(jī)到依標(biāo)的修射機(jī)到依標(biāo)的修1 1 時(shí)序時(shí)序PS2鼠標(biāo)的四種工作模式是:Reset模式,當(dāng)鼠標(biāo)上電或主機(jī)發(fā)復(fù)位命令0 xFF給它時(shí)進(jìn)入這種模式;Stream模式鼠標(biāo)的默認(rèn)模式,當(dāng)鼠標(biāo)上電或復(fù)位完成后,自動(dòng)進(jìn)入此模式,鼠標(biāo)基本上以此模式工作;Remote模式,只有在主機(jī)發(fā)送了模式設(shè)置命令0 xF0后,鼠標(biāo)才進(jìn)入這種模式;Wrap模式,這種模式只用位位7 7散攜散攜位位6 6敷敷ffffi i位位3 3數(shù)據(jù)數(shù)據(jù)位位4 4數(shù)推位數(shù)推位3 3 詔位詔位2 2數(shù)數(shù)% %位位數(shù)據(jù)數(shù)據(jù)位位O O起始位起始位_ _J J_ _Z Z應(yīng)應(yīng)答位答位L LJ J停止位停止位
4、校校f ft t位位數(shù)數(shù)贍位贍位T TLJLJL Lftft攜位攜位6 6UL LJ J歌歌ffiffi位位4 4妝妝3 3 L Lfttfttt t位位2 2L LJ JL L歡蛔歡蛔位位U U致?lián)聯(lián)晃籓 O L L起始起始位位忡忡S S時(shí)時(shí)A A于測試鼠標(biāo)與主機(jī)連接是否正確?PS2鼠標(biāo)在工作過程中,會(huì)及時(shí)把它的狀態(tài)數(shù)據(jù)發(fā)送給主機(jī)?發(fā)送的數(shù)據(jù)包格式如表1所示?Bytel中的Bit0?Bit1?Bit2分別表示左?右?中鍵的狀態(tài),狀態(tài)值0表示釋放,1表示按下?Byte2和Byte3分別表示X軸和Y軸方向的移動(dòng)計(jì)量值,是二進(jìn)制補(bǔ)碼值?Byte4的低四位表示滾輪的移動(dòng)計(jì)量值,也是二進(jìn)制補(bǔ)碼值,
5、高四位作為擴(kuò)展符號(hào)位 ?這種數(shù)據(jù)包由帶滾輪的三鍵三維鼠標(biāo)產(chǎn)生?若是不帶滾輪的三鍵鼠標(biāo),產(chǎn)生的數(shù)據(jù)包沒有Byte4其余的相同?KI R稱發(fā)遇的裁椎包臨人稱發(fā)遇的裁椎包臨人一.PS2鼠標(biāo)鍵盤協(xié)議PC鍵盤可以有6腳的mini-DIN或5腳的DIN連接器如果你的鍵盤是6腳的mini-DIN而你的計(jì)算機(jī)是5腳的DIN或者相反這兩類連接器可以用上面提到的適配器來兼容具有6腳mini-DIN的鍵盤通常被叫做PS2鍵盤而那些有5腳DIN叫做AT設(shè)備XT鍵盤也使用5腳DIN但它們非常古老并且多 年前就不生產(chǎn)了所有現(xiàn)代的為PC建造的鍵盤不是PS2,AT就是USB的這篇文章不適用于USB設(shè)備它們使用了 一種完全不同
6、的接口。 每種連接器的引腳定義如下所示在剛才提到連接器上有四個(gè)有趣的管腳電源地5V數(shù)據(jù)和時(shí)鐘host計(jì)算機(jī)提供5V并且鍵盤/鼠標(biāo)的地連接到host的電源地上數(shù)據(jù)和時(shí)鐘都是集電極開路的這就意味著它們通常保持高電平而且很容 易下拉到地邏輯0任何你連接到PS/2鼠標(biāo)鍵盤或host的設(shè)備在時(shí)鐘和數(shù)據(jù)線上要PS2技術(shù)參考 著Adam Chapweske譯Roy Show第4頁共4頁02-11-22發(fā)布有一個(gè)大的上拉電阻置0就把線拉低置1就讓線上浮成高電平參考圖1中數(shù)據(jù)和時(shí)鐘線的一般接口結(jié)構(gòu)注意如果你打算使用象PIC這樣的微控制器由于它們的I/O管腳是雙向的你可以跳過晶體管和緩沖門并且通用同一個(gè)管腳進(jìn)行輸
7、入和輸出在 這種組態(tài)情況下要設(shè)置管腳為輸入就寫入1使得電阻上拉線上的電平要改變管腳為輸出就寫入0到那個(gè)管腳把線路下拉到地。)PS/2鼠標(biāo)和鍵盤履行一種雙向同步串行協(xié)議。換句話說每次數(shù)據(jù)線上發(fā)送一位數(shù)據(jù)并且每在時(shí)鐘線上發(fā)一個(gè)脈沖就被讀入。鍵盤/鼠標(biāo)可以發(fā)送數(shù)據(jù)到主機(jī),而主機(jī)也可以發(fā)送數(shù)據(jù)到設(shè)備,但主機(jī)總是在總線上有優(yōu)先權(quán),它可以在任何時(shí)候抑制來自于鍵盤/鼠標(biāo)的通訊,只要把時(shí)鐘拉低即可。從鍵盤/鼠標(biāo)發(fā)送到主機(jī)的數(shù)據(jù)在時(shí)鐘信號(hào)的下降沿當(dāng)時(shí)鐘從高變到低的時(shí)候被讀取從主機(jī)發(fā)送 到鍵盤/鼠標(biāo)的數(shù)據(jù)在上升沿(當(dāng)時(shí)鐘從低變到高的時(shí)候)被讀??;不管通訊的方向怎樣鍵盤/鼠標(biāo)總是產(chǎn)生時(shí)鐘信號(hào)如果主機(jī)要發(fā)送數(shù)據(jù)它必須
8、首先告訴設(shè)備開始產(chǎn)生時(shí)鐘信號(hào)這個(gè)過程在下一章節(jié)中被描 述)。最大的時(shí)鐘頻率是33kHz,而且大多數(shù)設(shè)備工作在10 20kHz。如果你要制作一個(gè)PS/2設(shè)備。我推薦你把頻率控制在15kHz左右。這就意味著時(shí)鐘應(yīng)該是高40微秒低40微秒。所有數(shù)據(jù)安排在字節(jié)中,每個(gè)字節(jié)為一幀,包含了11-12個(gè)位。這些位的含義如下:如果數(shù)據(jù)位中包含偶數(shù)個(gè)1,校驗(yàn)位就會(huì)置1;如果數(shù)據(jù)位中包含奇數(shù)個(gè)1 ,校驗(yàn)位就會(huì)置0。數(shù)據(jù)位中1的個(gè)數(shù)加上校驗(yàn)位總為奇數(shù)(這就是奇校驗(yàn))這是用來錯(cuò)誤檢測。當(dāng)主機(jī)發(fā)送數(shù)據(jù)給鍵盤/鼠標(biāo)時(shí),設(shè)備回送一個(gè)握手信號(hào)來應(yīng)答數(shù)據(jù)包已經(jīng)收到。這個(gè)位不會(huì)出現(xiàn)在設(shè)備發(fā)送數(shù)據(jù)到主機(jī)的過程中。設(shè)備到主機(jī)的通訊過
9、程:數(shù)據(jù)和時(shí)鐘線都是集電極開路結(jié)構(gòu)(正常保持高電平)。當(dāng)鍵盤或鼠標(biāo)等待發(fā)送數(shù)據(jù)時(shí),它首先檢查時(shí)鐘以確認(rèn)它是否是高電平。如果不是,那么是主機(jī)抑制了通訊,設(shè)備必須緩沖任何要發(fā)送的數(shù)據(jù)直到重新獲得總線的控制權(quán)(鍵盤有16字節(jié)的緩沖區(qū)而鼠標(biāo)的緩沖區(qū)僅存儲(chǔ)最后一個(gè)要發(fā)送的數(shù)據(jù)包) 如果時(shí)鐘線是高電平,設(shè)備就可以開始傳送數(shù)據(jù)。如我在上一節(jié)提及的,鍵盤和鼠標(biāo)使用一種每幀包含1 start bit. This is always 0.8 data bits, least significant bit first.1 parity bit (odd parity).1 stop bit. This is al
10、ways 1.每位在時(shí)鐘的下降沿被主機(jī)讀入,如圖時(shí)鐘頻率為10 16.7kHz。從時(shí)鐘脈沖的上升沿到一個(gè)數(shù)據(jù)轉(zhuǎn)變的時(shí)間至少要有5微秒。數(shù)據(jù)變化到時(shí)鐘脈沖的下降沿的時(shí)間至少要有5微秒并且不大于25微秒。這個(gè)定時(shí)非常重要你應(yīng)該嚴(yán)格遵循它。主機(jī)可以在第11個(gè)時(shí)鐘脈沖(停止位)之前把線拉低,導(dǎo)致設(shè)備放棄發(fā)送當(dāng)前字節(jié)(這是非常罕 見的)。在停止位發(fā)送后,設(shè)備在發(fā)送下個(gè)包前至少應(yīng)該等待50毫秒。這將給主機(jī)時(shí)間當(dāng)它處理接收到的字節(jié)時(shí)抑制發(fā)送(主機(jī)在收到每個(gè)包時(shí),通常自動(dòng)做這個(gè))。在主機(jī)釋放抑制后,設(shè)備至少應(yīng)該在發(fā)送任何數(shù)據(jù)前等50毫秒。 我推薦下面的過程發(fā)送一個(gè)單一字節(jié)從仿真鍵盤/鼠標(biāo)到主機(jī):1)等待Clo
11、ck = high2)延時(shí)50微秒3)Clock s仍舊為high? No到第1步4)Data = high?No放棄(并且從主機(jī)讀取字節(jié))5)延遲20毫秒(=40微秒to the time Clock is pulled low in sending the start bit.)6)輸出起始位(0) /在發(fā)送所有這些位的每一位后7)輸出8個(gè)數(shù)據(jù)位測試時(shí)鐘確認(rèn)主機(jī)是否把它拉低了8)輸出校驗(yàn)位/這說明主機(jī)要放棄這次10)延遲30毫秒(=50微秒from the tim傳送9)輸出停止位(1) e Clock is released in sending the stop bit)按如下的過程發(fā)
12、送單個(gè)位:1)Set/Reset Data2)Delay 20 microseconds3)Bring Clock low4)Delay 40 microseconds5)Release Clock6)Delay 20 microseconds1)設(shè)置/復(fù)位數(shù)據(jù)2)延遲20微秒3)把時(shí)鐘拉低4)延遲40微秒5)釋放時(shí)鐘11位的串行協(xié)議。這些位含義是:1個(gè)起始位總是為08個(gè)數(shù)據(jù)位低位在前1個(gè)校驗(yàn)位奇校驗(yàn)1個(gè)停止位總是為12和3所示6)延遲20微秒主機(jī)到設(shè)備的通訊被發(fā)送的包有點(diǎn)不同于主機(jī)到設(shè)備通訊過程。首先,PS2設(shè)備總是產(chǎn)生時(shí)鐘信號(hào)。如果主機(jī)要發(fā)送數(shù)據(jù),它必須首先把時(shí)鐘和數(shù)據(jù)線設(shè)置為請求 發(fā)送狀
13、態(tài),如下示:通過下拉時(shí)鐘線至少100微秒來抑制通訊。通過下拉數(shù)據(jù)線來應(yīng)用請求發(fā)送,然后釋放時(shí)鐘。設(shè)備應(yīng)該在不超過10毫秒的間隔內(nèi)就要檢查這個(gè)狀態(tài)。當(dāng)設(shè)備檢測到這個(gè)狀態(tài),它將開始產(chǎn)生 時(shí)鐘信號(hào),并且時(shí)鐘脈沖標(biāo)記下輸入八個(gè)數(shù)據(jù)位和一個(gè)停止位。主機(jī)僅當(dāng)時(shí)鐘線為低的時(shí)候改變數(shù)據(jù)線,而數(shù)據(jù)在時(shí)鐘脈沖的上升沿被鎖存。這在發(fā)生在設(shè)備到主機(jī)通訊的過程中正好相反。在停止位發(fā)送后,設(shè)備要應(yīng)答接收到的字節(jié),就把數(shù)據(jù)線拉低并產(chǎn)生最后一個(gè)時(shí)鐘脈沖。如果主 機(jī)在第11個(gè)時(shí)鐘脈沖后不釋放數(shù)據(jù)線,設(shè)備將繼續(xù)產(chǎn)生時(shí)鐘脈沖直到數(shù)據(jù)線被釋放(然后設(shè)備將產(chǎn)生 一個(gè)錯(cuò)誤)。主機(jī)可以在第11個(gè)時(shí)鐘脈沖(應(yīng)答位)前中止一次傳送,只要下拉時(shí)
14、鐘線至少100微秒。要使得這個(gè)過程易于理解,主機(jī)必須按下面的步驟發(fā)送數(shù)據(jù)到PS2設(shè)備:1)把時(shí)鐘線拉低至少100微秒2)把數(shù)據(jù)線拉低3)釋放數(shù)據(jù)線4)等待設(shè)備把時(shí)鐘線拉低5)設(shè)置/復(fù)位數(shù)據(jù)線發(fā)送第一個(gè)數(shù)據(jù)位6)等待設(shè)備把時(shí)鐘拉高7)等待設(shè)備把時(shí)鐘拉低8)重復(fù)5-7步發(fā)送剩下的7個(gè)數(shù)據(jù)位和校驗(yàn)位9)釋放數(shù)據(jù)線10)等待設(shè)備把數(shù)據(jù)線拉低11)等待設(shè)備把時(shí)鐘線拉低12)等待設(shè)備釋放數(shù)據(jù)線和時(shí)鐘線圖3用圖形表示圖4以單獨(dú)的時(shí)序表示了由主機(jī)產(chǎn)生的信號(hào)。及由PS2設(shè)備產(chǎn)生的信號(hào)。注意應(yīng)答 位時(shí)序的改變-數(shù)據(jù)改變發(fā)生在時(shí)鐘線為高的時(shí)候(不同于其它11位是當(dāng)它為低的時(shí)候)。圖4描述了兩個(gè)重要的定時(shí)條件:a和b
15、。a在主機(jī)最初把書記現(xiàn)拉低后,設(shè)備開始產(chǎn)生時(shí)鐘脈沖的時(shí)間,必須步大于15ms ; b數(shù)據(jù)包被發(fā)送的時(shí)間必須不大于2ms。如果這兩個(gè)條件不滿足,主機(jī)將產(chǎn)生一個(gè)錯(cuò)誤。在包收到后,主機(jī)為了處理數(shù)據(jù)立刻把時(shí)鐘線拉低來抑制通訊。如果主機(jī)發(fā)送的命令要求有一個(gè)回應(yīng),這個(gè)回應(yīng)必須在書籍釋放時(shí)鐘線后20ms之內(nèi)被收到。如果沒有收到,則主機(jī)產(chǎn)生一個(gè)錯(cuò)誤。在設(shè)備到主機(jī)通訊的情況中,時(shí)鐘改變后的5微秒內(nèi)不應(yīng)該發(fā)生數(shù)據(jù)改變的情況。如果呢要仿真一個(gè)鼠標(biāo)或鍵盤,我推薦你按如下的過程從主機(jī)讀入數(shù)據(jù);在你的主程序中,至少每10毫秒檢測數(shù)據(jù)線是否為低。如果數(shù)據(jù)線已被主機(jī)拉低,則從主機(jī)讀取一個(gè)字節(jié)。1)等待時(shí)鐘線為高2)數(shù)據(jù)線仍然
16、為低嗎 不-有錯(cuò)誤發(fā)生;放棄。3)讀入8個(gè)數(shù)據(jù)位/在讀入這些位后4)讀入校驗(yàn)位測試時(shí)鐘線數(shù)否被主機(jī)拉低5)讀入停止位/這就意味著放棄這次傳送6)數(shù)據(jù)線仍舊為0嗎?是保持時(shí)鐘直到數(shù)據(jù)=1然后產(chǎn)生一個(gè)錯(cuò)誤7)輸出應(yīng)答位8)檢查校驗(yàn)位如果校驗(yàn)位不正確則產(chǎn)生一個(gè)錯(cuò)誤9)延退45微秒(給主機(jī)時(shí)間抑制下次的傳送)按如下次序讀取每位(8個(gè)數(shù)據(jù)位檢驗(yàn)位和停止位)1)延退20微秒2)把時(shí)鐘拉低3)延退40微秒4)釋放時(shí)鐘5)延退20微秒7)讀數(shù)據(jù)線按如下次序發(fā)送應(yīng)答位:1)延退15微秒2)把數(shù)據(jù)線拉低3)延退5微秒4)把時(shí)鐘線拉低5)延退40微秒6)釋放時(shí)鐘線7)延退5微秒8)釋放數(shù)據(jù)線PS2接口協(xié)議及代碼分析
17、(2011-10-14 12:23:40)轉(zhuǎn)載 分類:嵌入式ps2 通信 ps2 協(xié)議.電氣特性2 2DATA Key Datan/c Not connected4 VCC Power , +5 VDC5 CLKClock6! n/cNot connected.數(shù)據(jù)格式1 個(gè)起始位總是邏輯 08 個(gè)數(shù)據(jù)位(LSB)低位在前1 個(gè)奇偶校驗(yàn)位奇校驗(yàn)1 個(gè)停止位總是邏輯 11 個(gè)應(yīng)答位僅用在主機(jī)對(duì)設(shè)備的通訊中表中,如果數(shù)據(jù)位中1的個(gè)數(shù)為偶數(shù),校驗(yàn)位就為1 ;如果數(shù)據(jù)位中1的個(gè)數(shù)為奇數(shù),校驗(yàn)位就為0;總之,數(shù)據(jù)位中1的個(gè)數(shù)加上校驗(yàn)位中1的個(gè)數(shù)總為奇數(shù),因此總進(jìn)行奇校驗(yàn)。ps2設(shè)備的clock和data
18、都是集電極開路的,平時(shí)都是高電平。當(dāng)ps2設(shè)備等待發(fā)送數(shù)據(jù)時(shí),它首先檢 查clock是否為高。如果為低,則認(rèn)為PC抑制了通訊,此時(shí)它緩沖數(shù)據(jù)直到獲得總線的控制權(quán)。如果clock為高電平,ps2則開始向PC發(fā)送數(shù)據(jù)。 一般都是由ps2設(shè)備產(chǎn)生時(shí)鐘信號(hào)。發(fā)送按幀格式。數(shù)據(jù)位在clock為高電平時(shí)準(zhǔn)備好,在clock下降沿被PC讀入。數(shù)據(jù)從鍵盤/鼠標(biāo)發(fā)送到主機(jī)或從主機(jī)發(fā)送到鍵盤/鼠標(biāo),時(shí)鐘都是PS2設(shè)備產(chǎn)生.主機(jī)對(duì)時(shí)鐘控制有優(yōu)先權(quán),即主機(jī)想發(fā)送控制指令給PS2設(shè)備時(shí),可以拉低時(shí)鐘線至少100MS,然后再下拉數(shù)據(jù)線,最后釋放時(shí)鐘線為高。PS2設(shè)備的時(shí)鐘線和數(shù)據(jù)線都是集電極開路的,容易實(shí)現(xiàn)拉低電平。PC
19、在時(shí)鐘的下降沿讀取數(shù)據(jù).PS: ps2協(xié)議是現(xiàn)在大多數(shù)鼠標(biāo),鍵盤與PC通訊的標(biāo)準(zhǔn)協(xié)議,鼠標(biāo)的通訊更為簡單些,只是傳送的數(shù)據(jù)內(nèi)容不一樣而已。三.數(shù)據(jù)發(fā)送時(shí)序KB DAT|EIN m | m | m | 皿皿 | | 口口 s |煬in | p i間間KR DAT | U pii) DI | 02L | LM | 皿皿 | | UB | 5 | F T | |仆仆) )| |鍵盤接口時(shí)序(a)鍵盤發(fā)送時(shí)序;(b)鍵盤接收時(shí)序從PS/2向P C機(jī)發(fā)送一個(gè)字節(jié)可按照下面的步驟進(jìn)行:(1)檢測時(shí)鐘線電平,如果時(shí)鐘線為低,則延時(shí)5 0(is ;(2 )檢測判斷時(shí)鐘信號(hào)是否為高,為高,則向下執(zhí)行,為低,則轉(zhuǎn)
20、到(1 );(3 )檢測數(shù)據(jù)線是否為高,如果為高則繼續(xù)執(zhí)行,如果為低,則放棄發(fā)送(此時(shí)P C機(jī)在向P S/2設(shè)備發(fā)送數(shù)據(jù),所以PS/2設(shè)備要轉(zhuǎn)移到接收程序處接收數(shù)據(jù));(4 )延時(shí)2 0監(jiān)(如果此時(shí)正在發(fā)送起始位,則應(yīng)延時(shí)4 0 ps);(5)輸出起始位(0)到數(shù)據(jù)線上。這里要注意的是:在送出每一位后都要檢測時(shí)鐘線,以確保P C機(jī)沒有抑制P S/2設(shè)備,如果有則中止發(fā)送;(6)輸出8個(gè)數(shù)據(jù)位到數(shù)據(jù)線上;(7)輸出校驗(yàn)位;(8)輸出停止位(1 );(9)延時(shí)3 0芟(如果在發(fā)送停止位時(shí)釋放時(shí)鐘信號(hào)則應(yīng)延時(shí)5 0監(jiān));通過以下步驟可發(fā)送單個(gè)位:(1 )準(zhǔn)備數(shù)據(jù)位(將需要發(fā)送的數(shù)據(jù)位放到數(shù)據(jù)線上);
21、(2)延時(shí)2 0芟;(3 )把時(shí)鐘線拉低;(4 )延時(shí)4 0 (is ;(5 )釋放時(shí)鐘線;(6 )延時(shí)2 0 (is oPS/2設(shè)備從P C機(jī)接收一個(gè)字節(jié)由于P S/2設(shè)備能提供串行同步時(shí)鐘,因此,如果PC機(jī)發(fā)送數(shù)據(jù),則PC機(jī)要先把時(shí)鐘線和數(shù)據(jù)線置為請求發(fā)送的狀態(tài)。PC機(jī)通過下拉時(shí)鐘線大于1 0 0ps來抑制通訊,并且通過下拉數(shù)據(jù)線發(fā)出請求發(fā)送數(shù)據(jù)的信號(hào), 然后釋放時(shí)鐘。當(dāng)PS/2設(shè)備檢測到需要接收的數(shù)據(jù)時(shí), 它會(huì)產(chǎn)生時(shí)鐘信 號(hào)并記錄下面8個(gè)數(shù)據(jù)位和一個(gè)停止位。 主機(jī)此時(shí)在時(shí)鐘線變?yōu)榈蜁r(shí)準(zhǔn)備數(shù)據(jù)到數(shù)據(jù)線,并在時(shí)鐘上升沿鎖存數(shù)據(jù)。而PS/2設(shè)備則要配合PC機(jī)才能讀到準(zhǔn)確的數(shù)據(jù)。具體連接步驟如下
22、:(1 )等待時(shí)鐘線為高電平。(2)判斷數(shù)據(jù)線是否為低,為高則錯(cuò)誤退出,否則繼續(xù)執(zhí)行。(3)讀地址線上的數(shù)據(jù)內(nèi)容,共8個(gè)b it,每讀完一個(gè)位,都應(yīng)檢測時(shí)鐘線是否被P C機(jī)拉 低,如果被拉低則要中止接收。(4)讀地址線上的校驗(yàn)位內(nèi)容,1個(gè)bit。(5 )讀停止位。(6)如果數(shù)據(jù)線上為0(即還是低電平),P S/2設(shè)備繼續(xù)產(chǎn)生時(shí)鐘,直到接收到1且產(chǎn)生 出錯(cuò)信號(hào)為止(因?yàn)橥V刮皇?,如果PS/2設(shè)備沒有讀到停止位,則表明此次傳輸出錯(cuò))。(7輸出應(yīng)答位。(8)檢測奇偶校驗(yàn)位,如果校驗(yàn)失敗,則產(chǎn)生錯(cuò)誤信號(hào)以表明此次傳輸出現(xiàn)錯(cuò)誤。(9 )延時(shí)4 5芟,以便P C機(jī)進(jìn)行下一次傳輸。讀數(shù)據(jù)線的步驟如下:(1
23、 )延時(shí)2 0tis ;(2 )把時(shí)鐘線拉低(3 )延時(shí)4 0(4 )釋放時(shí)鐘線(5 )延時(shí)2 0(6 )讀數(shù)據(jù)線。下面的步驟可用于發(fā)出應(yīng)答位;(1 )延時(shí)15 s ; ( 2 )把數(shù)據(jù)線拉低;(3 )延時(shí)5芟;(4 )把時(shí)鐘線拉低;(5 )延時(shí)4 0膏;(6 )釋放時(shí)鐘線;(7 )延時(shí)5膏;(8 )釋放數(shù)據(jù)線。四.鍵盤返回值介紹:鍵盤的處理器如果發(fā)現(xiàn)有鍵被按下或釋放將發(fā)送掃描碼的信息包到計(jì)算機(jī)。掃描碼有兩種不同的類型:通碼和斷碼。當(dāng)一個(gè)鍵被按下就發(fā)送通碼,當(dāng)一個(gè)鍵被釋放就發(fā)送斷碼。每個(gè)按鍵被分配了唯一的通碼和斷碼。這樣主機(jī)通過查找唯一的掃描碼就可以測定是哪個(gè)按鍵。每個(gè)鍵一整套的通斷碼組成了掃
24、描碼集。有三套標(biāo)準(zhǔn)的掃描碼集:分別是第一套,第二套和第三套。所有現(xiàn)代的鍵盤默認(rèn)使用第二套掃描碼。雖然多數(shù)第二套通碼都只有一個(gè)字節(jié)寬,但也有少數(shù)擴(kuò)展按鍵的通碼是兩字節(jié)或四字節(jié)寬。這類的 通碼第一個(gè)字節(jié)總是為E0。正如鍵按下通碼就被發(fā)往計(jì)算機(jī)一樣,只要鍵一釋放斷碼就會(huì)被發(fā)送。每個(gè)鍵都有它自己唯一的通碼和斷碼。幸運(yùn)的是你不用總是通過查表來找出按鍵的斷碼。在通碼和斷碼之間存在著必然的聯(lián)系。多數(shù)第二套斷碼有兩字節(jié)長。它們的第一個(gè)字節(jié)是F0 ,第二個(gè)字節(jié)是這個(gè)鍵的通碼。擴(kuò)展按鍵的斷碼通常有三個(gè)字節(jié),它們前兩個(gè)字節(jié)是E0h,F0h ,最后一個(gè)字節(jié)是這個(gè)按鍵通碼的最后一個(gè)字節(jié)。下面列出了幾個(gè)按鍵的第二套通碼和
25、斷碼:一個(gè)鍵盤發(fā)送值的例子:通碼和斷碼是以什么樣的序列發(fā)送到你的計(jì)算機(jī)從而使得字符G出現(xiàn)在你的字處理軟件里的呢?因?yàn)檫@是一個(gè)大寫字母,需要發(fā)生這樣的事件次序:按下Shift鍵-按下G鍵-釋放G鍵-釋放Shift鍵。 與這些時(shí)間相關(guān)的掃描碼如下:Shift鍵的通碼12h, G鍵的通碼34h , G鍵的斷碼F0h 34h , Shift鍵的斷碼F0h 12h。因此發(fā)送到你的計(jì)算機(jī)的數(shù)據(jù)應(yīng)該是:12h12h 34h34h F0hF0h 34h34h F0hF0h 12h12h五:第二套掃描碼:101 102和104鍵的鍵盤2345Right Ctrl E0 14E0 F0 141F0 2EF0 09
26、E0 F0 74F0 1CF0 214EF0 4EHOMEE0 6C E0 F0 6CF0 23550 55PG UPE0 7D E0 F0 7D24F0 245DF0 5DDELETEE0 71 E0 F0 712B3433424B3A3144PF0 4D2D1B2C3C2A1D223545161E252E363D3EF0 2BF0 34F0 33F0 43F0 3BF0 42F0 4BF0 3AF0 31F0 440 15F0 2DF0 1BF0 2CF0 3CF0 2AF0 1DF0 22F0 35F0 1AF0 45F0 16F0 1E0 26F0 25F0 2EF0 36F0 3DF
27、0 3E6SPACEF0 66ENDE0 69 E0 F0 69290 29PG DNE0 7A E0 F0 7ATABCAPSL SHFTL CTRLL GUIALT0D581214E0 1F11R SHFT 59CTRL E0 14R GUIR ALTAPPSENTERESCF1F2F3F4F5F6F7F8F10F11F12PRNTSCRNE0 27E0 11E0 2F5A760506040C030B830A097807E0 12E0 7CSCROLL 7EPAUSEACPI掃描碼:F0 0DF0 58F0 12F0 14E0 F0 1FF0 11F0 59E0 F0 14E0 F0 27E0 F0 1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度木材砍伐與林業(yè)產(chǎn)業(yè)結(jié)構(gòu)調(diào)整合作合同
- 二零二五年度航空航天發(fā)動(dòng)機(jī)采購合同終止及售后服務(wù)保障函
- 2025年度汽車租賃合同電子版車輛租賃退租流程
- 二零二五年度船舶保險(xiǎn)代理與運(yùn)輸合同
- 2025年度生物質(zhì)顆粒生物質(zhì)能源項(xiàng)目環(huán)境影響評(píng)估合同
- 二零二五年度智能制造業(yè)勞動(dòng)合同特性分析
- 二零二五版擔(dān)保合同:第八章?lián):贤娠L(fēng)險(xiǎn)防范手冊3篇
- 臨時(shí)用電供應(yīng)合同樣本版B版
- 2025年重點(diǎn)學(xué)科教授引進(jìn)與聘任合同
- 2025年度長租公寓出售與租賃服務(wù)合同書(二零二五版)4篇
- 機(jī)電安裝工程安全培訓(xùn)
- 洗浴部前臺(tái)收銀員崗位職責(zé)
- 2024年輔警考試公基常識(shí)300題(附解析)
- GB/T 43650-2024野生動(dòng)物及其制品DNA物種鑒定技術(shù)規(guī)程
- 暴發(fā)性心肌炎查房
- 工程質(zhì)保金返還審批單
- 【可行性報(bào)告】2023年電動(dòng)自行車項(xiàng)目可行性研究分析報(bào)告
- 五月天歌詞全集
- 商品退換貨申請表模板
- 實(shí)習(xí)單位鑒定表(模板)
- 數(shù)字媒體應(yīng)用技術(shù)專業(yè)調(diào)研方案
評(píng)論
0/150
提交評(píng)論