library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity Aufgabe2 is Port ( btn_cod : in std_logic_vector(4 downto 0); led : out std_logic_vector(4 downto 0); seg7ca : out std_logic_vector(6 downto 0); seg7an : out std_logic_vector(3 downto 0)); end Aufgabe2; architecture Behavioral of Aufgabe2 is signal tmp: std_logic_vector(1 downto 0); begin -- Direktausgabe der Tasterwerte led <= btn_cod; -- die Ziffer der 7-Segmentanzeige können nur zeitlich -- nacheinander angesteuert werden. Auswahl durch das Signal -- seg7ca: 1 - ein; 0 - aus -- Nachfolgende Zuweisung bewirkt, dass nur die rechten Ziffer -- eingeschaltet ist und auch nur, wenn eine Taste gedrückt ist seg7an <= "000" & btn_cod(4); -- Die Auswahl der einzelnen Segment erfolgt über die Signale -- seg7ca. Die nachfolgende Zuordnung zwischen Tastereingabe -- und Ausgabe ist willkürlich gewählt und soll entsprechend -- Aufgabestellung verändert werden. tmp(0)<= btn_cod(1) xor btn_cod(0); tmp(1)<= btn_cod(3) xor btn_cod(2); with tmp select seg7ca <= "0111000" when "00", "0111110" when "01", "1111001" when "10", "1110111" when others; end Behavioral;