用VHDL语言编写七段显示译码器,输入端口D输入0~9二进制数,译出的数码管显示码由X端口输出

如题所述

第1个回答  2017-06-06
共阴极数码管:
library ieee;
use ieee.std_logic_1164.all;

entity seven_seg is
port(
D :in std_logic_vector(3 downto 0); --4 bits latch input
X :out std_logic_vector(6 downto 0); --to seven segment
);
end seven_seg;
architecture arch_seven_seg of seven_seg is
begin
process(D)
begin
case D is
when "0000"=> X <="1111110"; --0 number to show
when "0001"=> X <="0110000"; --1
when "0010"=> X <="1101101"; --2
when "0011"=> X <="1111001"; --3
when "0100"=> X <="0110011"; --4
when "0101"=> X <="1011011"; --5
when "0110"=> X <="1011111"; --6
when "0111"=> X <="1110000"; --7
when "1000"=> X <="1111111"; --8
when "1001"=> X <="1111011"; --9
when OTHERS=> X <=(OTHERS => '0');
end case;
end process;
end arch_seven_seg;本回答被提问者和网友采纳
第2个回答  2017-06-06
VHDL的吗?我这有共阳极的。

七段数码显示译码器VHDL程序
signal dig_r:std_logic_vector(7 downto 0);signal data_r:std_logic_vector(3 downto 0);signal seg_r:std_logic_vector(7 downto 0);begin dig <= dig_r;seg <= seg_r;a:process(clk,clr)variable count:integer range 0 to 50000000;begin if clr = '0' then count := 0;el...

用VHDL语言设计一个共阴极七段数码管的译码电路,急求大神解答,高分求助...
74LS49是一个7段译码器,其VHDL描述如下:LIBRARYIEEE;USE IEEE.Std_logic_1164.ALL;ENTITYls49 IS PORT(bl: IN Std_logic;bi: IN Std_logic_vector(3 DOWNTO 0);a,b,c,d,e,f,g: OUT Std_logic);ENDls49;ARCHITECTURE behavl_49 OF ls49 IS SIGNAL s: Std_logic_vector(6 DOWNTO ...

共阳级七段显示译码器VHDL程序与共阴极有何区别
共阳极公共端接阳极,低电平有效(灯亮), 共阴极公共端接阴极,高电平有效(灯亮)就是程序在编写的时候共阳极的要用0才表示亮 共阴极的用1才表示亮 例如 0000 0000 如果是共阳极就是全亮 共阴极就是全灭

如何用VHDL设计七段数码显示器的十六进制译码器,要求该译码器有三态输出...
用case语句就可以,当然也可以由with select,when。。。等语句。输出和数码管的接法有关,下面这个是我用case语句写的,是共阴的接法,共阳的话把q按位取反就是。我综合通过了。library ieee;use ieee.std_logic_1164.all;entity smg_16 is port( a:in std_logic_vector(3 downto 0);q:out...

共阳级七段显示译码器VHDL程序与共阴极有何区别
共阳极公共端接阳极,低电平有效(灯亮), 共阴极公共端接阴极,高电平有效(灯亮)就是程序在编写的时候共阳极的要用0才表示亮 共阴极的用1才表示亮 例如 0000 0000 如果是共阳极就是全亮 共阴极就是全灭

基于VHDL语言的多功能数字钟设计
(二)分频器 1、8421码制,5421码制 用四位二进制码的十六种组合作为代码,取其中十种组合来表示0-9这十个数字符号。通常,把用四位二进制数码来表示一位十进制数称为二-十进制编码,也叫做BCD码,见表1。 表1 8421码 5421码 0 0000 0000 1 0001 0001 2 0010 0010 3 0011 0011 4 0100 0100 5 0101 ...

用VHDL实现十进制到二进制的转换
d:=shuru; --保存输入 a:=0;while c\/= 0 loop --c不等于零则循环,c等于零则退出循环 c:=c\/2; --循环除2,类似于十进制数转化为二进制数的方法 d:=d-(c*2); --算完后,d为计算出的每位二进制数 shuchu(a)<=d; --把每为二进制数安位给输出 d:=c; --作为...

跪求,用VHDL语言编写3-8译码器
有幸看到你的问题。但是又很遗憾到现在还没有人回答你的问题。也可能你现在已经在别的地方找到了答案,那就得恭喜你啦。可能是你问的问题有些专业了,没人会。或者别人没有遇到或者接触过你的问题,所以帮不了你。建议你去问题的相关论坛去求助,那里的人通常比较多,也比较热心,可能能快点帮你解决...

高分:用VHDL语言编写的一个整数分频器有点问题?
VHDL的任意整数且占空比为50%分频代码 说明如下:1.其中top file 为 division,其中的clk_com是比较的频率,用它来和分频后波形进行比较,便于观察,2.any_enve为任意偶数分频文件 3.any_odd为任意奇数分频文件 4.是一个用于2进制与8进制的译码器,我用它来显示在数码管上当前到底是多少分频 5.以下...

跪求:《数字频率计的设计》 原理,方框图,电路图!
REG32B为锁存器。在信号Load的上升沿时,立即对模块的输入口的数据锁存到REG32B的内部,并由REG32B的输出端输出,然后,七段译码器可以译码输出。在这里使用了锁存器,好处是可以稳定显示数据,不会由于周期性的清零信号而不断闪烁。CNT10为十进制计数器。有一时钟使能输入端ENA,用于锁定计数值。当高...

相似回答