Bonjour à tous,
J'ai un buzzer et deux switchs sur ma carte de développement. Je veux que lorsque j'appui sur le premier le buzzer vibre à une certaine fréquence et il vibre à une autre lorsque j'appui sur le deuxieme.
Voici le code que j'ai rédigé, j'ai cependant une erreur a la compilation (Quartus n'accepte pas que l'état du buzzer soit dépendant de deux PROCESS en parallèle) :
Désolé pour l'indentation un peu foireuseCode:ARCHITECTURE behavior of ode IS signal la : std_logic_vector(25 downto 0); signal la2 : std_logic_vector (25 downto 0); BEGIN --diviseur de frequence process(CLOCK_50) begin if rising_edge(CLOCK_50) then if la = 49000000 then la <= conv_std_logic_vector(0,26); else la<= la+1; end if; if la < 25000000 then clock <= '1'; else clock <= '0'; end if; end if; if rising_edge(CLOCK_50) then if la2 = 25000000 then la2 <= conv_std_logic_vector(0,26); else la2 <= la2 + 1; end if; if la2 < 12500000 then clock2 <='1'; else clock2 <= '0'; end if; end if; end process; process(clock) begin if rising_edge(clock) then if sw = "01" then if bee = '0' then bee <='1'; else bee <='0'; end if; end if; end if; end process; PROCESS(clock2) begin if rising_edge(clock2) then if sw = "10" then bee <='1'; end if; end if; end process;
bee c'est le buzzer et sw le vecteur de switch, la et la2 les signaux du diviseur.
Merci de votre aide !
-----