官方论坛
官方淘宝
官方博客
微信公众号
点击联系吴工 点击联系周老师

【案例】矩阵键盘工程

发布时间:2023-04-13   作者:chenzhirong 浏览量:

27  矩阵键盘工程


本章节更多的视频案例讲解可以点击案例编号002800000251学习


 

本工程利用MDY的点拨开发板和MP801开发板(需另购矩阵键盘模块)实现
工程功能:
利用开发板中的数码管和矩阵键盘,实现数码管统计功能。需要用到5个数码管,复位后,数码管从右到左0~1位表示按下的按键序号,2~4表示按下按键次数的统计值。


【点拨开发板】
下面是点拨板的效果图,当按下2号键一次则如下显示。

当按下0号键2次则如下显示。


【MP801开发板】
MP801开发板需要另外购买矩阵键盘,并按如下连接。







下面是本工程基于点拨板的工程文件
 juzhenjianpan_db.rar (8.18 KB, 下载次数: 66,)


下面是基于MP801的工程文件

 juzhenjianpan_mp801.zip (121.51 KB, 下载次数: 88,)

下面是本工程的相关文档
 矩阵键盘顶层说明.pdf (241.84 KB, 下载次数: 75)

 矩阵扫描模块说明.pdf (476.06 KB, 下载次数: 90)

!!!!矩阵键盘代码的的使用方法
http://www.fpgabbs.cn/forum.php?mod=viewthread&tid=973

明德扬矩阵键盘模块的原理图
  MDY矩阵键盘原理图.pdf (39.26 KB, 下载次数: 35)



欢迎大家在此帖子里讨论跟本案例有关的问题
【问题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个。
   拓展阅读