• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 電源與新能源 > 設計應用 > 基于VHDL的矩陣鍵盤及顯示電路設計

    基于VHDL的矩陣鍵盤及顯示電路設計

    作者: 時間:2010-10-15 來源:網絡 收藏

    FPGA/CPLD在數字系統設計中的廣泛應用,影響到了生產生活的各個方面。在FPGA/CPLD的設計開發中,語言作為一種主流的硬件描述語言,具有設計效率高,可靠性好,易讀易懂等諸多優點。作為一種功能強大的FPGA/CPLD數字系統開發環境,Altera公司推出的Quar-tUSⅡ,為設計者提供了一種與結構無關的設計環境,使設計者能方便地進行設計輸入、快速處理和器件編程,為使用語言進行FPGA/-CPLD設計提供了極大的便利。作為一種常用的數據輸入設備,在各種電子設備上有著廣泛的應用,通過7段數碼管將按鍵數值進行也是一種常用的數據方式。在設計機械式控制電路時,按鍵防抖和按鍵數據的譯碼是兩個重要方面。本文在QuartusⅡ開發環境下,采用語言設計了一種按鍵防抖并能連續記錄并顯示8次按鍵數值的及顯示電路。

    1 矩陣鍵盤及顯示思路
    矩陣鍵盤及顯示電路能夠將機械式4×4矩陣鍵盤的按鍵值依次顯示到8個7段數碼管上,每次新的按鍵值顯示在最右端的第O號數碼管上,原有第0~6號數碼管顯示的數值整體左移到第1~7號數碼管上顯示,見圖1。總體而言,矩陣鍵盤及顯示電路的設計可分為4個部分:
    (1)矩陣鍵盤的行及列的掃描控制和譯碼。該設計所使用的鍵盤是通過將列掃描信號作為輸入信號,控制行掃描信號輸出,然后根據行及列的掃描結果進行譯碼。
    (2)機械式按鍵的防抖設計。由于機械式按鍵在按下和彈起的過程中均有5~10 ms的信號抖動時間,在信號抖動時間內無法有效判斷按鍵值,因此按鍵的防抖設計是非常關鍵的,也是該設計的一個重點。
    (3)按鍵數值的移位寄存。由于該設計需要在8個數碼管上依次顯示前后共8次按鍵的數值,因此對已有數據的存儲和調用也是該設計的重點所在。
    (4)數碼管的掃描和譯碼顯示。由于該設計使用了8個數碼管,因此需要對每個數碼管進行掃描控制,并根據按鍵值對每個數碼管進行7段數碼管的譯碼顯示。

    2 矩陣鍵盤及顯示電路的實現
    本文所設計的矩陣鍵盤及顯示電路的電路符號如圖2所示。其中,clk為時鐘信號輸入端(頻率可為1 024~32 768Hz);start為清零控制端;kbrow為列掃描信號輸入端;kbeol為行掃描信號輸出端;scan為數碼管地址掃描信號輸出端;seg7為數碼管顯示信號輸出端。
    限于篇幅,在此不詳述所設計矩陣鍵盤及顯示電路的全部VHDL代碼,只對部分重要代碼段落進行詳細說明。

    本文引用地址:http://www.czjhyjcfj.com/article/180408.htm


    上一頁 1 2 3 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 日土县| 南投市| 礼泉县| 抚州市| 孟州市| 章丘市| 浦城县| 勐海县| 桦甸市| 巴塘县| 乐清市| 九江市| 建始县| 奉节县| 郴州市| 北宁市| 广水市| 邯郸市| 清原| 科尔| 丽水市| 莒南县| 利川市| 安图县| 宁德市| 邵东县| 万盛区| 榆林市| 旬阳县| 绵阳市| 天气| 南部县| 扎赉特旗| 同德县| 大埔区| 上林县| 天镇县| 高雄县| 包头市| 长葛市| 兰考县|