课程设计(基于FPGA的数码管十进制显示).doc
文本预览下载声明
中北大学
课 程 设 计 说 明 书
?
?
?
学生姓名: 金博楠 学 号: ?0906024139 学 院: ?电子与计算机科学技术学院 专 业: ?微电子 题 目: 利用键盘控制数码管进行十进制数字显示 ? ?
?
指导教师: 崔永俊 职称: 副教授
?
?
?
?
2012 年 6 月 22 日
目 录
1、课程设计的目的 …………………………………………………………… 1
2、课程设计内容和要求 …………………………………………………… 1
2.1、设计内容 ……………………………………………………………… 1
2.2、设计要求 ……………………………………………………………… 1
3、设计方案及实现情况 …………………………………………………… 1
3.1、设计思路 ……………………………………………………………… 1
3.2、工作原理及框图 ……………………………………………………… 1
3.3、各模块功能描述 ……………………………………………………… 3
3.4、仿真结果 ……………………………………………………………… 9
3.5、试验箱验证情况 ……………………………………………………… 10
4、课程设计总结 …………………………………………………………… 11
5、参考文献 ……………………………………………………………… 12
1、课程设计的目的
1)、学习操作数字电路设计实验开发系统,掌握数码管显示模块的工作原理及应用。
2)、掌握组合逻辑电路、时序逻辑电路的设计方法。
3)、学习掌握可编程器件设计的全过程。
2、课程设计内容和要求
2.1、设计内容
1)、学习掌握键盘控制模块、数码管显示模块的工作原理及应用;
2)、熟练掌握VHDL编程语言,编写键盘控制模块的控制逻辑。
2.2、设计要求
1)、仿真所编写的程序,模拟验证所编写的模块功能;
2)、下载程序到芯片中,硬件验证所设置的功能,能够实现十进制数的显示;
3)、整理设计内容,编写设计说明书。
3、设计方案及实现情况
3.1、设计思路
1)、键盘不断扫描,有按键按下则输出相应信号,并且发出使能信号给处理模块。
2)、处理模块对收到的信号进行判断,决定执行什么操作,对数据进行运算。
3)、对于数字键需要移位显示,功能键要考虑优先级判断,进行倒计时操作时要能对时钟信号分频自减。
4)、专门的程序段用来不断将当前数据各位求出,译码成显示内容输给数据选择模块。
5)、数据选择模块根据扫描电路选择信号将各位数字显示出来。
3.2、工作原理及框图
1、键盘原理
键盘电路网络很像一台微缩的计算机,它拥有自己的处理器和在该处理器之间传输数据的电路,这个电路的很大一部分组成了键矩阵。键矩阵是位于键下方的一种电路网格。在所有的键盘(中,每个电路在每个按键所处的位置点下均处于断开状态。当您按下某个键时,此按键将按下了开关,从而闭合电路,使得少量电流可以通过。开关的机械作用会导致某种振动(称作回弹),处理器可以过滤掉这种振动。如果您按下某键并保持住,则处理器认为您是在反复按下该键。试验箱上的键盘可以看做是8*4的矩阵键盘(虽然外部不是),8行由38译码器选择,所以有外部sel0-2三根线控制扫描。
2、键盘中按键的判断
对于键盘中有无键按下的判断是很重要的,具体判断如下:将全部行线置低电平,然后检测列线的状态。只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与行线相交叉的按键之中。若所有列线均为高电平,则键盘中无键按下。在确认有键按下后,即可进入确定具体闭合键的过程。其方法是:依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。在确定某根行线位置为低电平后,再逐行检测各列线的电平状态。若某列为低,则该列线与低电平的行线交叉处的按键就是闭合的按键。键盘扫描模块在时钟下不断将行置零,扫描列的状态,判断按键。
3、键盘按键对应的编码
Sel2-0 Kin3-0 对应按键 000 1110 0 001 1110 1 010 1110 2 011 1110 3 110 1110 4 111 1110 5 000 1101 6 001 1101 7
Sel2-0 Kin3-0 对应按键 100 1101 8 101 1101 9 110 1011 NEXT 000 1011 LAST 111 1011 ENTER 101 1110 ESC 110 1101 A(+) 111 1101 B(-) 4、数据处理
键盘扫描模块检测到按键按下后,给下级发出使能脉冲,同时将按键信息给数据处理
显示全部