⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dial1.vhd

📁 vhdl经典源代码——键盘接口设计
💻 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 + -