Frequentie divider voor infrarood uitgang

D

devsan

Guest
Hallo Ik moet mijn frequentie verdelen van 1MHz tot 38kHz, zal deze code mij helpen dat doen?

entiteit test
poort :) CLK in bit; clkout: out bit);
einde test;

architectuur gedrag van de test is
beginnen
proces (CLK)
variabele cnt: integer bereik van 0 tot 26;
beginnen
if (clk'event en clk = '1 ') then
if (cnt = 26) dan
cnt: = 0;
clkout <= '1 ';
anders
cnt: = teller 1;
clkout <= '0 ';
end if;
end if;
einde proces
end gedrag;

Dit moet mij een frequentie van 38,5 kHz zal dit werk voor een IR-zender?

 
Kijk scherp, de scheidingslijn factor is 27 in plaats van 26 in uw code, maar 26 zou beter zijn.Verder moet u een 50% duty cycle blokgolf.

Code:

beginnen

if (clk'event en clk = '1 ') then

if (cnt = 12) dan - delen door 13

cnt: = 0;

clkout <= NIET clkout, - delen door 2, genereren blokgolf

anders

cnt: = teller 1;

end if;

end if;
 

Welcome to EDABoard.com

Sponsor

Back
Top