PS2鍵盤鼠標識別器畢業設計PPT.ppt_第1頁
PS2鍵盤鼠標識別器畢業設計PPT.ppt_第2頁
PS2鍵盤鼠標識別器畢業設計PPT.ppt_第3頁
PS2鍵盤鼠標識別器畢業設計PPT.ppt_第4頁
PS2鍵盤鼠標識別器畢業設計PPT.ppt_第5頁
已閱讀5頁,還剩21頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

PS/2鍵盤鼠標識別器,姓 名:趙宏志 班 級:通信092 學 號:0906220242 指導老師:趙立權,目錄,一、課題的目的以及意義 二、PS/2鍵盤、鼠標協議 三、PS/2鍵盤接口設計 四、PS/2鼠標接口設計 五、結論,一、課題的目的以及意義,1.什么是PS/2 PS/2接口是計算機發展到一定階段的一種接口規范,是1987年,IBM推出的鍵盤接口標準,支持雙向串行通訊協議。鍵盤和鼠標上的口是Male(公的),稱為Plug(插頭)。主板上的接口是Female(母的),稱為Socket(插座)。因此,這兩個就分別是Plug Socket,簡稱PS而已,又因為其支持雙向通信協議,故稱為PS/2接口。一般情況下,PS/2接口的鼠標為綠色,鍵盤為紫色。,2.為什么研究PS/2 在單片機系統中,經常使用的鍵盤都是專用鍵盤。此類鍵盤為單獨設計制作的,成本高,使用硬件連接線多,而且可靠性不高,這一狀況在那些要求鍵盤按鍵較多的應用系統中更為突出。與此相比,在PC系統中廣泛應用PS/2鍵盤具有價格低,通用可靠而且連接線少(僅使用2根信號線)的特點,并且可滿足多種系統的要求。因此在單片機系統中應用PS/2鍵盤是一種很好的選擇。,二、PS/2鍵盤鼠標協議,5腳DIN連接器,6腳DIN連接器,1.PS/2的物理接口,2.PS/2鍵盤鼠標協議,從鍵盤/鼠標發送到主機的數據在時鐘信號的下降沿(當時鐘從高變到低的時候)被讀取;從主機發送到鍵盤/鼠標的數據在上升沿(當時鐘從低變到高的時候)被讀取。不管通訊的方向怎樣,鍵盤/鼠標總是產生時鐘信號。如果主機要發送數據,它必須首先告訴設備開始產生時鐘信號(這個過程在下一章節中被描述)最大的時鐘頻率是33KHZ,而且大多數設備工作在10-20KHZ。如果你要制作一個PS/2設備,我推薦你把頻率控制在15KHZ左右。這就意味著時鐘應該是高40微秒低40微秒。 所有數據安排在字節中,每個字節為一幀,包含了11-12個位。這些位的含義如下:,數據幀格式說明,如果數據位中包含偶數個1,校驗位就會置1;如果數據位中包含奇數個1,校驗位就會置0。數據位中1的個數加上校驗位總是為奇數(這就是奇校驗)這是用來進行錯誤檢測的。,3.設備到主機的通訊過程,數據幀格式,設備到主機每位在時鐘的下降沿被主機讀入,4.主機到設備的通訊,被發送的包有點不同于主機到設備通訊過程首先,PS/2設備總是產生時鐘信號。如果主機要發送數據,它必須首先把時鐘和數據線設置為“請求發送”狀態,如下示: 1)通過下拉時鐘線至少100微秒來抑制通訊。 2)通過下拉數據線來應用“請求發送”然后釋放時鐘。 設備應該在不超過10毫秒的間隔內就要檢查這個狀態。當設備檢測到這個狀態,它將開始產生時鐘信號,并且時鐘脈沖標記下輸入八個數據位和一個停止位。主機僅當時鐘線為低的時候改變數據線,而數據在時鐘脈沖的上升沿被鎖存。當發生在設備到主機通訊的過程中時正好相反。,主機到設備的通信,詳細過程如下,三、PS/2鍵盤接口設計,1.怎么確定按鍵 掃描碼:鍵盤的處理器花費很多的時間來掃描或監視按鍵矩陣。如果它發現有鍵被按下,釋放或按住,鍵盤將發送“掃描碼”的信息包到計算機。掃描碼有兩種不同的類型:“通碼”和“斷碼”。當一個鍵被按下或按住就發送通碼;當一個鍵被釋放就發送斷碼。每個按鍵被分配了唯一的通碼和斷碼,這樣主機通過查找唯一的掃描碼就可以測定是哪個按鍵。每個鍵一整套的通斷碼組成了“掃描碼集”。,第二套掃描碼集部分按鍵的通碼斷碼,2.實例說明具體流程 通碼和斷碼是以什么樣的序列發送到你的計算機,使得字符“G”出現在你的字處理軟件里呢?因為這是一個大寫字母,需要發生這樣的事件次序:按下“Shift”鍵按下“G”鍵,釋放“G”鍵,釋放“Shift”鍵。與這些時間相關的掃描碼如下“Shift”鍵的通碼(12h),“G”鍵的通碼(34h),“G”鍵的斷碼(F0h,34h),“Shift”鍵的斷碼(F0h,12h)。因此,發送到你的計算機的數據應該是:12h,34h ,F0h,34h,F0h,12h。,與MCS-51產品指令系統完全兼容;4k字節可重擦寫Flash閃速存儲器;1000次擦寫周期;有10年數據保留時間;全靜態操作:0Hz24MHz;三級加密程序存儲器;1288字節內部RAM;32個可編程I/O口線;2個16位定時/計數器;6個中斷源;可編程串行UART通道;低功耗空閑和掉電模式;片內振蕩器和時鐘電路,3.芯片介紹,P3.0接PS/2數據線;P3.2(INT0)接PS/2時鐘線。因為單片機的P3口內部是帶上拉電阻的,所以PS/2的時鐘線和數據線可以直接與單片機的P.0,P3.2相連接。,4.PS/2鍵盤與單片機的連接圖,5.軟件設計程序,驅動及鍵盤碼的映射和部分按鍵服務程序由中斷服務程序完成,鍵盤鍵值通過全局變量傳遞給主程序,主程序只要查詢標志位,當有鍵按下時,執行相應的程序,在這里,筆者完成了全拼的輸入法程序,并通過了試驗驗證。,四、PS/2鼠標接口設計,1.如何確定鼠標移動并移動多少 標準的PS/2鼠標支持下面的輸入:X(左右)位移,Y(上下)位移,左鍵,中鍵和右鍵。鼠標以一個固定的頻率讀取這些輸入并更新不同的計數器,然后標記出反映的移動和按鍵狀態。標準的鼠標有兩個計數器保持位移的跟蹤:X位移計數器和Y位移計數器。可存放9位的2進制補碼并且每個計數器都有相關的溢出標志。它們的內容連同三個鼠標按鈕的狀態一起以三字節移動數據包的形式發送給主機。位移計數器表示從最后一次位移數據包被送往主機后有位移量發生。當鼠標讀取它的輸入的時候,它記錄按鍵的當前狀態,然后檢查位移。如果位移發生,它就增加(對正位移)或減少(對負位移)X和/或Y位移計數器的值。如果有一個計數器溢出了,就設置相應的溢出標志。,2.位移數據包 標準的PS/2鼠標發送位移和按鍵信息給主機采用如下,位移計數器是一個9位2的補碼整數.它的最高位作為16符號位出現在位移數據包的第一個字節里。這些計數器在鼠標讀取輸入發現有位移時被更新。這些值是自從最后一次發送位移數據包給主機后位移的累計量(即最后一次包發給主機后,位移計數器被復位)。位移計數器可表示的值的范圍是-255到+255.如果超過了范圍,相應的溢出位就被設置,并且在復位前,計數器不會增減。,3.PS/2鼠標工作模式,PS/2鼠標有4種工作模式: 復位模式。當上電或收到復位指令FFH后鼠標即處于此模式。鼠標進行自檢和初始化,再向主機發送 0xFA,0xAA,0x00H。一些參數將恢復到默認值:采樣率為100次/s、非自動速度、流模式、分辨率為4計數/mm、禁止狀態。 流模式。如果有按鍵或滾輪動作,即向系統發送信息,最大發送速率就是可編程的采樣率。 遙控模式。只有在主機發送了模式設置命令0xFO后,鼠標才進入這種模式。 卷繞(Wrap)模式。這種模式只用于測試鼠標與主機連接是否正確,在該模式下鼠標收到什么就返回什么,除非收到退出卷繞指令ECH或復位指令FFH。 正常工作時可以采用遙控模式,定時向鼠標讀取數據。大多數應用系統使用流模式,即程序中的缺省模式,該模式下鼠標有任何動作都將自動報告給主機。,4.鼠標的數據傳送幀過程詳解,1.不論是PS/2鼠標發送信息還是接收指令,都是由PS/2鼠標生成CLK定時信號。 2.數據從PS/2鼠標到系統:只有當CLK和DATA都為1時,PS/2鼠標才會發送數據,每幀數據由 11位組成,每1位都在CLK的下降沿有效,直到CLK的上升沿。 3.數據從系統到PS/2鼠標:當系統需要發送指令至PS/2鼠標時,先由系統強制將CLK為低電平至少100bts,然后從DATA送出起始位0,再釋放CIK。PS/2鼠標檢測到CLK的上升沿和DATA=0,即發 出11個CLK時鐘(頻率約11KHz),系統應該在CLK的每個上升沿之前將指令逐位送到 DATA線 。,數據傳送幀格式,5.單片機和PS/2鼠標的硬件接口,由于PS/2接口中CLK和DATA信號都是雙向的,PS/2鼠標的CLK和DATA采用開漏輸出,并且有內部上拉電阻。單片機和PS/2鼠標的硬件接口非常簡單,以89C51單片機為例,PS/2鼠標的CLK接到 89C51的INT0,INOT作為外部中斷下沿觸發。DATA接到P10或其他

溫馨提示

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

評論

0/150

提交評論