PS-2接口協(xié)議的剖析_第1頁(yè)
PS-2接口協(xié)議的剖析_第2頁(yè)
PS-2接口協(xié)議的剖析_第3頁(yè)
PS-2接口協(xié)議的剖析_第4頁(yè)
PS-2接口協(xié)議的剖析_第5頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 PS/2接口協(xié)議的剖析 論文關(guān)鍵詞:ps/2接口 串行通訊 單片機(jī) 鍵盤(pán) cd4052 論文摘要:文中詳細(xì)介紹了ps/2接口協(xié)議的內(nèi)容、電氣特性和標(biāo)準(zhǔn)鍵盤(pán)的第二套鍵盤(pán)掃描碼集。給出了基于嵌入式系統(tǒng)的ps/2接口的軟、硬件實(shí)現(xiàn)方法,并介紹了工控pc外接雙鍵盤(pán)的解決方案。通過(guò)使用模擬開(kāi)關(guān)cd4052巧妙地解決了工控pc外接雙鍵盤(pán)的沖突問(wèn)題。 接口標(biāo)準(zhǔn)的發(fā)展過(guò)程 隨著計(jì)算機(jī)工業(yè)的發(fā)展,作為計(jì)算機(jī)最常用輸入設(shè)備的鍵盤(pán)也日新月異。年推出了 鍵盤(pán)及其接口標(biāo)準(zhǔn)。該標(biāo)準(zhǔn)定義了鍵,采用腳連接器和簡(jiǎn)單的串行協(xié)議。實(shí)際上,第一套鍵盤(pán)掃描碼集并沒(méi)有主機(jī)到鍵盤(pán)的命令。為此,年推出了鍵盤(pán)接口標(biāo)準(zhǔn)。該標(biāo)準(zhǔn)定義了鍵,采用腳

2、連接器和雙向串行通訊協(xié)議,此協(xié)議依照第二套鍵盤(pán)掃描碼集設(shè)有個(gè)主機(jī)到鍵盤(pán)的命令。到了年,又推出了鍵盤(pán)接口標(biāo)準(zhǔn)。該標(biāo)準(zhǔn)仍舊定義了鍵,但是采用腳連接器,該連接器在封裝上更小巧,仍然用雙向串行通訊協(xié)議并且提供有可選擇的第三套鍵盤(pán)掃描碼集,同時(shí)支持個(gè)主機(jī)到鍵盤(pán)的命令。現(xiàn)在,市面上的鍵盤(pán)都和及鍵盤(pán)兼容,只是功能不同而已。 接口硬件 物理連接器 一般,具有五腳連接器的鍵盤(pán)稱(chēng)之為鍵盤(pán),而具有六腳連接器的鍵盤(pán)則稱(chēng)之為鍵盤(pán)。其實(shí)這兩種連接器都只有四個(gè)腳有意義。lOcalHoSt它們分別是、數(shù)據(jù)腳、和。在鍵盤(pán)與機(jī)的物理連接上只要保證這四根線(xiàn)一一對(duì)應(yīng)就可以了。鍵盤(pán)靠的端口提供電源,另外兩個(gè)腳和數(shù)據(jù)腳都是集電極開(kāi)路的,

3、所以必須接大阻值的上拉電阻。它們平時(shí)保持高電平,有輸出時(shí)才被拉到低電平,之后自動(dòng)上浮到高電平?,F(xiàn)在比較常用的連接器如圖所示。 電氣特性 通訊協(xié)議是一種雙向同步串行通訊協(xié)議。通訊的兩端通過(guò)同步,并通過(guò)交換數(shù)據(jù)。任何一方如果想抑制另外一方通訊時(shí),只需要把拉到低電平。如果是機(jī)和鍵盤(pán)間的通訊,則機(jī)必須做主機(jī),也就是說(shuō),機(jī)可以抑制鍵盤(pán)發(fā)送數(shù)據(jù),而鍵盤(pán)則不會(huì)抑制機(jī)發(fā)送數(shù)據(jù)。一般兩設(shè)備間傳輸數(shù)據(jù)的最大時(shí)鐘頻率是,大多數(shù)設(shè)備工作在。推薦值在左右,也就是說(shuō),高、低電平的持續(xù)時(shí)間都為。每一數(shù)據(jù)幀包含個(gè)位,具體含義如表所列。 表1 數(shù)據(jù)幀格式說(shuō)明 1個(gè)起始位 總是邏輯0 8個(gè)數(shù)據(jù)位 低位在前 1個(gè)奇偶校驗(yàn)位 奇校驗(yàn)

