EDA实验二 八位七段数码管动态显示电路的设计 下载本文

实验名称 八位七段数码管动态显示电路的设计

一、 实验目的

1、了解数码管的工作原理。

2、学习七段数码管显示译码器的设计。

3、学习Verilog的CASE语句及多层次设计方法。

二、 实验原理

七段数码管是电子开发过程中常用的输出显示设备。在实验系统中使用的是两个四位一体、共阴极型七段数码管。其单个静态数码管如下图4-1所示。

图4-1 静态七段数码管

由于七段数码管公共端连接到GND(共阴极型),当数码管的中的那一个段被输入高电平,则相应的这一段被点亮。反之则不亮。共阳极性的数码管与之相么。四位一体的七段数码管在单个静态数码管的基础上加入了用于选择哪一位数码管的位选信号端口。八个数码管的a、b、c、d、e、f、g、h、dp都连在了一起,8个数码管分别由各自的位选信号来控制,被选通的数码管显示数据,其余关闭。

三、 实验内容

本实验要求完成的任务是在时钟信号的作用下,通过输入的键值在数码管上显示相应的键值。在实验中时,数字时钟选择1KHZ作为扫描时钟,用四个开关做为输入,当四个开关置为一个二进制数时,在数码管上显示其十六进制的值。实验箱中的拨动开关与FPGA的接口电路,以及开关FPGA的管脚连接在实验一中都做了详细说明,这里不在赘述。

数码管显示模块的电路原理如图4-2所示,表4-1是其数码管的输入与FPGA的管脚连接表。

图4-2 数字时钟信号模块电路原理

信号名称 7SEG-A 7SEG-B 7SEG-C 7SEG-D 7SEG-E 7SEG-F 7SEG-G 7SEG-DP 7SEG-SEL0 7SEG-SEL1 7SEG-SEL2 对应FPGA管脚名 G6 G7 H3 H4 H5 H6 J4 L8 G5 G3 F4 说明 七段码管A段输入信号 七段码管B段输入信号 七段码管C段输入信号 七段码管D段输入信号 七段码管E段输入信号 七段码管F段输入信号 七段码管G段输入信号 七段码管dp段输入信号 七段码管位选输入信号 七段码管位选输入信号 七段码管位选输入信号 表4-1 数码管与FPGA的管脚连接表

四、 实验步骤

1、打开QUARTUSII软件,新建一个工程。

2、建完工程之后,再新建一个Verilog File,打开Verilog编辑器对话框。 3、按照实验原理和自己的想法,在VHDL编辑窗口编写Verilog程序,用户可参照光盘中提供的示例程序。

4、编写完Verilog程序后,保存起来。方法同实验一。

5、对自己编写的Verilog程序进行编译并仿真,对程序的错误进行修改。 6、编译仿真无误后,依照拨动开关、数码管与FPGA的管脚连接表(表1-1、

表4-1)或参照附录进行管脚分配。表4-2是示例程序的管脚分配表。分配完成后,再进行全编译一次,以使管脚分配生效。 端口名 CLK KEY0 KEY1 KEY2 KEY3 LEDAG0 LEDAG1 LEDAG2 LEDAG3 LEDAG4 LEDAG5 LEDAG6 DEL0 DEL1 DEL2 使用模块信号 数字信号源 拨动开关K1 拨动开关K3 拨动开关K5 拨动开关K7 数码管A段 数码管B段 数码管C段 数码管D段 数码管E段 数码管F段 数码管G段 位选DEL0 位选DEL1 位选DEL2 对应FPGA管脚 L1 E15 B14 F9 B15 G6 G7 H3 H4 H5 H6 J4 G5 G3 F4 十六进制数据 输出显示 二进制数据输入 时钟为50MHZ 说 明 4-2 端口管脚分配表

7、用下载电缆通过JTAG口将对应的sof文件加载到FPGA中。观察实验结果是否与自己的编程思想一致。

五、 实验现象与结果

以设计的参考示例为例,当设计文件加载到目标器件后,将数字信号源50MHZ的数字时钟分频为1KHZ作为扫描时钟(扫描时钟作用是使8个数码管同时显示),拨动四位开关,使其为一个数值,则八个数码管均显示开关所表示的十六进制的值。

六、 实验报告

1、 绘出仿真波形,并作说明。

2、 明扫描时钟是如何工作的,改变扫描时钟会有什么变化。

3、

实验原理、设计过程、编译仿真波形和分析结果、硬件测试结果记录下来。