我是VHDL的初学者,我正在尝试编写一个代码,为我提供用户输入的(0-50)Khz
之间的随机频率的准确值。
我使用的时钟是50Mhz
。
首先,我做了2个柜台:
50Mhz
时钟。我不知道接下来需要做什么。这是我写的:
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
entity freq_c is
port(x , clk :in bit;
stop1, stop0 :buffer integer range 0 to 99999;
f_o :buffer integer range 0 to 99999
);
end entity;
architecture bhv of freq_c is
signal cnt1 , cnt0 : integer range 0 to 9999;
begin
process(clk)
begin
if(clk'event and clk='1')then
if (x='1')then
cnt1<=cnt1+1;
stop0<=cnt0;
cnt0<=0;
elsif (x='0')then
cnt0<=cnt0+1 ;
stop1<=cnt1;
cnt1<=0;
end if;
end if;
end process;
end bhv;