一種嵌入式PC非標準鍵盤的設計_第1頁
一種嵌入式PC非標準鍵盤的設計_第2頁
一種嵌入式PC非標準鍵盤的設計_第3頁
一種嵌入式PC非標準鍵盤的設計_第4頁
全文預覽已結束

下載本文檔

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

文檔簡介

1、    一種嵌入式PC非標準鍵盤的設計摘要:實現了一種全集成可變帶寬中頻寬帶低通濾波器,討論分析了跨導放大器-電容(OTAC)連續時間型濾波器的結構、設計和具體實現,使用外部可編程電路對所設計濾波器帶寬進行控制,并利用ADS軟件進行電路設計和仿真驗證。仿真結果表明,該濾波器帶寬的可調范圍為126 MHz,阻帶抑制率大于35 dB,帶內波紋小于05 dB,采用18 V電源,TSMC 018m CMOS工藝庫仿真,功耗小于21 mW,頻響曲線接近理想狀態。關鍵詞:Butte摘要:隨著嵌入式系統的飛速發展,嵌入式PC得到了廣泛應用。標準的PC鍵盤由于體積大,按

2、鍵多等原因在多數情況下不能滿足要求。本文在介紹PS/2通信協議的基礎上,利用AT89C52實現了一種PC非標準鍵盤的設計。給出了其完整的硬件實現電路圖和主要的軟件開發方法。該鍵盤具有結構簡單、工作穩定、便于擴展等特點,并已在某型航空圖像回傳系統中得到具體應用。關鍵詞:鍵盤,PS/2協議,單片機,嵌入式系統    隨著嵌入式系統的飛速發展,嵌入式PC在工業控制、測量儀器等領域得到了廣泛應用,如ADVANTECH公司的PC/104、 AMD公司的E86等。它們除了具有PC的功能外,還提供了功能強大的各種標準接口,如:平板/VGA顯示器控制接口、光驅接口、以太網接口、R

3、S-232/422/485接口、PC/AT鍵盤接口等。這就為新產品開發的標準化、模塊化提供了方便,可大大縮小研發周期,降低研制成本。由于嵌入式PC具有標準PC鍵盤接口,也就是說,可以用標準的PC/AT鍵盤來對嵌入式PC進行操作與控制。然而,在很多實際應用中,需要用到鍵的數量和類型有很大的差異,并希望鍵盤具有體積小巧、便于布放等特點。因此,希望能夠設計一種小巧、靈活的PC非標準鍵盤,來滿足用戶需求。    本文根據課題要求,設計了一種由AT89C52實現的PC非標準鍵盤。下面對其硬件設計、軟件實現及PS/2鍵盤通信協議分別進行介紹。1硬件設計  

4、  圖1為該鍵盤電路原理圖,由ATMEL公司的微控制器AT89C52、邏輯系統(包括看門狗復位電路X25045和晶體振蕩電路)、矩陣鍵盤三部分組成。AT89C52單片機主要完成鍵盤掃描,確定鍵盤閉合斷開的信息,并發送鍵碼和同步時鐘到工控機;邏輯系統提供起振信號及看門狗定時復位功能,防止出現死機;矩陣鍵盤為4×4的行列式鍵盤,當有鍵按下時產生低電平觸發信號,便于單片機檢測有效的按鍵操作。該鍵盤由4×4=16個按鍵組成,其中行線為P0.4P0.7,列線為P0.3P0.0。P3.0為鍵碼數據輸出,P3.1為同步時鐘,分別輸出到嵌入式PC的PS/2端口;+5V電源由主機提

5、供。    由于AT89C52的IO端口為32個,除看門狗電路的輸入輸出端CS、SI、SO、SCK、以及鍵碼數據輸出端Data和時鐘輸出端Clock外,還剩26個可用端口,這樣,其最大可獨立響應13× 13=169個鍵的輸入,不僅可滿足標準鍵盤的多鍵需求,也可滿足工控機常用控制鍵的要求。X25045為看門狗電路,它實時接收來自AT89C52的CS信號,并自動判斷兩次信號的間隔時間。當時間間隔到達設定時間時,其RST輸出端保持低電平;反之,其RST輸出端輸出高電平,AT89C52被復位。此外增加了發光二極管LED,用來指示鍵盤的工作狀態。圖1鍵盤電路原理圖

