vhdl分频器设计
发布网友
发布时间:2022-04-24 11:35
我来回答
共1个回答
热心网友
时间:2022-05-12 22:57
LIBRARY ieee;
USE ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
ENTITY counter IS
PORT
( clock: IN STD_LOGIC ;
q1khz: BUFFER STD_LOGIC;
q1hz: OUT STD_LOGIC);
END counter;
ARCHITECTURE bhv OF counter IS
BEGIN
KHZ:PROCESS(clock)
VARIABLE cout:INTEGER:=0;
BEGIN
IF clock'EVENT AND clock='1' THEN
cout:=cout+1;
IF cout<=500 THEN q1khz<='0';
ELSIF cout<1000 THEN q1khz<='1';
ELSE cout:=0;
END IF;
END IF;
END PROCESS;
HZ:PROCESS(q1khz)
VARIABLE cout:INTEGER:=0;
BEGIN
IF q1khz'EVENT AND q1khz='1' THEN
cout:=cout+1;
IF cout<=500 THEN q1hz<='0';
ELSIF cout<1000 THEN q1hz<='1';
ELSE cout:=0;
END IF;
END IF;
END PROCESS;
END bhv;
我测试过可以用的