用VHDL语言设计一个七段显示译码器电路,要求输出信号为高电平有效, 能驱动共阴极数码管。

周末补考···急急急急·····... 周末补考···急急急急····· 展开
 我来答
nereus78e904
推荐于2018-12-02 · TA获得超过1.5万个赞
知道大有可为答主
回答量:5463
采纳率:90%
帮助的人:1933万
展开全部
下面是74LS49的VHDL描述,74LS49就是一个驱动共阴极数码管的译码器:
LIBRARY IEEE;
USE IEEE.Std_logic_1164.ALL;
ENTITY ls49 IS
PORT(bl_n:IN Std_logic;
bi:IN Std_logic_vector(3 DOWNTO 0);
a,b,c,d,e,f,g:OUT Std_logic);
END ls49;
ARCHITECTURE behave_49 OF ls49 IS
SIGNAL s:Std_logic_vector(6 DOWNTO 0);
BEGIN
PROCESS(bi,bl_n)
BEGIN
IF bl_n = ′0′ THEN
s <= (OTHERS => ′0′);
ELSE
CASE bi IS
WHEN ″0000″ => s <= B″011_1111″;
WHEN ″0001″ => s <= B″000_0110″;
WHEN ″0010″ => s <= B″101_1011″;
WHEN ″0011″ => s <= B″100_1111″;
WHEN ″0100″ => s <= B″110_0110″;
WHEN ″0101″ => s <= B″110_1101″;
WHEN ″0110″ => s <= B″111_1101″;
WHEN ″0111″ => s <= B″010_0111″;
WHEN ″1000″ => s <= B″111_1111″;
WHEN ″1001″ => s <= B″110_1111″;
WHEN ″1010″ => s <= B″101_1000″;
WHEN ″1011″ => s <= B″100_1100″;
WHEN ″1100″ => s <= B″110_0010″;
WHEN ″1101″ => s <= B″111_1001″;
WHEN ″1110″ => s <= B″111_1000″;
WHEN ″1111″ => s <= B″000_0000″; -- 熄灭
WHENOTHERS=> s <= (OTHERS => ′0′); -- 熄灭
END CASE;
END IF;
END PROCESS;
a <= s(0);
b <= s(1);
c <= s(2);
d <= s(3);
e <= s(4);
f <= s(5);
g <= s(6);
END behave_49;
迪凯特科技(北京)有限公司
2023-07-28 广告
单片机串口通信的原理是利用单片机的串口通信模块,通过把数据转化为一位一位的用时序方式传送数据,实现单片机与外部设备之间的数据通信。 串口通信的概念非常简单,串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以... 点击进入详情页
本回答由迪凯特科技(北京)有限公司提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式