七段数码显示字符 VHDL设计与实现

作者:chenjieb520

一.设计目的

学习七段数码管显示译码器设计,学习VHDLCASE语句应用及多层次设计方法。

二.设计内容

利用译码程序,构造七段数码管,并完成编译、综合、适配、仿真和硬件测试。

三.程序设计原理

  实验步骤:请按照以下步骤实现七段解码器电路:

  (1) 新建一个QuartusⅡ工程,用以在DE2平台上实现所要求的电路。

  (2) 建立一个VHDL文件,实现七段解码器电路,用SW2~SW0作为输入c2~c0,DE2平台上的数码管分别为HEX0~HEX7,输出接HEX0。

  (3) 参照DE2平台的引脚分配表分配引脚。

  (4) 编译工程,完成后下载到FPGA中。

  (5) 拨动波段开关并观察七段数码管HEX0的显示,以验证设计的功能是否正确。

七段数码显示字符 VHDL设计与实现_第1张图片


四.程序流程图

七段数码显示字符 VHDL设计与实现_第2张图片

五.源程序

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

ENTITY DECL7S IS

PORT(A:IN STD_LOGIC_VECTOR(1 DOWNTO 0);

      LED7S:OUT STD_LOGIC_VECTOR(6 DOWNTO 0));

END;

ARCHITECTURE one OF DECL7S IS

BEGIN

PROCESS(A)

BEGIN

CASE A IS

WHEN "00" => LED7S<="0001001";

WHEN "01" => LED7S<="0000110";

WHEN "10" => LED7S<="1000111";

WHEN "11" => LED7S<="1000000";

WHEN OTHERS=>NULL;

END CASE;

END PROCESS;

END;

六.调试过程

七段数码显示字符 VHDL设计与实现_第3张图片

实验结果就是:当 

A=00 时 在LED上显示字符“H

A=01 时 在LED上显示字符“E

A=10 时 在LED上显示字符“L

A=11 时 在LED上显示字符“O

实验结果和实验要求相吻合。

七.遇到的问题及解决方法

   1、在本次实验中,由于实验的内容比较简单,没有遇到比较大的问题,主要是在仿真的波形的建立方面,比较没有技巧,导致花费了很多时间。

   2、在其他的代码方面,由于有课本的代码可以进行改造,所以没有遇到比较大的问题。

八.参考文献

EDA技术与VHDL(第二版) 潘松  黄继业 编著


你可能感兴趣的:(c,vector,测试,平台,hex)