一 设计要求
- 3 个译码输入端A、B、C ,分别对应开发板上表示为ON DIP 的2,3,4
- EN 为使能端(低电平有效),对应开发板上表示为ON DIP 的1 管脚
- Y 为译码输出,8 位位矢量类型。D3 至D10
- 输入采用电平开关,译码输出采用LED 指示灯显示
5)译码表如下表 :
二 代码实验
LIBRARY IEEE;
USE IEEE.std_logic_1164.ALL;
ENTITY decoder_38 IS
PORT(A,B,C,EN:IN std_logic;
y:OUT std_logic_vector(7 DOWNTO 0));
END decoder_38;
ARCHITECTURE behav OF decoder_38 IS
SIGNAL indata:std_logic_vector(2 DOWNTO 0);
BEGIN
indata<=C&B&A;
PROCESS(indata,EN)
BEGIN
IF(EN='0')THEN
CASE indata IS
WHEN"000"=>y<="11111110";
WHEN"001"=>y<="11111101";
WHEN"010"=>y<="11111011";
WHEN"011"=>y<="11110111";
WHEN"100"=>y<="11101111";
WHEN"101"=>y<="11011111";
WHEN"110"=>y<="10111111";
WHEN"111"=>y<="01111111";
WHEN OTHERS=>y<="XXXXXXXX";
END CASE;
ELSE y<="11111111";
END IF;
END PROCESS;
END behav;
三 整机电路图
四 仿真结果
五 实验结果
(a) 输入为000,LED0发光
(b) 输入为001,LED1发光
© 输入为010,LED2发光
(d) 输入为011,LED3发光
(e) 输入为100,LED4发光
(f) 输入为101,LED5发光