📄 decod.vhd
字号:
-- Progetto Elettronica 2 FPGA (2007) - Marco Mucchino & Giovanni Schiavon-- Decoder per circuito con 4 led a 7 segmentilibrary IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;entity decod is Port ( clock : in std_logic; reset : in std_logic; segno : in std_logic; seq3 : in STD_LOGIC_VECTOR (3 downto 0); seq2 : in STD_LOGIC_VECTOR (3 downto 0); seq1 : in STD_LOGIC_VECTOR (3 downto 0); seqdec : in std_logic; led1 : out STD_LOGIC_VECTOR (7 downto 0); led2 : out STD_LOGIC_VECTOR (7 downto 0); led3 : out STD_LOGIC_VECTOR (7 downto 0); leddec : out STD_LOGIC_VECTOR (7 downto 0));end decod;architecture Behavioral of decod isbeginprocess (clock,reset)begin if ( clock'event and clock ='1') then if ( reset = '1') then led1 <= "11111111"; led2 <= "11111111"; led3 <= "11111111"; leddec <= "11111111"; else if (segno = '1') then led1 <= "11110111";--meno elsif (seq1 = "0001") then led1 <= "11101101";--1 else led1 <= "11111111";--spento end if; if (seq1 = "0000" ) and (seq2 = "0000") then led2 <= "11111111";--spento else case seq2 is when "0000" => led2 <= "10001000";--0 when "0001" => led2 <= "11101101";--1 when "0010" => led2 <= "10100010";--2 when "0011" => led2 <= "10100100";--3 when "0100" => led2 <= "11000101";--4 when "0101" => led2 <= "10010100";--5 when "0110" => led2 <= "10010000";--6 when "0111" => led2 <= "10101101";--7 when "1000" => led2 <= "10000000";--8 when "1001" => led2 <= "10000100";--9 when others => led2 <= "11111111";--spento end case; end if; case seq3 is when "0000" => led3 <= "00001000";--0 when "0001" => led3 <= "01101101";--1 when "0010" => led3 <= "00100010";--2 when "0011" => led3 <= "00100100";--3 when "0100" => led3 <= "01000101";--4 when "0101" => led3 <= "00010100";--5 when "0110" => led3 <= "00010000";--6 when "0111" => led3 <= "00101101";--7 when "1000" => led3 <= "00000000";--8 when "1001" => led3 <= "00000100";--9 when others => led3 <= "11111111";--spento end case; case seqdec is when '0' => leddec <= "10001000";--.0 when '1' => leddec <= "10010100";--.5 when others => leddec <= "11111111";--spento end case; end if; end if;end process; end Behavioral;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -