M
madmaiden
Guest
Hei,
Minulla on muutama peruskysymys ja käsittelyn eri opetusohjelmia ei ole apua.Haluan tehdä tilakone, joka menee vaikka kaikki valtiot kiinteä numer on (Let's eli viisi) kertaa pysähtyy ja odottaa, kunnes painiketta painetaan.Yritin koodaus tämän verilog ja myös VHDL.ei tuloksia.Jotta voidaan testata, jos valtio kone toimi minun liitetty sen TX pin, ja joka kerta se oli ensimmäinen valtio määrää on toimitettu.Se workes hieno, mutta haluan tehdä sen toimittaa viisi arvoa aina kun painiketta painetaan, ei enempää eikä vähempää.Olen myös debounce estää, joka toimii hyvin.
Aion lähettää koodia kirjoitettu VHDL:
Koodi:fsm1: PROCESS (PL 1, currentstate, tx_rdy, nr)
aloittaa
Jos currentstate on
kun Idle =>
tx_write <= '1 ';
jos (tx_rdy = '1 ') ja (nr <5) jälkeen
nextstate <= St1;
elsif (PL 1 = '1 ')
nr = "000";
muuten
nextstate <= idle;
end if;
kun St1 =>
dat <= "01010001"; - doens 't oikeastaan väliä mitä se on transmiited nyt
nr <= NR '1 ';
nextstate <= St2;
kun St2 =>
tx_write <= '0 ';
nextstate <= ST3;
kun ST3 =>
nextstate <= idle
vuoden osalta;
end process;
Minulla on muutama peruskysymys ja käsittelyn eri opetusohjelmia ei ole apua.Haluan tehdä tilakone, joka menee vaikka kaikki valtiot kiinteä numer on (Let's eli viisi) kertaa pysähtyy ja odottaa, kunnes painiketta painetaan.Yritin koodaus tämän verilog ja myös VHDL.ei tuloksia.Jotta voidaan testata, jos valtio kone toimi minun liitetty sen TX pin, ja joka kerta se oli ensimmäinen valtio määrää on toimitettu.Se workes hieno, mutta haluan tehdä sen toimittaa viisi arvoa aina kun painiketta painetaan, ei enempää eikä vähempää.Olen myös debounce estää, joka toimii hyvin.
Aion lähettää koodia kirjoitettu VHDL:
Koodi:fsm1: PROCESS (PL 1, currentstate, tx_rdy, nr)
aloittaa
Jos currentstate on
kun Idle =>
tx_write <= '1 ';
jos (tx_rdy = '1 ') ja (nr <5) jälkeen
nextstate <= St1;
elsif (PL 1 = '1 ')
nr = "000";
muuten
nextstate <= idle;
end if;
kun St1 =>
dat <= "01010001"; - doens 't oikeastaan väliä mitä se on transmiited nyt
nr <= NR '1 ';
nextstate <= St2;
kun St2 =>
tx_write <= '0 ';
nextstate <= ST3;
kun ST3 =>
nextstate <= idle
vuoden osalta;
end process;