4、 1個(gè)停止位 總是邏輯1 1個(gè)應(yīng)答位 僅用在主機(jī)對(duì)設(shè)備的通訊中 表中,如果數(shù)據(jù)位中的個(gè)數(shù)為偶數(shù),校驗(yàn)位就為;如果數(shù)據(jù)位中的個(gè)數(shù)為奇數(shù),校驗(yàn)位就為;總之,數(shù)據(jù)位中的個(gè)數(shù)加上校驗(yàn)位中的個(gè)數(shù)總為奇數(shù),因此總進(jìn)行奇校驗(yàn)。 設(shè)備和機(jī)的通訊 設(shè)備的和數(shù)據(jù)腳都是集電極開(kāi)路的,平時(shí)都是高電平。當(dāng)設(shè)備等待發(fā)送數(shù)據(jù)時(shí),它首先檢查以確認(rèn)其是否為高電平。如果是低電平,則認(rèn)為是機(jī)抑制了通訊,此時(shí)它必須緩沖需要發(fā)送的數(shù)據(jù)直到重新獲得總線(xiàn)的控制權(quán)。如果為高電平,設(shè)備便開(kāi)始將數(shù)據(jù)發(fā)送到機(jī)。一般都是由設(shè)備產(chǎn)生時(shí)鐘信號(hào)。發(fā)送時(shí)一般都是按照數(shù)據(jù)幀格式順序發(fā)送。其中數(shù)據(jù)位在為高電平時(shí)準(zhǔn)備好,在的下降沿被機(jī)讀入。設(shè)備到機(jī)的通訊時(shí)序如圖

5、所示。 當(dāng)時(shí)鐘頻率為時(shí),從的上升沿到數(shù)據(jù)位轉(zhuǎn)變時(shí)間至少要。數(shù)據(jù)變化到下降沿的時(shí)間至少也有 ,但不能大于 ,這是由通訊協(xié)議的時(shí)序規(guī)定的。如果時(shí)鐘頻率是其它值,參數(shù)的內(nèi)容應(yīng)稍作調(diào)整。 上述討論中傳輸?shù)臄?shù)據(jù)是指對(duì)特定鍵盤(pán)的編碼或者對(duì)特定命令的編碼。一般采用第二套掃描碼集所規(guī)定的碼值來(lái)編碼。其中鍵盤(pán)碼分為通碼和斷碼。通碼是按鍵接通時(shí)所發(fā)送的編碼,用兩位十六進(jìn)制數(shù)來(lái)表示,斷碼通常是按鍵斷開(kāi)時(shí)所發(fā)送的編碼,用四位十六進(jìn)制數(shù)來(lái)表示。 接口的嵌入式軟件編程方法 設(shè)備主要用于產(chǎn)生同步時(shí)鐘信號(hào)和讀寫(xiě)數(shù)據(jù)。 向機(jī)發(fā)送一個(gè)字節(jié) 從向機(jī)發(fā)送一個(gè)字節(jié)可按照下面的步驟進(jìn)行: ()檢測(cè)時(shí)鐘線(xiàn)電平,如果時(shí)鐘線(xiàn)為低,則延時(shí); (

6、)檢測(cè)判斷時(shí)鐘信號(hào)是否為高,為高,則向下執(zhí)行,為低,則轉(zhuǎn)到(); ()檢測(cè)數(shù)據(jù)線(xiàn)是否為高,如果為高則繼續(xù)執(zhí)行,如果為低,則放棄發(fā)送; ()延時(shí); 輸出起始位到數(shù)據(jù)線(xiàn)上。這里要注意的是:在送出每一位后都要檢測(cè)時(shí)鐘線(xiàn),以確保機(jī)沒(méi)有抑制設(shè)備,如果有123下一頁(yè) 則中止發(fā)送; 輸出個(gè)數(shù)據(jù)位到數(shù)據(jù)線(xiàn)上; 輸出校驗(yàn)位; 輸出停止位; 延時(shí); 通過(guò)以下步驟可發(fā)送單個(gè)位: 準(zhǔn)備數(shù)據(jù)位; 延時(shí); 把時(shí)鐘線(xiàn)拉低; 延時(shí); 釋放時(shí)鐘線(xiàn); 延時(shí)。 設(shè)備從機(jī)接收一個(gè)字節(jié) 由于設(shè)備能提供串行同步時(shí)鐘,因此,如果機(jī)發(fā)送數(shù)據(jù),則機(jī)要先把時(shí)鐘線(xiàn)和數(shù)據(jù)線(xiàn)置為請(qǐng)求發(fā)送的狀態(tài)。機(jī)通過(guò)下拉時(shí)鐘線(xiàn)大于來(lái)抑制通訊,并且通過(guò)下拉數(shù)據(jù)線(xiàn)發(fā)出請(qǐng)

