problem z 1.2KHz uro od 40MHz vira

J

Joshi

Guest
Zdravo vsem

imam mojster ura 40 Mhz in mojster Ura želite Ustvari 1,2 kHz Square val impulzi na izhod

moja koda je kot spodaj(1), kar je problm z mojo zakonika(2) kako Števec deluje in kako se odločiti za boj vrednot, kot sote motive(3), ne da bi za boj lahko uporabite Shift?knjižnica IEEE;
uporaba ieee.std_logic_1164.all;
uporaba ieee.std_logic_arith.all;
uporaba ieee.std_logic_unsigned.all;

Podjetje je Clk_divider
pristanišča (
resetn: v std_logic; - Reset
MHZ_clock: v std_logic;
Out_clock: od std_logic

);
end Clk_divider;

arhitektura Clk_divider_arch za Clk_divider je

signal clk_count: std_logic_vector (16 downto 0): =
"00000000000000000", - 16 Bit Counter

začeti

Ura: proces (resetn, MHZ_clock) - 0.025uSec
začeti
if (resetn = "0"), potem
Out_clock <= 0 ";

elsif (MHZ_clock'event in MHZ_clock = '1 '), potem
if (clk_count <= "01000001000101000"), nato --- želite Ustvari
Zamuda (40m Hz / 1.2K Hz = 3320)
clk_count <= clk_count '1 ';
out_clock <= '1 ';

elsif ((clk_count> "01000001000101000") IN (clk_count <
"10000010001010000")) potem
- 0-3333 ON in OFF 3333-6666

out_clock <= 0 ";
clk_count <= clk_count '1 ';
if (clk_count = "10000010001010000"), potem
clk_count <= "00000000000000000";

konca, če;
konca, če;

konca, če;
koncu procesa Clock;
end Clk_divider_arch;

Waiting odgovori fr ..

Hvala z Advance
Joshi

 
Joshi je napisal:

Zdravo vsemimam mojster ura 40 Mhz in mojster Ura želite Ustvari 1,2 kHz Square val impulzi na izhodmoja koda je kot spodaj
(1), kar je problm z mojo zakonika
(2) kako Števec deluje in kako se odločiti za boj vrednot, kot so
te motive
(3), ne da bi za boj lahko uporabite Shift?
knjižnica IEEE;

uporaba ieee.std_logic_1164.all;

uporaba ieee.std_logic_arith.all;

uporaba ieee.std_logic_unsigned.all;Podjetje je Clk_divider

pristanišča (

resetn: v std_logic; - Reset

MHZ_clock: v std_logic;

Out_clock: od std_logic);

end Clk_divider;arhitektura Clk_divider_arch za Clk_divider jesignal clk_count: std_logic_vector (16 downto 0): =

"00000000000000000", - 16 Bit CounterzačetiUra: proces (resetn, MHZ_clock) - 0.025uSec

začeti

if (resetn = "0"), potem

Out_clock <= 0 ";elsif (MHZ_clock'event in MHZ_clock = '1 '), potem

if (clk_count <= "01000001000101000"), nato --- želite Ustvari

Zamuda (40m Hz / 1.2K Hz = 3320)

clk_count <= clk_count '1 ';

out_clock <= '1 ';elsif ((clk_count> "01000001000101000") IN (clk_count <

"10000010001010000")) potem

- 0-3333 ON in OFF 3333-6666out_clock <= 0 ";

clk_count <= clk_count '1 ';

if (clk_count = "10000010001010000"), potem

clk_count <= "00000000000000000";konca, če;

konca, če;konca, če;

koncu procesa Clock;

end Clk_divider_arch;Waiting odgovori fr ..Hvala z Advance

Joshi
 
hvala hvala za yur Vhodi ..

ya Treba je 16660 ON in OFF 16660
Abd yur Še en prispevek
*******************
Jaz bi predlagal napisati

elsif (MHZ_clock'event in MHZ_clock = '1 '), potem
clk_count <= clk_count '1 ';
-----------
- Kode
-------
Prav tako bi bilo delo ....
********************

tukaj hočem increament Counter Do 16.660 (100000100010100) in en njegov konec protivrednosti hočem, da bi Counter 0000000000000000 da yi napisal kodo, kot je ta. Jus prevzeti Counter 50 -> i je 0-25 O / P visoki in 25 do 50 Naredil sem O / P nizko ...
************************
elsif (MHZ_clock'event in MHZ_clock = '1 '), potem
if (clk_count <= "01000001000101000"), nato --- želite Ustvari delà
- (40m Hz/1.2K Hz = 3320)

clk_count <= clk_count '1 ';
out_clock <= '1 ';

***********************
po logiki yur Kako lahko couner vrednosti Zero?

še ena stvar, ki sem že Synthesised tega kodeksa, vendar ne abld za simulacijo ...

 

Welcome to EDABoard.com

Sponsor

Back
Top