📄 dial1.vhd
字号:
--用数码管显示拨码开关状态的十六进值
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY dial1 IS
PORT (
clk : IN std_logic;
rst : IN std_logic;
datain : IN std_logic_vector(3 downto 0);
dataout : OUT std_logic_vector(7 DOWNTO 0); --各段数据输出
en : OUT std_logic_vector(5 DOWNTO 0)); --COM使能输出
END dial1;
ARCHITECTURE arch OF dial1 IS
signal cnt_scan : std_logic_vector(15 downto 0 );
signal data4 : std_logic_vector(3 downto 0);
signal qout : std_logic_vector(7 downto 0);
begin
dataout<=qout;
en<="000001";
process(clk,rst)
begin
if(rst='0')then
cnt_scan<="0000000000000000";
elsif(clk'event and clk='1')then
cnt_scan<=cnt_scan+1;
end if;
end process;
data4<=datain(3 downto 0);
with data4 select
qout<="00111111" when "0000", --显示0
"00000110" when "0001", --显示1
"01011011" when "0010", --显示2
"01001111" when "0011", --显示3
"01100110" when "0100", --显示4
"01101101" when "0101", --显示5
"01111101" when "0110", --显示6
"00000111" when "0111", --显示7
"01111111" when "1000", --显示8
"01101111" when "1001", --显示9
"01110111" when "1010", --显示A
"01111100" when "1011", --显示B
"00111001" when "1100", --显示C
"01011110" when "1101", --显示D
"01111001" when "1110", --显示E
"01110001" when "1111", --显示f
"11110011" when others;
end arch;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -