华佗养生网
您的当前位置:首页计数译码显示电路设计

计数译码显示电路设计

来源:华佗养生网
计数译码显示电路设计

一、实验目的:

1、学习计数译码显示电路的设计; 2、学习VHDL的CASE语句应用方法。 二、实验原理:

7段数码是纯组合电路,通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码,然而数字系统中的数据处理和运算都是2进制的,所以输出表达都是16进制的,为了满足16进制数的译码显示,最方便的方法就是利用译码程序在FPGA/CPLD中来实现。作为7段译码器,输出信号LED7S的7位分别接数码管的7个段,高位在左,低位在右。接有高电平的段发亮。

参考程序:(二) LIBRARY IEEE ;

USE IEEE.STD_LOGIC_11.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

WHEN \"0000\" => LED7S <= \"0111111\" ; WHEN \"0001\" => LED7S <= \"0000110\" ; WHEN \"0010\" => LED7S <= \"1011011\" ; WHEN \"0011\" => LED7S <= \"1001111\" ; WHEN \"0100\" => LED7S <= \"1100110\" ; WHEN \"0101\" => LED7S <= \"1101101\" ; WHEN \"0110\" => LED7S <= \"1111101\" ; WHEN \"0111\" => LED7S <= \"0000111\" ; WHEN \"1000\" => LED7S <= \"1111111\" ; WHEN \"1001\" => LED7S <= \"1101111\" ;

WHEN \"1010\" => LED7S <= \"1110111\" ; WHEN \"1011\" => LED7S <= \"1111100\" ; WHEN \"1100\" => LED7S <= \"0111001\" ; WHEN \"1101\" => LED7S <= \"1011110\" ; WHEN \"1110\" => LED7S <= \"1111001\" ;

WHEN \"1111\" => LED7S <= \"1110001\" ; WHEN OTHERS => NULL ; END CASE ; END PROCESS ; END ;

三、实验内容及步骤:

1、在QuartusII上进行编辑、编译、综合、适配。 2、引脚锁定及硬件测试。

建议选实验电路模式6,用数码8显示译码输出(PIO46-PIO40),键8、7、6和5控制输入。 三、实验报告:

根据以上的实验内容写出实验报告,包括程序设计、软件编译、硬件测试和实验过程;设计程序、程序分析报告。

因篇幅问题不能全部显示,请点此查看更多更全内容