K
kokei74
Guest
Hei alle,
Jeg prøver å gjøre en teller som teller 0-9 og dette programmet vil telle flere ganger før signalet count = 0 eller klart = 0.Jeg bruker en 4bit n = 4, og det bør telle 0-15.Så jeg vil telle bare fra 0-9, kan hjelpe meg noen?dette er min programmet teller som teller bare 0-15.
library IEEE;
bruk ieee.std_logic_1164.all;
bruk ieee.std_logic_unsigned.all;
-------------------------------------------------- --
enhet er counter
generisk (n: naturlige: = 4);
port (Clock: in std_logic;
klar: in std_logic;
count: in std_logic;
Q: out std_logic_vector (n-1 downto 0)
);
end counter;
-------------------------------------------------- --
arkitektur behv av telleren er
signal Pre_Q: std_logic_vector (n-1 downto 0);
begynne
Prosessen (klokke, telle, klar)
begynne
hvis clear = '1 'da
Pre_Q <= Pre_Q - Pre_Q;
elsif (klokke = '1 'og clock'event) så
hvis count = '1 'da
Pre_Q <= Pre_Q 1;
end if;
end if;
end process;
Q <= Pre_Q;
end behv;
Jeg prøver å gjøre en teller som teller 0-9 og dette programmet vil telle flere ganger før signalet count = 0 eller klart = 0.Jeg bruker en 4bit n = 4, og det bør telle 0-15.Så jeg vil telle bare fra 0-9, kan hjelpe meg noen?dette er min programmet teller som teller bare 0-15.
library IEEE;
bruk ieee.std_logic_1164.all;
bruk ieee.std_logic_unsigned.all;
-------------------------------------------------- --
enhet er counter
generisk (n: naturlige: = 4);
port (Clock: in std_logic;
klar: in std_logic;
count: in std_logic;
Q: out std_logic_vector (n-1 downto 0)
);
end counter;
-------------------------------------------------- --
arkitektur behv av telleren er
signal Pre_Q: std_logic_vector (n-1 downto 0);
begynne
Prosessen (klokke, telle, klar)
begynne
hvis clear = '1 'da
Pre_Q <= Pre_Q - Pre_Q;
elsif (klokke = '1 'og clock'event) så
hvis count = '1 'da
Pre_Q <= Pre_Q 1;
end if;
end if;
end process;
Q <= Pre_Q;
end behv;