新聞中心

EEPW首頁 > 電源與新能源 > 設(shè)計應(yīng)用 > 基于VHDL的矩陣鍵盤及顯示電路設(shè)計

基于VHDL的矩陣鍵盤及顯示電路設(shè)計

作者: 時間:2010-10-15 來源:網(wǎng)絡(luò) 收藏


進(jìn)程P7用于將數(shù)碼管數(shù)值信號data譯碼成為7段數(shù)碼管輸出seg7,進(jìn)程P7的代碼在此不再贅述。值得注意的是,本文設(shè)計的電路在按鍵防抖和數(shù)據(jù)寄存部分設(shè)計得更加簡潔可靠,實現(xiàn)的功能更加強大,其具有如下特點:
(1)為了實現(xiàn)按鍵防抖,本文采用對按鍵狀態(tài)連續(xù)記錄的方式,即在按鍵彈起后連續(xù)8個時鐘周期均無按鍵信號才確認(rèn)1次按鍵有效,從而避免了按鍵按下和彈起過程中的數(shù)據(jù)抖動,相比于使用計數(shù)器從按鍵按下開始計數(shù),直到5~10 ms后才讓按鍵有效的防抖方式,這里設(shè)計的按鍵防抖更加可靠,且可有效避免長時間按下按鍵產(chǎn)生的重復(fù)數(shù)據(jù)輸出,使每次按鍵無論時間長短均可且只會產(chǎn)生1次數(shù)據(jù)輸出。另外,當(dāng)電路采用32 768 Hz以上的時鐘作為系統(tǒng)時鐘時,可以通過增加按鍵狀態(tài)連續(xù)記錄的時鐘周期數(shù),實現(xiàn)可靠的防抖。
(2)該設(shè)計采用一個32位一維數(shù)組temp作為數(shù)據(jù)寄存器,使用移位寄存方式,實現(xiàn)了對連續(xù)8次按鍵數(shù)據(jù)的存儲和調(diào)用,從而可以在8個數(shù)碼管上連續(xù)數(shù)據(jù)。

3 仿真結(jié)果分析
本文設(shè)計的及顯示電路在QliartusⅡ開發(fā)環(huán)境下進(jìn)行了仿真驗證。其中,按鍵防抖功能的仿真波形如圖3所示。仿真結(jié)果分析如下:
(1)clk為時鐘輸入信號,作為系統(tǒng)時鐘;
(2)start為清零控制端,當(dāng)其為高電平時,按鍵有效;
(3)kbrow為列掃輸入信號,kbcol為行掃輸出信號,圖3中對kbrow[1]的輸入波形進(jìn)行設(shè)置,模擬了“A”鍵按下和彈起的過程;
(4)fnq為防抖控制信號,scan為數(shù)碼管地址掃描輸出,seg7為數(shù)碼管顯示輸出。由圖3可知,只有在按鍵彈起后,才有數(shù)據(jù)輸出,從而實現(xiàn)防抖功能。

本文引用地址:http://2s4d.com/article/180408.htm


該設(shè)計的其他功能也可以通過仿真驗證,不再贅述。

4 結(jié)語
本文設(shè)計及顯示電路在QuartusⅡ開發(fā)環(huán)境下進(jìn)行仿真驗證后,下載到湖北眾友科技實業(yè)股份有限公司的ZYllEDAl3BE實驗箱中進(jìn)行了硬件驗證。該實驗箱使用ACEXlK系列EPlK30QC208芯片作為核心芯片。實驗證明,當(dāng)電路的系統(tǒng)時鐘頻率在1 024~32 768 Hz范圍內(nèi)時,電路均可穩(wěn)定運行,按鍵防抖可靠、功能完整。當(dāng)系統(tǒng)時鐘頻率低于1 024 Hz時,需要減少防抖記錄時鐘周期的個數(shù),否則容易錯過短時按鍵動作;當(dāng)系統(tǒng)時鐘頻率高于32 768 Hz時,需要增加防抖記錄時鐘周期的個數(shù),以確保可靠的按鍵防抖。


上一頁 1 2 3 下一頁

評論


相關(guān)推薦

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

關(guān)閉