- 265
- 0
- 约2.71千字
- 约 6页
- 2020-08-28 发布于浙江
- 举报
含异步清零和同步使能的加法计数器
一、 实验目的
1、了解数码管的工作原理。
2、了解二进制计数器的工作原理学习。
3、七段数码管显示译码器的设计
4、学习VHDL 的CASE 语句及多层次设计方法。
二、实验原理
七段数码管是电子开发过程中常用的输出显示设备。在实验系统中使用的是两个四位一体、共阴极型七段数码管。其单个静态数码管如下图4-1 所示。
图4-1 静态七段数码管
由于七段数码管公共端连接到GND ,当数码管的中的那一个段被输入高电平,则相应的这一段被点亮。反之则不亮。共阳极性的数码管与之相么。四位一体的七段数码管在单个静态数码管的基础上加入了用于选择哪一位数码管的位选信号端口。八个数码管的 a、b、c、d、e、f、g、h、dp 都连在了一起,8 个数码管分别由各自的位选信号来控制,被选通的数码管显示数据,其余关闭。
三、 实验内容
本实验要求完成的任务是在时钟信号的作用下,通过使能端和复位信号来完
成加法计数器的计数。实验中时钟信号使用数字时钟源模块的 1HZ 信号,用一位en表示使能端信号,用复位开关 rest 表示复位信号,用 LED 模块的LED1~LED7 来表示计数的二进制结果。实验 LED亮表示对应的位为‘1’ LED
灭表示对应的位为‘0’ 。通过输入不同的值模拟计数器的工作时序,观察计数的结果。实验箱中的拨动开关、与 FPGA 的接口电路,LED 灯与 FPGA 的接口电路以及拨动开关、 LED 与FPGA的管脚连接在实验一中都做了详细说明, 这里不在赘述。
四 实验步骤
1、 打开 QUARTUSII 软件,新建一个工程。
2、 建完工程之后,再新建一个 VHDL File,打开 VHDL 编辑器对话框。
3、在 VHDL 编辑窗口编写 VHDL 程序
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
entity jishuqi is
port( clk ,clr,en : in std_logic;
co:out std_logic;
key : in std_logic_vector(3 downto 0);
ledag : out std_logic_vector(6 downto 0);
del : out std_logic_vector(3 downto 0)
);
end jishuqi;
architecture whbkrc of jishuqi is
signal dount : std_logic_vector(3 downto 0);
begin
process(clk)
begin
if clkevent and clk=1 then
if clr=1then
dount=(others=0);
elsif en=1then
if key=1111then
dount=0000;
co=1;
else
dount=dount+1;
co=0;
end if;
end if;
end if;
del=dount;
end process;
process(key)
begin
case key is
when 0000 = ledag =0111111;
when 0001 = ledag =0000110;
when 0010 = ledag =1011011;
when 0011 = ledag =1001111;
when 0100 = ledag =1100110;
when 0101 = ledag =1101101;
原创力文档

文档评论(0)