7、求發(fā)送數(shù)據(jù)的信號(hào),然后釋放時(shí)鐘。當(dāng)設(shè)備檢測(cè)到需要接收的數(shù)據(jù)時(shí),它會(huì)產(chǎn)生時(shí)鐘信號(hào)并記錄下面?zhèn)€數(shù)據(jù)位和一個(gè)停止位。主機(jī)此時(shí)在時(shí)鐘線(xiàn)變?yōu)榈蜁r(shí)準(zhǔn)備數(shù)據(jù)到數(shù)據(jù)線(xiàn),并在時(shí)鐘上升沿鎖存數(shù)據(jù)。而設(shè)備則要配合機(jī)才能讀到準(zhǔn)確的數(shù)據(jù)。具體連接步驟如下: 等待時(shí)鐘線(xiàn)為高電平。 判斷數(shù)據(jù)線(xiàn)是否為低,為高則錯(cuò)誤退出,否則繼續(xù)執(zhí)行。 讀地址線(xiàn)上的數(shù)據(jù)內(nèi)容,共個(gè),每讀完一個(gè)位,都應(yīng)檢測(cè)時(shí)鐘線(xiàn)是否被機(jī)拉低,如果被拉低則要中止接收。 讀地址線(xiàn)上的校驗(yàn)位內(nèi)容,個(gè)。 讀停止位。 如果數(shù)據(jù)線(xiàn)上為,設(shè)備繼續(xù)產(chǎn)生時(shí)鐘,直到接收到且產(chǎn)生出錯(cuò)信號(hào)為止。 檢測(cè)奇偶校驗(yàn)位,如果校驗(yàn)失敗,則產(chǎn)生錯(cuò)誤信號(hào)以表明此次傳輸出現(xiàn)錯(cuò)誤。 延時(shí) ,以便機(jī)進(jìn)行下

8、一次傳輸。 讀數(shù)據(jù)線(xiàn)的步驟如下: 延時(shí); 把時(shí)鐘線(xiàn)拉低 延時(shí) 釋放時(shí)鐘線(xiàn) 延時(shí) 讀數(shù)據(jù)線(xiàn)。 下面的步驟可用于發(fā)出應(yīng)答位; 延時(shí); 把數(shù)據(jù)線(xiàn)拉低; 延時(shí); 把時(shí)鐘線(xiàn)拉低; 延時(shí); 釋放時(shí)鐘線(xiàn); 延時(shí); 釋放數(shù)據(jù)線(xiàn)。 用于工控機(jī)的雙鍵盤(pán)設(shè)計(jì) 工控機(jī)通常要接標(biāo)準(zhǔn)鍵盤(pán),但是為了方便操作,常常需要外接一個(gè)專(zhuān)用鍵盤(pán)。此實(shí)例介紹了在工控機(jī)到總線(xiàn)上再接入一個(gè)自制專(zhuān)用鍵盤(pán)的應(yīng)用方法。 該設(shè)計(jì)應(yīng)能保證兩個(gè)鍵盤(pán)單獨(dú)工作,而且相互不能影響。因此,不能直接把專(zhuān)用鍵盤(pán)和標(biāo)準(zhǔn)鍵盤(pán)一起接到工控的口。鑒于這種情況,本設(shè)計(jì)使用模擬開(kāi)關(guān)并通過(guò)時(shí)分復(fù)用工控的口,來(lái)使在同一個(gè)時(shí)刻只有一個(gè)鍵盤(pán)有效,從而解決上述問(wèn)題。其硬件原理圖如圖所示

9、。其中口和口用于鍵盤(pán)掃描電路,為數(shù)據(jù)端,為時(shí)鐘端,為模擬開(kāi)關(guān)選通端。由于專(zhuān)用鍵盤(pán)不需要接收工控機(jī)的命令,所以軟件中并不需要寫(xiě)這部分相應(yīng)的代碼。 通過(guò)軟件可在專(zhuān)用鍵盤(pán)復(fù)位后把清,以使模擬開(kāi)關(guān)打開(kāi)相應(yīng)的通道。這時(shí)工控的標(biāo)準(zhǔn)鍵盤(pán)將開(kāi)始工作。標(biāo)準(zhǔn)鍵盤(pán)可以完成工控剛啟動(dòng)時(shí)對(duì)外設(shè)檢測(cè)的應(yīng)答。復(fù)位后的專(zhuān)用鍵盤(pán)不停地掃描有沒(méi)有按鍵,如果有鍵按下則識(shí)別按鍵,并且按照預(yù)先的設(shè)計(jì)進(jìn)行編碼,同時(shí)調(diào)用發(fā)送程序并通過(guò)口發(fā)送到工控。此時(shí)模擬開(kāi)關(guān)關(guān)閉相應(yīng)通道,專(zhuān)用鍵盤(pán)接入工控口的時(shí)鐘線(xiàn)和數(shù)據(jù)線(xiàn)而工作,但標(biāo)準(zhǔn)鍵盤(pán)被模擬開(kāi)關(guān)從的時(shí)鐘線(xiàn)和數(shù)據(jù)線(xiàn)中斷而不工作,這樣,雙鍵盤(pán)便可時(shí)分復(fù)用同一個(gè)工控機(jī)的口。相應(yīng)的發(fā)送子程序如下: 用做數(shù)據(jù)線(xiàn) 用做時(shí)鐘線(xiàn) 用做的端 用口做讀入口 用口做寫(xiě)出口 可以實(shí)現(xiàn)個(gè)自定義鍵 - ,_; _; ; _ (); ; (;) _; (_) _!_; ; ; (!) ; ; () _(); () ; _(); ; _(); ; (;) ; _(); _; (_) ; ; ()(); _(); ; _(); ; ; _(); _; _(); ; _() ; _(); ; _(); ; _(); ; () ; , ;

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論