27 矩陣鍵盤工程
本章節更多的視頻案例講解可以點擊案例編號002800000251學習
本工程利用MDY的點撥開發板和MP801開發板(需另購矩陣鍵盤模塊)實現
工程功能:
利用開發板中的數碼管和矩陣鍵盤,實現數碼管統計功能。需要用到5個數碼管,復位后,數碼管從右到左0~1位表示按下的按鍵序號,2~4表示按下按鍵次數的統計值。
【點撥開發板】
下面是點撥板的效果圖,當按下2號鍵一次則如下顯示。

當按下0號鍵2次則如下顯示。

【MP801開發板】
MP801開發板需要另外購買矩陣鍵盤,并按如下連接。



下面是本工程基于點撥板的工程文件
下面是基于MP801的工程文件

下面是本工程的相關文檔
!!!!矩陣鍵盤代碼的的使用方法
http://www.fpgabbs.cn/forum.php?mod=viewthread&tid=973
明德揚矩陣鍵盤模塊的原理圖

歡迎大家在此帖子里討論跟本案例有關的問題
【問題1】row_index 會從0 加到3,整個過程中 key_out 會被三次賦值,最后Key_out的值肯定是{3,key_col_get},但是key_out應該是輸出 按鍵是哪一個 這樣行選不是 都只能是3了嗎?假設我第一行第4個按下 最終Key_out的值就是{3,3} 這樣就不對了 啊。答:key_out這個值還要結合key_vld信號要看的。只有當key_vld有效時,對應的key_out值才是有效。 本設計中,按下一次按鍵,雖然key_out賦值了4次,但是只有其中一次才會產生key_vld。例如,您所舉的例子,當按下第一行第4個按鍵時,只有在第一次時才會產生key_vld,此時對應的值為{0,3},剛好是第一行第4個。