Stap 4: 7 Segment Decoder Module
We zullen het 7 segment display gebruiken op de Nexys-2 weer te geven die aan de beurt is. Om dit te doen, zullen we een eenvoudige 7 segment decoder gebruiken.
entity Seg is Port ( Turn : in STD_LOGIC_VECTOR (1 downto 0); Clock : in STD_LOGIC; Anode : out STD_LOGIC_VECTOR (3 downto 0); Segment : out STD_LOGIC_VECTOR (7 downto 0)); end Seg; architecture Behavioral of Seg is signal Seg_temp : std_logic_vector(7 downto 0) := "11111111"; begin anode <= "1110"; process (turn, clock) is begin if (rising_edge(clock)) then if (turn = "01") then seg_temp <= "10011111"; elsif (turn = "10") then seg_temp <= "00100101"; else null; end if; end if; end process; segment <= seg_temp; end Behavioral;
Zoals u zien kunt, we zijn begonnen doordat alleen de laatste anode. Na dat, wij controleren de huidige beurt en het segment uitvoer dienovereenkomstig wijzigen. Voor segment toewijzing, check out de Nexys 2 handleiding of de handleiding Nexys 3.