三位数码管实验
三位数码管实验日志及报告
1.日志
1.1 三位数码管(9月9日)
1.1.1操作说明
在实验平台中,按照说明下载quartus II 9.0 web并进行安装。下载USB-blaster驱并安装。将电缆线与PC接口连接,打开quartus II,点击 【Tool——programmer】命令。
单击【Add File】加入【scan_led3.sof】,单击【Hardware setup】按钮,在硬件设备列表里选择【USB_Blaster】并双击。
选择完成后返回上一界面,单击【Start】,进程100%后,观察实验板。
1.1.2现象描述
sof文件刚刚加载完成时,实验板上方的SEL5-7数码管显示字符“0”,并且持续闪烁,熄灭的时间极短。下方的X0和Y7保持闪亮。
分别拨动CLK的第一个开关,第二个开关,第三个开关,数码管闪烁频率加快,同时打开第一个和第二个开关,闪烁频率最慢。
最下方的A7-A4是上方数码管的控制信号,分别控制的数码管字符为:8、4、2、1。
1.2示波器测量位选信号和时钟信号(9月16日)
1.2.1实验截图
1.2.2实验说明
蓝色的是示波器测量的时钟信号,频率为100HZ。时钟信号输出到Y7二极管,三位数码管的轮流显示,只有当该二极管亮时才会发生改变(变为下一个亮)。
黄色的是示波器的位选信号,频率为20HZ。SEL7数码管的位选信号输出到X0二极管,当该二极管亮时,第一位数码管不亮。相反的,当该二极管不亮时,第一位数码管亮。因此,我们FPGA版上的位选信号是低电平有效。
根据示波器图片可得,位选信号都是在时钟信号上升沿发生改变。
2. 报告
2.1实验目的
多位数码管显示电路由显示字符的段选信号和选通数码管的位选信号控制。各位数码管共用8位段选信号的电路结构使得同一时刻选通的所有数码管显示相同的字符。我们要利用Quartus II完成三位数码管显示电路的逻辑设计,通过仿真波形及硬件实验平台验证设计,掌握硬件实验平台的一系列操作方法,明白三位数码管显示电路的逻辑设计。
2.2 设计
2.2.1 模4计数器电路图
模4计数器可记录4个脉冲,以实现控制功能。Quartus II工程设计过程:创建工程文件、电路设计、编译综合、仿真验证、引脚配置、编程下载、硬件验证等。采用74164芯片为设计核心,74164是4位二进制计数器,带同步载入,异步清零。模4计数器采用00 01 10 11递增计数。
2.2.2模4计数器下载现象描述
下载好对应的文件后,实验板上只有分配好的两个二极管引脚发光。且呈现先是两个都不亮-左面不亮右面亮-左面亮右面不亮-两个都亮。用数字可表示(0,0)(0,1)(1,0)(1,1).
还是低电平(“0")。操作较为繁琐。优点是可以清晰地看到二极管的变化,且下载验证更具实践性和真实性。缺点是有些现象通过人眼观察可能并不是很明显,仍有漏洞,且验证速度较慢。
2.3 实现
2.3.1 顶层电路截图
Counter4:模4计数器,接受时钟信号进行计数。模4计数器将值进行累加并输出给2-3译码器和三选一选择器。
Decoder2-3:2-3译码器控制位选信号的输出,接受模4计数器传来的信号,输出数码管的位选信号。
MUX4-3-1: 三路选择器可以同时输入三路数据与模4计数器传来的信号。通过控制3路4位数据的选择输出。
2.3.2 实作截图
2.3.3顶层优化
7449译码器不能编码10-15即a-f。可以通过VHDL语音对其进行重写,对特定的输入产生特定的信号。将手动输入的16个数变成由4位构成的编码,输出对应的7位段选信号。
实验验证结果:
3.总结
通过这一系列实验,大大强化了我的动手能力,熟悉电路板以及芯片的构成。并且真正从硬件、电路这方面开始了解专业知识,了解了VHDL语言的编写、bdf画图的能力、引脚分配、仿真验证、下载验证等。
另外,小组实验的学习方式让我更加懂得与人沟通、交流与合作。取长补短,学有所成的道理在小组合作中体现的淋漓尽致。我们应该在自己不熟悉的领域多多请教他人,不耻下问。
最后,在记忆方法上,我认为还是要多实践。将知识点与实践相结合,才能更好的记忆。