EDA课程设计--键盘控制电路的设计.doc
文本预览下载声明
键盘控制电路的设计
摘 要 矩阵键盘控制接口电路是最基本的输入电路,在当今社会的各个领域起着不可替代的作用。例如计算机的键盘、手机的键盘等各式电子产品都广泛应用了该技术。在课程设计中,系统开发平台为Windows XP,利用Quartus Ⅱ自行设计并修改的键盘输入显示电路是通过VHDL语言和图形混合编辑的。程序和电路图通过调试、运行和波形仿真后,初步达到了设计目标,并且在经过具体的数字实验箱验证后,实现了键码的对应显示。
关键词: 键盘控制;Quartus Ⅱ;VHDL;图形编辑
1 引 言
本课程设计是一个简易的利用键盘来控制电路的实验,先是对该4*4键盘进行编码即一个键盘位置对应一个数值或符号的电路。本设计只是对键盘进行十六进制数的编码,有防抖动的功能,其主要目的是为了避免按键时键盘产生的按键抖动效应。最后是一个按键检测的程序,当有按键时则输出对应的键码值。
1.1课程设计的目的
通过课程设计,使我们对QuartusII和Max+PlusⅡ这两个软件有所了解,在电脑上对实际电路应用的设计和仿真更简便、精确且易于实现。同时在经过对键盘控制电路在电脑上仿真再到数字实验箱上的实现这一过程,一方面让我更深入的理解到电路设计的方法,掌握了平常我们按一个键码后再显示,这一现象的全过程。另一方面增强了我的动手能力,真正的将书本上的理论知识和实践联系在一起了。
1.2课程设计的要求
这一次课程设计首先要求我们对EDA技术有一定的了解,并掌握QuartusII平台的一些基本使用方法,以及VHDL语言的基本语法结构和编程思路。其次了解键盘控制电路的设计原理,分析程序或图形中的各输入,输出以及中间信号的逻辑关系。为避免误操作信号的发生,还必须有弹跳消除的电路。最后在实验箱上验证程序时,要求数码管和发光二极管能显示与编码的相同数值。
1.3设计平台
QuartusII平台的,所以在这设计之前有必要对QuartusII和EDA技术进行初步的了解。 Altera Quartus II 作为一种可编程逻辑的设计环境, 由于其强大的设计能力和直观易用的接口,越来越受到数字系统设计者的欢迎。系统设计者现在能够用Quartus II软件评估HardCopy Stratix器件的性能和功耗,相应地进行最大吞吐量设计。Altera的Quartus II可编程逻辑软件属于第四代PLD开发平台。该平台与Cadence、ExemplarLogic、MentorGraphics、Synopsys和Synplicity等EDA供应商的开发工具相兼容。EDA技术是在电子CAD技术基础上发展起来的计算机软件系统,是指以计算机为工作平台,融合了应用电子技术、计算机技术、信息处理及智能化技术的最新成果,进行电子产品的自动设计。利用EDA工具,电子设计师可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到设计出IC版图或PCB版图的整个过程的计算机上自动处理完成。现在对EDA的概念或范畴用得很宽。包括在机械、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域,都有EDA的应用。目前EDA技术已在各大公司、企事业
2 设计原理
2.1设计键盘控制电路的意义
2.2分频器原理
COUNT模块的输出Q[3..0]是提供行扫描信号的。在没有按键按下时,此时使能信号EN为高电平,行扫描输出信号的变化顺序为0001→0010→0100→1000→0001依次周而复始。当有按键按下时,此时的使能信号EN为低电平,行扫描输出信号停止扫描,并锁存当前的行扫描值,例如按下第二行的按键,那么Q[3..0]=0010。在本课程设计中,所有系统时钟脉冲或键盘扫描频率都是在CLK的上升沿触发。
2. 键盘编码原理
键盘编码模块的主要功能是确定输入按键的键值,对输入按键的行信号Q[3‥0]和列信号I4[3‥0]的当前组合值进行判断来确定输入按键的键值。例如当Q[3‥0]=0100,I4[3‥0]=1000时,则第三行、第四列输入的按键有效,在KEYVALUE模块中将16个键分别定义了不同的键值。而它的输出DATAOUT将作为COUNTRL模块的输入,使得在按键和释放键盘这期间只识别一个键码值。
2.4按键抖动消除原理
按键时通常会造成持续时间不大于 10ms 的信号抖动,这种抖动使系统无法正确识别按键操作次数。该弹跳消除电路使用的脉冲信号频率是1024Hz的,使得在这读数期间无重复统计按键。其输入是编码后的输出通过该模块后,而DATA输出作为按键检测电路的中间信号。
COUNTRL模块主要是用为实现按键的消抖。进行延时后,判断是否有按键按下,要确保对按键值的提取处于一段稳定时间
显示全部