clockcontroll.vhd
来自「大学vhdl语言实验大全,基于max-plus2平台,内有8-3译码器,8位加法」· VHDL 代码 · 共 45 行
VHD
45 行
-- MAX+plus II VHDL
-- Clearable clockcontroll
LIBRARY ieee;
USE ieee.std_logic_1164.all;
ENTITY clockcontroll IS
PORT(co,res : IN STD_LOGIC;
q : out STD_LOGIC_VECTOR(3 downto 0);
ewgreen,ewyellow,ewred,sngreen,snyellow,snred : out STD_LOGIC;
spark : out STD_LOGIC);
END clockcontroll;
ARCHITECTURE aaa OF clockcontroll IS
BEGIN
P1:process(co,res)
variable state : integer range 0 to 3;
begin
if(res='0')then state:=0;ewgreen<='1';ewyellow<='0';ewred<='0';sngreen<='0';snyellow<='0';snred<='1';
q<="0101";spark<='0';
elsif(co='1' and co'event )then
if(state=0)then state:=1;
elsif(state=1)then state:=2;
elsif(state=2)then state:=3;
elsif(state=3)then state:=0;
end if;
if(state=0)then ewgreen<='1';ewyellow<='0';ewred<='0';sngreen<='0';snyellow<='0';snred<='1';
q<="0101";spark<='0';
elsif(state=1)then ewgreen<='1';ewyellow<='1';ewred<='0';sngreen<='0';snyellow<='0';snred<='1';
q<="0011";spark<='1';
elsif(state=2)then ewgreen<='0';ewyellow<='0';ewred<='1';sngreen<='1';snyellow<='0';snred<='0';
q<="0101";spark<='0';
elsif(state=3)then ewgreen<='0';ewyellow<='0';ewred<='1';sngreen<='1';snyellow<='1';snred<='0';
q<="0011";spark<='1';
end if;
else NULL;
end if;
end process;
END aaa;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?