欢迎来到天天文库
浏览记录
ID:57910846
大小:1.59 MB
页数:4页
时间:2020-04-03
《矩阵键盘设计.docx》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、电子系统设计实验报告题目:4×4矩阵键盘编码器设计作者姓名指导教师专业班级自动化1401学院信息工程学院提交日期2016年11月29日4×4矩阵键盘编码器设计姓名专业班级自动化14011.设计题目设计一4×4矩阵键盘编码器,其示意图如图1-1所示。Y0~Y3是列扫描信号,X0~X3为读取信号。D0~D3输出键值,且DAV获得一个由高到低的跳变。而KEYCLK为键盘接口时钟信号。图114×4矩阵键盘编码器示意图2.顶层原理图设计根据题目的原理要求,得到一个4×4矩阵键盘的原理框图,如图2-1所示。图214×4矩阵键盘编码器原理图1.键盘扫描电路键盘扫描电路由二进制计数器CNT4A和2
2、线-4线译码器DECODER构成,用于产生键盘列扫描信号Y0~Y3。CNT4A在时钟信号KEYCLK的作用下进行计数,其输出通过译码器DECODER产生4路列扫描信号。2.行值编码器当有键按下时,闭合键所在行输入线变成低电平,行值编码器ENCODER输出2位二进制编码C2、C3,同时KA输出低电平。因为CNT4A的输出C1、C0确定了闭合键处于哪一列,ENCODER的输出C3、C2确定了闭合键处于哪一行,因此,C3~C0实际上就是闭合键的4位键值。3.消抖电路当键闭合时,KA出现抖动,计数器开始频繁清零,直到KA信号稳定为低电平时,计数器开始稳定计数,当计数到达16时,DAV有效。4.
3、键值寄存器键值寄存器用于在DAV的下降沿时刻将4位键值存入寄存器。键盘寄存器有两个作用,一个是起缓冲作用,避免单片机未及时响应时键值数据丢失;二是确保将按键稳定闭合时的键值保存。3、功能的测试与实现为了测试矩阵键盘编码器的功能,设计了如图3-1的实验电路。编码器输出的键值和按键次序通过数码管显示出来。当按键有效时,4位键值通过显示译码器之后再7SLEDA上显示,从而可以验证输出键值是否正确。当键有效时,7SLEDA显示值加1。图314×4矩阵键盘编码器实验电路原理图4、实验结果当按下K10时,数码管显示A,1。A代表按下的是K10,而1代表的是按下了一次按键。结果如图4-1所示。如果
4、按下其他键,则会显示其他键名的数值,而1则会向上累加。图41按下K10数码管显示结果5、个人总结这次实验基本上没有什么难点,唯一的是在软件使用上出现了一些问题。在win7及之上的版本,usb-blaster驱动无法安装。这会导致无法下载程序。解决方案是在网上下载更高版本的驱动,并安装。另外,对于底层代码的编写,看懂并会使用很重要,而不是简单的复制。就像在写7SLEDA上,书上给的代码与实际的数码管接法不同(一个是共阳极一个是共阴极),所以需要在原理图的LED7S后加一个非门,或者将底层编码取反。本次实验学习如何使用FPGA,工程的建立和完善,提高了实际问题中解决的能力。
此文档下载收益归作者所有