📄 judgedisplay.vhd
字号:
-- Quartus VHDL Template
-- Tri-State Buffer
LIBRARY ieee;
USE ieee.std_logic_1164.all;
ENTITY judgedisplay IS
PORT
(
data : IN STD_LOGIC;
pulse : IN STD_LOGIC;
flag : IN STD_LOGIC;
light1 : OUT STD_LOGIC;
light2 : OUT STD_LOGIC;
light3 : OUT STD_LOGIC;
light4 : OUT STD_LOGIC;
light5 : OUT STD_LOGIC;
light6 : OUT STD_LOGIC;
light7 : OUT STD_LOGIC;
light8 : OUT STD_LOGIC
);
END judgedisplay;
ARCHITECTURE behave OF judgedisplay IS
signal result :std_logic_vector(4 downto 0);
signal dispdata :std_logic_vector(4 downto 0);
signal i :integer:=0 ;
signal sig :std_logic_vector(3 downto 0):="0000";
BEGIN
P1:PROCESS (flag,pulse)
BEGIN
IF flag ='0' then
i<= 0;
ELSIF ( pulse'event and pulse ='1') THEN
result(i) <=data;
i <= i+1;
END IF ;
END PROCESS P1;
P2:PROCESS (flag)
BEGIN
IF flag ='0' THEN
sig(0) <= result(1);
sig(1) <= result(2);
sig(2) <= result(3);
sig(3) <= result(4);
CASE sig IS
WHEN "0000" => ---2,3,4,5,6,7
light1 <= '0';
light2 <= '1';
light3 <= '1';
light4 <= '1';
light5 <= '1';
light6 <= '1';
light7 <= '1';
light8 <= '0';
WHEN "0001" => ----2,5
light1 <= '0';
light2 <= '1';
light3 <= '0';
light4 <= '0';
light5 <= '1';
light6 <= '0';
light7 <= '0';
light8 <= '0';
WHEN "0010" => ---3,4,5,6,8
light1 <= '0';
light2 <= '0';
light3 <= '1';
light4 <= '1';
light5 <= '1';
light6 <= '1';
light7 <= '0';
light8 <= '1';
WHEN "0011" => ---2,3,5,6,8
light1 <= '0';
light2 <= '1';
light3 <= '1';
light4 <= '0';
light5 <= '1';
light6 <= '1';
light7 <= '0';
light8 <= '1';
WHEN "0100" => ---2,5,7,8
light1 <= '0';
light2 <= '1';
light3 <= '0';
light4 <= '0';
light5 <= '1';
light6 <= '0';
light7 <= '1';
light8 <= '1';
WHEN "0101" => ---2,3,6,7,8
light1 <= '0';
light2 <= '1';
light3 <= '1';
light4 <= '0';
light5 <= '0';
light6 <= '1';
light7 <= '1';
light8 <= '1';
WHEN "0110" => ---2,3,4,6,7,8
light1 <= '0';
light2 <= '1';
light3 <= '1';
light4 <= '1';
light5 <= '0';
light6 <= '1';
light7 <= '1';
light8 <= '1';
WHEN "0111" => ---2,5,6
light1 <= '0';
light2 <= '1';
light3 <= '0';
light4 <= '0';
light5 <= '1';
light6 <= '1';
light7 <= '0';
light8 <= '0';
WHEN "1000" => ---2,3,4,5,6,7,8
light1 <= '0';
light2 <= '1';
light3 <= '1';
light4 <= '1';
light5 <= '1';
light6 <= '1';
light7 <= '1';
light8 <= '1';
WHEN "1001" => ---2,3,5,6,7,8
light1 <= '0';
light2 <= '1';
light3 <= '1';
light4 <= '0';
light5 <= '1';
light6 <= '1';
light7 <= '1';
light8 <= '1';
WHEN "1010" => ---2,4,5,6,7,8
light1 <= '0';
light2 <= '1';
light3 <= '0';
light4 <= '1';
light5 <= '1';
light6 <= '1';
light7 <= '1';
light8 <= '1';
WHEN "1011" => ---2,3,4,7,8
light1 <= '0';
light2 <= '1';
light3 <= '1';
light4 <= '1';
light5 <= '0';
light6 <= '0';
light7 <= '1';
light8 <= '1';
WHEN "1100" => ---3,4,6,7
light1 <= '0';
light2 <= '0';
light3 <= '1';
light4 <= '1';
light5 <= '0';
light6 <= '1';
light7 <= '1';
light8 <= '0';
WHEN "1101" => ---2,3,4,5,8
light1 <= '0';
light2 <= '1';
light3 <= '1';
light4 <= '1';
light5 <= '1';
light6 <= '0';
light7 <= '0';
light8 <= '1';
WHEN "1110" => ---3,4,6,7,8
light1 <= '0';
light2 <= '0';
light3 <= '1';
light4 <= '1';
light5 <= '0';
light6 <= '1';
light7 <= '1';
light8 <= '1';
WHEN "1111" => ---4,6,7,8
light1 <= '0';
light2 <= '0';
light3 <= '0';
light4 <= '1';
light5 <= '0';
light6 <= '1';
light7 <= '1';
light8 <= '1';
WHEN OTHERS =>
light1 <= '1';
light2 <= '1';
light3 <= '1';
light4 <= '1';
light5 <= '1';
light6 <= '1';
light7 <= '1';
light8 <= '1';
END CASE ;
END IF ;
END PROCESS P2;
END behave;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -