七段显示译码器仿真图BCD-七段数码管显示译码器

目的

进一步掌握VHDL语言的基本结构和设计的输入方法。

2 .掌握2.BCD-7段显示解码器的设计思路:

内容

使用指拨开关SW3、SW2、SW1、SW0作为1.4位二进制数据d、c、b、a的输入;

2 .显示在最右边的数码管HEX0中输入的BCD代码的数值。

原理

7段数码管一般由8个发光二极管组成,其中7个细长发光二极管构成数字显示,另一个圆形发光二极管显示小数点。 发光二极管接通后,对应的1点或1行程发光。 通过控制对应的二极管的导通,可以显示各种各样的文字。 发光二极管的阳极连接的被称为共阳极数字管,此时解码器的输出应该是低电平有效的; 阴极连接的是共阴极数码管,在这种情况下,解码器的输出应该是高电平有效的。 如图2-25所示。

图2-25七段数码管结构图

74LS47是一个解码器/驱动器,其将4位二进制代码转换为十进制数字(BCD ),并通过7段的数字管道显示,如图2-26所示。 74LS47可以驱动公共阳极的发光二极管7段的LED来显示文字。

图2-2674LS47引脚图

74LS47具有自动前后边缘清零控制(RBI和RBO )。 指示灯(LT )可以在BI/RBO端子变为高电平的任意时刻进行,该电路还包含用于控制灯的亮度和禁止输出的熄灭输入(BI )。 输入0~15时,74LS47中显示的字符如图2-27所示。 菜单如表2-2所示。

图2-2774LS47显示字符

表2-274LS47菜单

DE2-115有8个7级数码管。 它们被分成两组,每个四个,用于数字显示。 DE2-115段数码管采用共阳极连接方式。 FGA输出为低电平时,对应的字段点亮,反之则熄灭。 需要注意的是,DE2-115开发板上不能使用7级数码管点。

制定QuartusII项目,以实现3358www.Sina.com/1.de2-115中的预期电路。

2 .写期望电路的VHDL代码。

将VHDL文件包含在项目中进行编译。

4 .模拟电路检测其功能。

5 .分配领导。

6 .重新编译下载到FPGA芯片。

用DE2-115开发板确认电路是否正确。

操作

LIBRARYIEEE;

USEIEEE.STD_LOGIC_1164.ALL;

USEIEEE.STD_LOGIC_UNSIGNED.ALL;

实体BCD7is

port(ain,Bin,Cin,Din:INSTD_LOGIC; —-输入位BCD代码

LT、RBI、BI:INSTD_LOGIC;

a、b、c、d、e、f、g:OUTSTD_LOGIC; -7段

ENDBCD7;

ARCHITECTUREARCHOFBCD7IS

signalq : STD _ logic _ vector (3down to0);

比根

Q=DinCinBinAin;

处理(q、LT、RBI、BI ) )。

可变dout : STD _ logic _ vector (6down to 0;

比根

IFBI=’0’THEN

DOUT:=’0000000 ‘;

ELSIFRBI=’1’THEN

IFLT=’1’THEN

CASEQIS

WHEN’0001’=DOUT:=’1111001 ‘;

WHEN’0010’=DOUT:=’0100100 ‘;

WHEN’0011’=DOUT:=’0110000 ‘;

WHEN’0100’=DOUT:=’0011001 ‘;

WHEN’0101’=DOUT:=’0010010 ‘;

WHEN’0110’=DOUT:=’0000010 ‘;

WHEN’0111’=DOUT:=’1111000 ‘;

WHEN’1000’=DOUT:=’0000000 ‘;

WHEN’1001’=DOUT:=’0011000 ‘;

WHEN’1010’=DOUT:=’0001000 ‘;

WHEN’1011’=DOUT:=’0000011 ‘;

WHEN’1100’=DOUT:=’1000110 ‘;

WHEN’1101’=DOUT:=’0100001 ‘;

WHEN’1110’=DOUT:=’0000110 ‘;

WHEN’1111’=DOUT:=’0001110 ‘;

WHENOTHERS=DOUT:=’1000000 ‘;

结束案例;

结尾;

结尾;

a=dout(0;

b=dout(1;

c=dout(2;

d=dout(3;

e=dout(4;

f=dout(5;

g=dout(6;

结束流程;

结束地址;

程序

结果

1 .请仔细看看工作原理。

2 .文件名必须与VHDL文件中的设计实体名称一致。

总结:我个人觉得规范操作很重要。 如果操作不规范,不仅操作步骤繁杂,还可能带来错误。 其次是理解代码的含义,BCD-分段数码管展示解码器的作用,揭示共阴极、共阳极的区别。 应该能比较顺利地执行任务。

永不输本金打法回本技巧WHEN’0010’=DOUT:=’0100100 ‘;

WHEN’0011’=DOUT:=’0110000 ‘;

WHEN’0100’=DOUT:=’0011001 ‘;

WHEN’0101’=DOUT:=’0010010 ‘;

WHEN’0110’=DOUT:=’0000010 ‘;

WHEN’0111’=DOUT:=’1111000 ‘;

WHEN’1000’=DOUT:=’0000000 ‘;

WHEN’1001’=DOUT:=’0011000 ‘;

WHEN’1010’=DOUT:=’0001000 ‘;

WHEN’1011’=DOUT:=’0000011 ‘;

WHEN’1100’=DOUT:=’1000110 ‘;

WHEN’1101’=DOUT:=’0100001 ‘;

WHEN’1110’=DOUT:=’0000110 ‘;

WHEN’1111’=DOUT:=’0001110 ‘;

WHENOTHERS=DOUT:=’1000000 ‘;

结束案例;

结尾;

结尾;

a=dout(0;

b=dout(1;

c=dout(2;

d=dout(3;

e=dout(4;

f=dout(5;

g=dout(6;

结束流程;

结束地址;

程序

结果

1 .请仔细看看工作原理。

2 .文件名必须与VHDL文件中的设计实体名称一致。

总结:我个人觉得规范操作很重要。 如果操作不规范,不仅操作步骤繁杂,还可能带来错误。 其次是理解代码的含义,BCD-分段数码管展示解码器的作用,揭示共阴极、共阳极的区别。 应该能比较顺利地执行任务。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注