6、    AT89C52微控制器具有如下特點1:    (1)具有8K字節可編程閃存;    (2)256×8字節內部RAM;    (3)32根可編程I/O線;    (4)3個16位定時計數器;    (5)8個中斷源;    (6)可編程串行UART通道2 PS/2協議    標準鍵盤和工控機或者嵌入式PC之間是按照PS/2協議進行通信的,因此

7、設計的非標準鍵盤也必須嚴格按照該協議,這樣才能為系統正確識別和作出響應。PS/2鍵盤接口標準由IBM公司于1987年推出,該標準采用了6腳miniDIN連接器(見圖2)。該連接器在封裝上更加小巧,仍然用雙向串行通信協議,并且提供有可選擇的第三套鍵盤掃描碼集,同時支持l7個主機到鍵盤的命令。圖2  PS/2端口示意圖    PS/2接口的6個引腳只有4個有定義,它們分別是1腳Data(數據腳)、5腳Clock(時鐘腳)、3腳Ground(電源地)、4腳Vcc(+5V電源);2腳和6腳為未定義保留端口。PS/2鍵盤與PC機的物理連接,只要保證這4根線一一對應

8、就可以了。鍵盤靠PC的PS/2端口提供+5V電源,因此不需要專門電源。另外時鐘腳Clock和數據腳Data都是集電極開路的,需外接上拉電阻,上拉電阻的阻值一般可取1K10K,這和51系列單片機IO口的特性是一致的。    PS/2通信協議是一種雙向同步串行通信協議。通信的兩端通過Clock(時鐘腳)同步,并通過Data(數據腳)交換數據。PS/2的數據是按幀進行傳輸的,每一數據幀包含l112個位,其中鍵盤發送的數據幀為11位。1個起始位(低電平)、8個數據位(低位在前,高位在后)、1個奇偶校驗位(采用奇校驗)、1個停止位(高電平)。在鍵碼傳送的同時,微控制器還傳送

9、1個鍵碼時鐘同步信號,用于同步鍵碼數據的接收,鍵碼中每個數據位的傳送發生在鍵盤時鐘的下降沿。最大的時鐘頻率是33kHz 而且大多數設備工作在1020kHz,推薦頻率在15kHz左右2。    當有鍵按下時,鍵盤發送一個接通碼給主機,接通碼值在007F之間。當按鍵松開后,鍵盤首先發送斷開碼標志F0H,然后再發送該鍵的接通碼。如果按鍵按下0.5秒仍沒斷開,則以每秒6個鍵碼的速率發送到主機。Clock和Data必須為高電平時,才能傳送鍵碼數據。鍵碼的每一位傳送發生在時鐘的下降沿,在時鐘高電平期間發生變化。    圖3為接通鍵碼為2C,即按下

10、t鍵時,鍵碼和時鐘的傳送時序。圖3 鍵碼2C傳輸時的通信時序   3軟件實現    軟件包括定時0中斷子程序、定時1中斷子程序、主程序等。其中,定時器0中斷子程序用于定時(如50ms)檢測單片機工作狀態,實現看門狗功能,完成單片機的自動復位,防止軟件出現死機現象。定時器1中斷子程序用于設定時鐘高低電平的持續時間,即確定時鐘的頻率,這里采用的時鐘頻率為16 kHz。主程序循環檢測有無鍵被按下、判斷哪個鍵被按下并確定對應的鍵碼,然后確定是否輸出鍵碼和同步時鐘信號。如有鍵被按下,則輸出相應的鍵碼同時并輸出同步時鐘信號。然后再掃描按鍵是否斷開

11、,若斷開則發送斷開掃描碼和時鐘信號。主程序流程如圖4所示。圖4 主程序流程圖        這里值得注意的是:一是鍵盤斷開標志碼0F0H和接通碼之間應該有一定的延時(幾十毫秒即可);二是鍵盤數據位應該在時鐘下降沿到來之前就應該準備好,即應該有十幾微秒的提前量。4結束語    經過實際測試,該鍵盤工作穩定,能夠對嵌入式PC進行正確的操作和輸入控制,并且已在某型航空圖像回傳系統中得到具體應用。本文設計的非標準鍵盤具有結構簡單、靈活性強、易于編程、體積小、成本低的特點,并可根據用戶需要隨意設計和布放,對使用工控機的各種測試與控制儀器具有通用性,只要稍加改動就可應用于其它嵌入式應用的場合。    本文作者的創新點:根據課題任務要求,用單片機AT89C52實現了對嵌入式工控PC的非標準鍵盤輸入,進而控制整個系統的運行。該鍵盤實現簡

溫馨提示

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

評論

0/150

提交評論