- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
十六进制7段数码显示译码器设计实验报告讲述
实验名称:十六进制7段数码显示译码器设计
实验目的:
设计七段显示译码器
学习Verilog HDL文本文件进行逻辑设计输入;
学习设计仿真工具的使用方法;
工作原理:
7段数码是纯组合电路,通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码,然而数字系统中的数据处理和运算都是二进制的,所以输出表达都是十六进制的,为了满足十六进制数的译码显示,最方便的方法就是利用译码程序在FPGA/CPLD中来实现。例如6-18作为7段译码器,输出信号LED7S的7位分别接图6-17数码管的7个段,高位在左,低位在右。例如当LED7S输出为“1101101”时,数码管的7个段g,f,e,d,c,b,a分别接1,1,0,1,1,0,1;接有高电平的段发亮,于是数码管显示“5”。注意,这里没有考虑表示小数点的发光管,如果要考虑,需要增加段h,例6-18中的LED7S:OUT STD_LOGIC_VECTOR(6 DOWNTO 0)应改为…(7 DOWNTO 0)。
实验内容1:将设计好的VHDL译码器程序在Quartus II上进行编辑、编译、综合、适配、仿真,给出其所有信号的时序仿真波形。
实验步骤:
步骤1:新建一个文件夹击打开vhdl文件;
步骤2:编写源程序并保存
步骤3:新建一个工程及进行工程设置
步骤4:调试程序至无误;
步骤5:接着新建一个VECTOR WAVEFOM文件及展出仿真波形设置
步骤6:输入数据并输出结果(时序仿真图)
步骤7:设置好这个模式
步骤8:生成RTL原理图
步骤9:引脚锁定及源代码
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY DECL7S IS
PORT(A :IN STD_LOGIC_VECTOR(3 DOWNTO 0);
LED7S:OUT STD_LOGIC_VECTOR(6 DOWNTO 0));
END;
ARCHITECTURE one OF DECL7S IS
BEGIN
PROCESS(A)
BEGIN
CASE A IS
WHEN0000= LED7S=0111111;
WHEN0001= LED7S=0000110;
WHEN0010= LED7S=1011011;
WHEN0011= LED7S=1001111;
WHEN0100= LED7S=1100110;
WHEN0101= LED7S=1101101;
WHEN0110= LED7S=1111101;
WHEN0111= LED7S=0000111;
WHEN1000= LED7S=1111111;
WHEN1001= LED7S=1101111;
WHEN1010= LED7S=1110111;
WHEN1011= LED7S=1111100;
WHEN1100= LED7S=0111001;
WHEN1101= LED7S=1011110;
WHEN1110= LED7S=1111001;
WHEN1111= LED7S=1110001;
WHEN OTHERS =NULL;
END CASE;
END PROCESS;
END;
实验内容二:1、硬件测试。
程序不一样,其他步骤相同操作
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY CNT4B IS
PORT (CLK,RST,ENA:IN STD_LOGIC;
OUTY:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);
COUT:OUT STD_LOGIC);
END CNT4B;
ARCHITECTURE behav OF CNT4B IS
BEGIN
PROCESS(CLK,RST,ENA)
VARIABLE Q:STD_LOGIC_VECTOR(3 DOWNTO 0);
BEGIN
IF RST=0 THEN Q:=(OTHERS=0);
ELSIF CLKEVENT AND CLK=1 THEN
IF ENA=1 THEN
Q:=Q+1;
文档评论(0)