电工、电子、电拖技能实训设备
立式通用电工、电子、电拖实训设备
电子技能及生产工艺实训设备
高性能电工、电子、电拖、电气实训设备
维修电工实训考核设备
供配电技术实训装置
农村通信系统线路实训装置
工厂电气控制供电实训装置
PLC可编程实训装置
PLC可编程实验室设备
家用电器实训设备
PLC控制液压与气动实训装置
机电一体化实训设备
变频调速、工业自动化实训装置
数控机床电气维修实训考核设备
普通机床实训设备
机床电气技能培训及考核装置
钳工实验台、焊铆工实训设备
智能楼宇实训设备
工程制图实验室设备
财会模拟实验室设备
化工过程控制实训装置
风能、太阳能发电实训装置
煤矿安全技术培训装置
轨道交通实训系统设备
船舶、智能数码产品实训装置
机械工程技能实训设备
工程机械模拟教学仪
汽车模拟驾驶器
汽车发动机实训设备
汽车全车电器实验台
汽车空调系统实验台
汽车实物解剖模型
汽车底盘实训设备
汽车变速器实训台
汽车发动机拆装及翻转架设备
汽车示教板
汽车程控电教板
透明汽车教学模型
汽车整车综合实训系统
汽车驾校培训设备
新能源汽车教学实训装置
汽车实验箱
立式通用电工、电子、电拖实验室成套设备
电工、模电、数电、电气控制实验室设备
高级电工、电子、电机实验室设备
电工、电子、电气、电机实验室设备
数控技术实验室设备
家用电器电子实验室设备
单片机微机实验装置
传感器综合实验台
空调制冷制热实验室设备
多媒体数字语音设备
透明仿真教学电梯模型
理化生实验室设备
环境工程实验装置
流体力学实验室设备
热工类教学实验装置
化工原理实验装置
化工单元操作实训装置
制药工程实验装置
采暖通风和空调制冷实验装置
化学工程化学工艺实验装置
教学实验箱
机械示教陈列柜
机械多媒体仿真设计综合实验装置
机械教学模型
中学理科教学仪器
机械教学挂图
机械试验设备
心肺复苏模拟人
教学类软件
新闻中心主页 > 技术文章 >

浅谈矩阵键盘的设计


发布时间:2024-05-31
一、  实验目的
1、了解普通4×4键盘扫描的原理。
2、进一步加深七段码管显示过程的理解。
3、了解对输入/输出端口的定义方法。
二、   实验原理
实现键盘有两种方案:一是采用现有的一些芯片实现键盘扫描;再就是用软件实现键盘扫描。作为一个嵌入系统设计人员,总是会关心产品成本。目前有很多芯片可以用来实现键盘扫描,但是键盘扫描的软件实现方法有助于缩减一个系统的重复开发成本,且只需要很少的CPU 开销。嵌入式控制器的功能能强,可以充分利用这一资源,这里就介绍一下软键盘的实现方案。
简单键盘电路
图4-12-1 简单键盘电路
通常在一个键盘中使用了一个瞬时接触开关,并且用如图4-12-1 所示的简单电路,微处理器可以容易地检测到闭合。当开关打开时,通过处理器的I/O 口的一个上拉电阻提供逻辑1;当开关闭合时,处理器的/IO 口的输入将被拉低得到逻辑0。可遗憾的是,开关并不完善,因为当它们被按下或者被释放时,并不能够产生一个明确的1 或者0。尽管触点可能看起来稳定而且很快地闭合,但与微处理器快速的运行速度相比,这种动作是比较慢的。当触点闭合时,其弹起就像一个球。弹起效果将产生如图4-12-2 所示的好几个脉冲。弹起的持续时间通常将 维持在5ms∼30ms 之间。如果需要多个键,则可以将每个开关连接到微处理器上它自己的输入端口。然而,当开关的数目增加时,这种方法将很快使用完所有的输入端口。
按键抖动
图4-12-2 按键抖动
键盘上阵列这些开关最有效的方法(当需要5 个以上的键时)就形成了一个如图4-12-3 所示的二维矩阵。当行和列的数目一样多时,也就是方型的矩阵,将产生一个最优化的布列方式(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:接七段码显示区的Sel0、Sel1和Sel2。
A、B、C、D、E、F、G:接七段码显示区的A、B、C、D、E、F和G
8、用下载电缆通过JTAG口将对应的sof文件加载到FPGA中。观察实验结果是否与自己的编程思想一致。
五、   实验结果与现象
以设计的参考示例为例,当设计文件加载到目标器件后,确认信号连接线已正确连接,按下矩阵键盘的某一个键,则在数码管上显示对应的这个键标识的键值,当再按下第二个键的时候前一个键的键值在数码管上左移一位。
六、   实验报告
1、绘出不同的键值时的数码管的仿真波形,并作说明。
2、根据自己的思路,找一找还有没有其它方法进行键盘的扫描显示。并画出流程图。
1、 将实验原理、设计过程、编译仿真波形和分析结果、硬件测试结果记录下来。


返回顶部 ↑

网站首页 | 关于我们 | 产品展示 | 新闻中心 | 售后服务 | 技术文章 | 产品导航 | 联系我们
相关产品: 支付宝, 百度, 点击这里给我发消息 点击这里给我发消息
友情链接: 财会模拟实验室设备 ,
邮箱:285729858@qq.com 沪ICP备16028912号-1