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

          新聞中心

          EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 基于FPGA的可鍵盤控制計數(shù)電路的設(shè)計與實現(xiàn)

          基于FPGA的可鍵盤控制計數(shù)電路的設(shè)計與實現(xiàn)

          作者: 時間:2011-11-11 來源:網(wǎng)絡(luò) 收藏

          摘要:介紹一種基于(Field Programmable Gate Array)現(xiàn)場可編程門陣列的可的計數(shù),顯示電路的實現(xiàn)方法。應(yīng)用VHDL語言(高速集成電路硬件描述語言)完成了3x4矩陣開關(guān)的掃描電路,可預(yù)置數(shù)的BCD碼及4位數(shù)碼管動態(tài)掃描電路的描述。通過原理圖輸入方式完成了系統(tǒng)功能的設(shè)計。電路結(jié)構(gòu)簡單,便于擴展,可靠性高,且可移植性強,容易實現(xiàn)。該電路已成功應(yīng)用于測試某脈沖電容質(zhì)量試驗的控制電路中。
          關(guān)鍵詞:;鍵盤掃描;計數(shù);動態(tài)顯示

          做為現(xiàn)代電子設(shè)計技術(shù)的核心器件,成為目前硬件設(shè)計研究的重點。在工業(yè)控制中,計數(shù)顯示基本電路在儀器儀表中得到了廣泛應(yīng)用,而如何根據(jù)需要靈活的設(shè)置計數(shù)范圍,是一個較為復(fù)雜的問題。本文應(yīng)用EDA技術(shù)通過對鍵盤的控制,實現(xiàn)了從0~9999范圍內(nèi)預(yù)置數(shù)可變的計數(shù)顯示電路設(shè)計。與傳統(tǒng)的應(yīng)用單片機控制鍵盤掃描的設(shè)計方法相比,具有集成度高,穩(wěn)定度高,抗噪聲能力強,容錯率低等優(yōu)點。

          1 系統(tǒng)設(shè)計原理及電路圖
          圖1為基于FPGA的預(yù)置數(shù)可控計數(shù)顯示頂層設(shè)計電路原理圖,共由3部分組成:鍵盤掃描控制電路key_board;BCD碼CNT;4位數(shù)碼管動態(tài)掃描顯示電路scan_LED。首先,由鍵盤掃描電路完成對鍵盤的掃描和鍵值的譯碼,當置數(shù)端LOAD為上升沿時,將鍵盤掃描電路讀取的數(shù)據(jù)經(jīng)P3-P0并行置入到計數(shù)器中做為其計數(shù)范圍,計數(shù)器的輸出通過動態(tài)掃描譯碼模塊驅(qū)動4位數(shù)碼管顯示。

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

          a.JPG



          2 VHDL語言的實現(xiàn)
          該設(shè)計采用層次化設(shè)計方法,首先采用VHDL語言完成了對各子模塊電路的描述,然后分別將其生成符號元件,通過原理圖編輯完成了系統(tǒng)的設(shè)計。
          2.1 鍵盤掃描電路
          2.1.1 行列式鍵盤工作原理
          圖2為3x4行列式鍵盤原理圖,行線是KEY_HANG[2..0],列線是KEY_LIE[3..0],形成12個交叉點,每個交叉點連接一個按鍵。12個按鍵分別對應(yīng)數(shù)字0~9和清零鍵A,確定鍵B。當沒有按鍵按下時,所有交叉點斷開,由于列線的上拉電阻作用,使其保持高電平。如果行線KEY_HANG[2..0]被設(shè)置為低電平,當有按鍵按下時,該鍵所在的行線和列線被按鍵短路,那么相應(yīng)得列線就變?yōu)榈碗娖健?/p>

          b.JPG


          上一頁 1 2 3 下一頁

          關(guān)鍵詞: FPGA 鍵盤控制 計數(shù)電路

          評論


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