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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 一種嵌入式PC非標(biāo)準(zhǔn)鍵盤電路設(shè)計(jì)

          一種嵌入式PC非標(biāo)準(zhǔn)鍵盤電路設(shè)計(jì)

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

            隨著系統(tǒng)的飛速發(fā)展,PC得到了廣泛應(yīng)用。標(biāo)準(zhǔn)的PC鍵盤由于體積大,按鍵多等原因在多數(shù)情況下不能滿足要求。本文在介紹 PS/2通信協(xié)議的基礎(chǔ)上,利用AT89C52實(shí)現(xiàn)了一種PC非標(biāo)準(zhǔn)鍵盤的設(shè)計(jì)。給出了其完整的硬件實(shí)現(xiàn)電路圖和主要的軟件開發(fā)方法。該鍵盤具有結(jié)構(gòu)簡(jiǎn)單、工作穩(wěn)定、便于擴(kuò)展等特點(diǎn),并已在某型航空?qǐng)D像回傳系統(tǒng)中得到具體應(yīng)用。

          本文引用地址:http://www.ex-cimer.com/article/201710/369545.htm

            圖1為該鍵盤電路原理圖,由ATMEL公司的微控制器AT89C52、邏輯系統(tǒng)、矩陣鍵盤三部分組成。AT89C52單片機(jī)主要完成鍵盤掃描,確定鍵盤閉合斷開的信息,并發(fā)送鍵碼和同步時(shí)鐘到工控機(jī);邏輯系統(tǒng)提供起振信號(hào)及看門狗定時(shí)復(fù)位功能,防止出現(xiàn)死機(jī);矩陣鍵盤為4&TImes;4的行列式鍵盤,當(dāng)有鍵按下時(shí)產(chǎn)生低電平觸發(fā)信號(hào),便于單片機(jī)檢測(cè)有效的按鍵操作。該鍵盤由4&TImes;4=16 個(gè)按鍵組成,其中行線為P0.4~P0.7,列線為P0.3~P0.0。P3.0為鍵碼數(shù)據(jù)輸出,P3.1為同步時(shí)鐘,分別輸出到PC的PS/2端口;+5V電源由主機(jī)提供。由于AT89C52的IO端口為32個(gè),除看門狗電路的輸入輸出端CS、SI、SO、SCK、以及鍵碼數(shù)據(jù)輸出端 Data和時(shí)鐘輸出端Clock外,還剩26個(gè)可用端口,這樣,其最大可獨(dú)立響應(yīng)13&TImes; 13=169個(gè)鍵的輸入,不僅可滿足標(biāo)準(zhǔn)鍵盤的多鍵需求,也可滿足工控機(jī)常用控制鍵的要求。X25045為看門狗電路,它實(shí)時(shí)接收來自AT89C52的 CS信號(hào),并自動(dòng)判斷兩次信號(hào)的間隔時(shí)間。當(dāng)時(shí)間間隔到達(dá)設(shè)定時(shí)間時(shí),其RST輸出端保持低電平;反之,其RST輸出端輸出高電平,AT89C52被復(fù)位。此外增加了發(fā)光二極管LED,用來指示鍵盤的工作狀態(tài)。

            

            圖1鍵盤電路原理圖

            AT89C52微控制器具有如下特點(diǎn):(1)具有8K字節(jié)可編程閃存;(2)256&TImes;8字節(jié)內(nèi)部RAM;(3)32根可編程 I/O線;(4)3個(gè)16位定時(shí)計(jì)數(shù)器; (5)8個(gè)中斷源;(6)可編程串行UART通道。



          關(guān)鍵詞: MCU 接口電路 嵌入式

          評(píng)論


          相關(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); })();