我是VHDL的新手。我從這個代碼得到了如何從24MHz的輸入時鐘信號產生1Hz(50%佔空比)的時鐘信號。我有一些問題需要更多澄清。VHDL時鐘分頻器:計數器 - 佔空比
- 如何選擇櫃檯限制?在下面的情況下,12000000.如果我想產生一個8Hz的時鐘信號,這個極限是什麼 。
如果我想將佔空比 更改爲80%,應如何調整代碼?
library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity clock is port (CLKin: in std_logic; reset: in std_logic; CLKout: out std_logic); end clock; architecture arch of clock is signal counter: integer:=0; signal temp : std_logic := '1'; begin process(CLKin,counter,reset) begin if(reset='0') then counter<=0; temp<='1'; elsif(CLKin'event and CLKin='1') then counter <=counter+1; if (counter = 12000000) then temp <= NOT temp; counter<=0; end if; end if; CLKout <= temp; end process; end arch;