七段数码管显示译码器
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
七段数码管显示译码器本页仅作为文档页封面,使用时可以删除
This document is for reference only-rar21year.March
可编程逻辑器件技术
项目设计报告
课题名称:七段数码管显示译码器
班级:13电子(2)班
姓名:许宋如
指导老师:龚兰芳
一、设计要求
1)用VHDL语言设计一个可以实现以下功能的程序:输入时思位二进制数,输出时对应的十进制。
2)用四个开关代表四位二进制数,单个数码管显示对应的十进制数。
3)编完程序之后并在开发系统上进行硬件测试。
二、任务分析
用来驱动各种显示器件,从而将用二进制代码表示的数字,文字,符号翻译成人们习惯的形式直观的显示出来的电路,称为显示译码器。
这种显示译码器用多种发光器件构成。
例如半导体发光二极管,液晶灯。
以发光二极管的七段数码管显示译码器为例进行说明。
七段字形译码器的真值表:
设计原理图:
四、硬件要求
主芯片EPM240T100C5,4个开关,一个共阴七段数码管。
五、源程序
library ieee;
use ieee.std_logic_1164.all;
entity yima is
port(
l:out std_logic_vector(5 downto 0);
d0,d1,d2,d3:in std_logic;
a,b,c,d,e,f,g:out std_logic
);
end yima;
architecture behav of yima is
signal m:std_logic_vector(3 downto 0); signal seg7:std_logic_vector(6 downto 0); begin
l<=”011111”;
m<=d3&d2&d1&d0;
with m select
seg <=”011111”when ”0000”,
“0000110”when “0001”,
“1011011”when “0010”,
“1001111”when “0011”,
“1100110”when “0100”,
“1101101”when “0101”,
“1111101”when “0110”,
“0000111”when “0111”,
“1111111”when “1000”,
“1100111”when “1001”,
“1110111”when “1010”,
“0111001”when “1011”,
“0111001”when “1100”,
“1011110”when “1101”,
“1111001”when “1110”,
“1110001”when “1111”,
“0000000”when others;
g<=seg7(6);
f<=seg7(5);
e<=seg7(4);
d<=seg7(3);
c<=seg7(2);
b<=seg7(1);
a<=seg7(0);
end behav;
六、接线图
七、现象描述
在硬件上测试,现象结果是,当被分配的引脚的四个拨码开关打到相应位置的二进制对应的七段显示器数码管上显示出相应的字形,例如:当拨码开关对应的二进制为1000的是字形8.
八、总结
通过这次课题实验,熟悉了各程序模块的编写特点,主要是进程语句模块,和结构体以及实体模块的程序编写。
相较之前现在可以比较熟练的使用这几个模块。
对硬件的认识也比较清晰,在分配引脚时可以比较灵活应用,不用都照搬书里内容。