Dalas ng divider para sa infrared output

D

devsan

Guest
Hi kailangan kong hatiin ang aking kadalasan mula sa 1MHz sa 38kHz, ay ang code na ito ng tulong ko na sa akin?

entidad pagsubok ay
port (clk: sa kaunti; clkout: out bit);
huling pagsubok;

architecture pag-uugali ng pagsubok ay
simulan
proseso (clk)
Ang variable na cnt: integer saklaw 0-26;
simulan
kung (clk'event at clk = '1 ') at pagkatapos ay
kung (cnt = 26) at pagkatapos ay
cnt: = 0;
clkout <= '1 ';
kung hindi
cnt: = cnt 1;
clkout <= '0 ';
kung ang dulo;
kung ang dulo;
dulo proseso;
dulo ng pag-uugali;

Ito ay dapat na bigyan ako ng isang dalas ng 38,5 KHz ay gawaing ito para sa isang transmiter IR?

 
Hanapin ang matalim, ang divider kadahilanan ay 27 kaysa sa 26 sa iyong code, ngunit 26 ay magiging mas mahusay.Bukod dito, dapat kang magbigay ng 50% duty cycle ng parisukat na alon.

Code:

simulan

kung (clk'event at clk = '1 ') at pagkatapos ay

kung (cnt = 12) at pagkatapos - hatiin sa pamamagitan ng 13

cnt: = 0;

clkout <= HINDI clkout; - hatiin sa pamamagitan ng 2, makabuo ng square alon

kung hindi

cnt: = cnt 1;

kung ang dulo;

kung ang dulo;
 

Welcome to EDABoard.com

Sponsor

Back
Top