coucou la communauté
excusez moi je suis confronté a un probleme sur un code vhdl
(je suis sur nexys3)
en gros ce code serais un compteur de signal
je m'explique
a chaque changement de valeur sur I_octet
je doit avoir ( en valeur binaire visible sur les led de la nexys) un +1
comme O_octet est codé sur 3 bit ,a "111" je fait un reset sur O_octet
mon probleme est que je n'ai aucune led qui s'allume
en revanche le code se compile sans erreur
Code:library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; use IEEE.NUMERIC_STD.ALL; entity compteur_signal is Port ( I_octet : in STD_LOGIC_VECTOR (7 downto 0); --signaux a compter clk : in STD_LOGIC;-----------------------horloge (je sais pas trop pourquoi j'en mets une pour l'instant O_octet : out STD_LOGIC_VECTOR (2 downto 0));--signal de sortie j'affiche en val num sur mes led end compteur_signal ; architecture Behavioral of compteur_signal is signal S_O_octet : std_logic_vector (2 downto 0) :="000" ;-- crée pour travailler tranquilement sur O_octet signal S_I_octet : std_logic_vector (7 downto 0);-- crée pour travailler tranquilement sur I_octet begin S_I_octet <= I_octet;-- association de I_octet a son signal process (S_I_octet,clk) --------------------remettre clock dans les sensitives begin -- S_O_octet <= "000"; if clk'event and clk='1' then if S_I_octet /= S_I_octet then S_O_octet <= S_O_octet +1; end if; END IF ; end process; process ( clk) if clk'event and clk='1' then if S_O_octet = "111"then S_O_octet <= "000"; end if; end process; O_octet <= S_O_octet; -- association de o_octet a son signal end Behavioral;
merci de me signaler la ou surement les erreurs que vous voyez m'voyez
bonne soirée
-----