<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 用AT89C2051設(shè)計(jì)的PC/AT鍵盤

          用AT89C2051設(shè)計(jì)的PC/AT鍵盤

          作者: 時(shí)間:2012-10-16 來源:網(wǎng)絡(luò) 收藏

          在工業(yè)控制、測量儀器等領(lǐng)域,已大量使用嵌入式,如 ADVANTECH公司的/104、AMD公司的E86嵌入式等。它們除具有 PC的功能外,還提供了功能強(qiáng)大的各種標(biāo)準(zhǔn)接口,如:平板 /VGA顯示器控制接口、光驅(qū)接口、以太網(wǎng)接口、RS-232/422/485 接口、PC/接口等 。這就為新產(chǎn)品開發(fā)的標(biāo)準(zhǔn)化、模塊化提供了方便,可大大縮小研發(fā)周期,降 低研制成本,快速進(jìn)入市場。由于嵌入式PC具有標(biāo)準(zhǔn)PC/AT 鍵盤接口,也就是說,可以用標(biāo)準(zhǔn)的PC/來對嵌入式 PC進(jìn)行操作與控制。但是,在很多實(shí)際應(yīng)用中,由于一般只用到某幾個(gè)固定的鍵,并希望鍵盤 具有體積小巧、便于布放等特點(diǎn),為此,希望能夠設(shè)計(jì)一種小巧、靈活的 PC/,來滿足各種需求。本文介紹一種由設(shè)計(jì)實(shí)現(xiàn)的 PC/AT鍵盤。

          1 PC/AT鍵盤的特點(diǎn)

          PC/AT鍵盤由單片微控制器、鍵盤矩陣和支持邏輯三部分組成。鍵盤微控制器的主要功能是掃描 鍵盤,以得到有效的閉合鍵,一旦鍵被按下或放開,就為系統(tǒng)板產(chǎn)生鍵代碼,將鍵代碼以串行格式 傳遞到系統(tǒng)板,同時(shí)產(chǎn)生將鍵代碼轉(zhuǎn)換為供系統(tǒng)板使用的并行數(shù)據(jù)所需的時(shí)鐘信號(hào)。 AT鍵盤使用接通,其值在00~7F之間,以串行數(shù)據(jù)格式傳遞 到系統(tǒng)板;每發(fā)送一個(gè)包含11個(gè)數(shù)據(jù)位,即1個(gè)起始位、 8個(gè)數(shù)據(jù)位(低位在前,高位在后)、1個(gè)奇偶校驗(yàn)位、1個(gè)停止位。在傳送的同時(shí), 微控制器還傳送1個(gè)鍵碼時(shí)鐘同步信號(hào),用于同步鍵碼數(shù)據(jù)的接收。鍵碼中每個(gè)數(shù)據(jù)位的傳送發(fā)生在 鍵盤時(shí)鐘的下降沿,時(shí)鐘的波特率為16 Kb/s。圖1為接通鍵碼是2C,即按下t鍵時(shí),鍵碼的傳送格式。

          用AT89C2051設(shè)計(jì)的PC/AT鍵盤
          對于PC/AT鍵盤,如果按下鍵0.5 s之前放開該鍵,則鍵盤電路產(chǎn)生一個(gè)斷開鍵碼,將這個(gè)鍵碼也 以串行數(shù)據(jù)的格式傳送出去。AT鍵盤的斷開鍵碼為F0,在斷開鍵碼之后再跟接通鍵碼。其中斷開鍵 碼通知BIOS鍵盤例程,按下的鍵序列功能已結(jié)束,鍵已被放開。如果在鍵按下 0.5 s之后仍未放開該鍵,則鍵盤電路產(chǎn)生一個(gè)接通鍵代碼(與接通鍵碼 相同),并以每秒6個(gè)鍵碼的速率(每166.7 ms一個(gè)鍵碼)進(jìn)行傳送,此過程直到鍵盤電路檢測到斷開代碼為止。常用鍵的鍵碼如表 1所列。
          用AT89C2051設(shè)計(jì)的PC/AT鍵盤

          2 硬件設(shè)計(jì)

          用AT89C2051設(shè)計(jì)的PC/AT鍵盤
          鍵盤電路如圖2所示,由ATMEL公司的微控制器 、MAXIM 公司的看門狗自動(dòng)復(fù)位電路MAX813L及鍵盤矩陣組成。由于AT 89C2051的可用端口為16個(gè),除復(fù)位端RES、看門狗信號(hào)輸出 端WDI、鍵碼數(shù)據(jù)輸出端TXD和時(shí)鐘輸出端CLK外,還剩12個(gè)可用端口,這樣,其最大可獨(dú)立響 應(yīng)6×6=36個(gè)鍵的輸入,可滿足工控機(jī)常用控制鍵的要求。 MAX813L為看門狗電路,它實(shí)時(shí)接收來自的WDI信號(hào),并自動(dòng)判斷兩次 WDI信號(hào)的間隔時(shí)間。當(dāng)時(shí)間間隔小于1.6 s時(shí),其RST輸出端保持低電平;當(dāng)時(shí)間間隔大于1.6 s時(shí),其RST輸出端輸出高電平,AT89C2051被復(fù)位。AT89C2051 具有如下特點(diǎn):

          ◇ 具有2K字節(jié)可編程閃存;
          ◇ 128×8bit 內(nèi)部RAM;
          ◇ 15根可編程I/O線;
          ◇ 2個(gè)16位定時(shí)/計(jì)數(shù)器;
          ◇ 6個(gè)中斷源;
          ◇ 可編程串行UART。

          3 軟件設(shè)計(jì)

          軟件包括定時(shí)0中斷子程序、定時(shí)1中斷子程序、主程序等。其中,定時(shí)器0定時(shí)中斷子程序用于定時(shí)檢測有無鍵被按下、判斷哪個(gè)鍵被按下并確定對應(yīng)的鍵碼。定時(shí)器 1定時(shí)中斷子程序用于確定輸出鍵碼和時(shí)鐘信號(hào)的波特率,并定時(shí)輸出看門狗 信號(hào),用于防止軟件出現(xiàn)死機(jī)現(xiàn)象。主程序根據(jù)有無鍵被按下標(biāo)志,確定是否輸出鍵碼和同步時(shí)鐘信號(hào)。如有鍵被按下,則調(diào)入由定時(shí)中斷子程序所確定的鍵碼,輸出相應(yīng)的鍵碼并同時(shí)輸出同步時(shí)鐘信號(hào)。主程序流程如圖3所示。
          用AT89C2051設(shè)計(jì)的PC/AT鍵盤

          4 設(shè)計(jì)實(shí)例

          本文介紹的PC/AT鍵盤具有結(jié)構(gòu)簡單、設(shè)計(jì)靈活性強(qiáng)、易于編程、體積小、成本低的特點(diǎn),并可 根據(jù)用戶需要隨意設(shè)計(jì)和布放,對使用工控機(jī)的各種測試與控制儀器具有通用性。

          參考文獻(xiàn)

          1 ATMEL公司. AT89C2051 Data Sheet
          2 MAXIM公司. MAX813L Data Sheet
          3 馬忠梅. 單片機(jī)的C語言應(yīng)用程序設(shè)計(jì). 北京:北京航空航天大學(xué)出版社,1999



          關(guān)鍵詞: AT89C2051 PC AT鍵盤 鍵碼

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();