国产精品亚洲综合一区在线观看_97人妻碰碰碰爽爽爽_91免费无码区视频_男子亚洲成色av网站

產品圖片

產品分類

技術文章
主頁 > 技術文章 > 矩陣鍵盤接口電路的設計
2024-05-31 06:40

矩陣鍵盤接口電路的設計

矩陣鍵盤接口電路的設計

                                             一、  實驗目的
1、了解普通4×4鍵盤掃描的原理。
2、進一步加深七段碼管顯示過程的理解。
3、了解對輸入/輸出端口的定義方法。
二、   實驗原理
實現鍵盤有兩種方案:一是采用現有的一些芯片實現鍵盤掃描;再就是用軟件實現鍵盤掃描。作為一個嵌入系統(tǒng)設計人員,總是會關心產品成本。目前有很多芯片可以用來實現鍵盤掃描,但是鍵盤掃描的軟件實現方法有助于縮減一個系統(tǒng)的重復開發(fā)成本,且只需要很少的CPU 開銷。嵌入式控制器的功能能強,可以充分利用這一資源,這里就介紹一下軟鍵盤的實現方案。
簡單鍵盤電路
圖4-12-1 簡單鍵盤電路
通常在一個鍵盤中使用了一個瞬時接觸開關,并且用如圖4-12-1 所示的簡單電路,微處理器可以容易地檢測到閉合。當開關打開時,通過處理器的I/O 口的一個上拉電阻提供邏輯1;當開關閉合時,處理器的/IO 口的輸入將被拉低得到邏輯0?蛇z憾的是,開關并不完善,因為當它們被按下或者被釋放時,并不能夠產生一個明確的1 或者0。盡管觸點可能看起來穩(wěn)定而且很快地閉合,但與微處理器快速的運行速度相比,這種動作是比較慢的。當觸點閉合時,其彈起就像一個球。彈起效果將產生如圖4-12-2 所示的好幾個脈沖。彈起的持續(xù)時間通常將 維持在5ms∼30ms 之間。如果需要多個鍵,則可以將每個開關連接到微處理器上它自己的輸入端口。然而,當開關的數目增加時,這種方法將很快使用完所有的輸入端口。
按鍵抖動
圖4-12-2 按鍵抖動
鍵盤上陣列這些開關最有效的方法(當需要5 個以上的鍵時)就形成了一個如圖4-12-3 所示的二維矩陣。當行和列的數目一樣多時,也就是方型的矩陣,將產生一個最優(yōu)化的布列方式(I/O 端被連接的時候)。一個瞬時接觸開關(按鈕)放置在每一行與線一列的交叉點。矩陣所需的鍵的數目顯然根據應用程序而不同。每一行由一個輸出端口的一位驅動,而每一列由一個電阻器上拉且供給輸入端口一位。
矩陣鍵盤
 
 
圖4-12-3 矩陣鍵盤
鍵盤掃描的實現過程如下:對于4×4鍵盤,通常連接為4行、4列,因此要識別按鍵,只需要知道是哪一行和哪一列即可,為了完成這一識別過程,我們的思想是,首先固定輸出4行為高電平,然后輸出4列為低電平,在讀入輸出的4行的值,通常高電平會被低電平拉低,如果讀入的4行均為高電平,那么肯定沒有按鍵按下,否則,如果讀入的4行有一位為低電平,那么對應的該行肯定有一個按鍵按下,這樣便可以獲取到按鍵的行值。同理,獲取列值也是如此,先輸出4列為高電平,然后在輸出4行為低電平,再讀入列值,如果其中有哪一位為低電平,那么肯定對應的那一列有按鍵按下。
獲取到行值和列值以后,組合成一個8位的數據,根據實現不同的編碼在對每個按鍵進行匹配,找到鍵值后在7段碼管顯示。
三、   實驗內容
本實驗要求完成的任務是通過編程實現對4X4矩陣鍵盤按下鍵的鍵值的讀取,并在數碼管上完成一定功能(如移動等)的顯示。
四、     實驗步驟
1、打開QUARTUSII軟件,新建一個工程。
2、建完工程之后,再新建一個VHDL File,打開VHDL編輯器對話框。
3、按照實驗原理和自己的想法,在VHDL編輯窗口編寫VHDL程序,用戶可參照光盤中提供的示例程序。
4、編寫完VHDL程序后,保存起來。方法同實驗一。
5、對自己編寫的VHDL程序進行編譯并仿真,對程序的錯誤進行修改。
6、編譯仿真無誤后,根據用戶自己的要求進行管腳分配。分配完成后,再進行全編譯一次,以使管腳分配生效。
7、根據實驗內容用實驗導線將上面管腳分配的FPGA管腳與對應的模塊連接起來。
如果是調用的本書提供的VHDL代碼,則實驗連線如下:
Clk:FPGA工作時鐘信號,接數字時鐘CLOCK3,并設為1464HZ。
Kr[0:3]:分別接4×4鍵盤部分的R1、R2、R3和R4。
Kc[0:3]:分別接4×4鍵盤部分的C1、C2、C3和C4。
Sa、Sb、Sc:接七段碼顯示區(qū)的Sel0、Sel1和Sel2。
A、B、C、D、E、F、G:接七段碼顯示區(qū)的A、B、C、D、E、F和G
8、用下載電纜通過JTAG口將對應的sof文件加載到FPGA中。觀察實驗結果是否與自己的編程思想一致。
五、   實驗結果與現象
以設計的參考示例為例,當設計文件加載到目標器件后,確認信號連接線已正確連接,按下矩陣鍵盤的某一個鍵,則在數碼管上顯示對應的這個鍵標識的鍵值,當再按下第二個鍵的時候前一個鍵的鍵值在數碼管上左移一位。
六、   實驗報告
1、繪出不同的鍵值時的數碼管的仿真波形,并作說明。
2、根據自己的思路,找一找還有沒有其它方法進行鍵盤的掃描顯示。并畫出流程圖。
1、 將實驗原理、設計過程、編譯仿真波形和分析結果、硬件測試結果記錄下來。