📄 counter.vhd
字号:
-- en,clr,接SW1,SW2
-- clk PIN28,(将IO_CLK与IO3相连,调节EDA_VI右边的拨码SW17--SW20,使输出1Hz时钟)
-- Q IO9--IO12 ,co IO13
-- VGA 4位功能选择位
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_ARITH.ALL;
ENTITY counter IS
PORT(clr,en,clk: IN STD_LOGIC;
co : OUT STD_LOGIC;
Q : OUT STD_ULOGIC_VECTOR(3 DOWNTO 0);
VGA : OUT STD_ULOGIC_VECTOR(3 DOWNTO 0)
);
END counter;
ARCHITECTURE counter1 OF counter IS
SIGNAL qs: STD_LOGIC_VECTOR(3 DOWNTO 0);
SIGNAL ca: STD_ULOGIC;
BEGIN
VGA <= "0001";
PROCESS(clk)
VARIABLE q10:INTEGER;
BEGIN
IF(rising_edge(clk)) THEN
IF(clr='1') THEN
q10:=0;
ELSIF(en='1') THEN
IF(q10=9) THEN
q10:=0;
ca<='0';
ELSIF(q10=8) THEN
q10:=q10+1;
ca<='1';
ELSE
q10:=q10+1;
ca<='0';
END IF;
END IF;
END IF;
qs<=CONV_STD_LOGIC_VECTOR(q10,4);
Q<= not TO_STDULOGICVECTOR(qs); --LED底电平点亮,所以取反
END PROCESS;
co<= not (ca AND en); --LED底电平点亮,所以取反
END counter1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -