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

📄 dled.vhd

📁 能够实现小时(24进制)、分钟和秒钟(60进制)的计数功能 具有复位功能 功能扩展:具有整点报时提示、定时闹钟等功能
💻 VHD
字号:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY DLED IS
	PORT( 
		  hou:  IN STD_LOGIC_VECTOR(4 DOWNTO 0);
		  min:  IN STD_LOGIC_VECTOR(5 DOWNTO 0);
		  sec:  IN STD_LOGIC_VECTOR(5 DOWNTO 0);
		  oLHou: OUT STD_LOGIC_VECTOR(13 DOWNTO 0);
		  oLMin: OUT STD_LOGIC_VECTOR(13 DOWNTO 0);
		  oLSec: OUT STD_LOGIC_VECTOR(13 DOWNTO 0));
END DLED;

ARCHITECTURE run OF DLED IS
BEGIN
SHH:PROCESS(hou)
	BEGIN
		CASE hou IS
		WHEN "00000" => oLHou <="10000001000000";
		WHEN "00001" => oLHou <="10000001111001";
		WHEN "00010" => oLHou <="10000000100100";
		WHEN "00011" => oLHou <="10000000110000";
		WHEN "00100" => oLHou <="10000000011001";
		WHEN "00101" => oLHou <="10000000010010";
		WHEN "00110" => oLHou <="10000000000010";
		WHEN "00111" => oLHou <="10000001111000";
		WHEN "01000" => oLHou <="10000000000000";
		WHEN "01001" => oLHou <="10000000010000";
		WHEN "01010" => oLHou <="11110011000000";
		WHEN "01011" => oLHou <="11110011111001";
		WHEN "01100" => oLHou <="11110010100100";
		WHEN "01101" => oLHou <="11110010110000";
		WHEN "01110" => oLHou <="11110010011001";
		WHEN "01111" => oLHou <="11110010010010";
		WHEN "10000" => oLHou <="11110010000010";
		WHEN "10001" => oLHou <="11110011111000";
		WHEN "10010" => oLHou <="11110010010000";
		WHEN "10011" => oLHou <="11110011000000";
		WHEN "10100" => oLHou <="01001001000000";
		WHEN "10101" => oLHou <="01001001111001";
		WHEN "10110" => oLHou <="01001000100100";
		WHEN "10111" => oLHou <="01001000110000";
		WHEN OTHERS => NULL;
		END CASE;
	END PROCESS;
SHM:PROCESS(min)
		BEGIN
		CASE min IS
		WHEN "000000" => oLMin <="10000001000000";
		WHEN "000001" => oLMin <="10000001111001";
		WHEN "000010" => oLMin <="10000000100100";
		WHEN "000011" => oLMin <="10000000110000";
		WHEN "000100" => oLMin <="10000000011001";
		WHEN "000101" => oLMin <="10000000010010";
		WHEN "000110" => oLMin <="10000000000010";
		WHEN "000111" => oLMin <="10000001111000";
		WHEN "001000" => oLMin <="10000000000000";
		WHEN "001001" => oLMin <="10000000010000";
		WHEN "001010" => oLMin <="11110011000000";
		WHEN "001011" => oLMin <="11110011111001";
		WHEN "001100" => oLMin <="11110010100100";
		WHEN "001101" => oLMin <="11110010110000";
		WHEN "001110" => oLMin <="11110010011001";
		WHEN "001111" => oLMin <="11110010010010";
		WHEN "010000" => oLMin <="11110010000010";
		WHEN "010001" => oLMin <="11110011111000";
		WHEN "010010" => oLMin <="11110010010000";
		WHEN "010011" => oLMin <="11110011000000";
		WHEN "010100" => oLMin <="01001001000000";
		WHEN "010101" => oLMin <="01001001111001";
		WHEN "010110" => oLMin <="01001000100100";
		WHEN "010111" => oLMin <="01001000110000";
		WHEN "011000" => oLMin <="01001000011001";
		WHEN "011001" => oLMin <="01001000010010";
		WHEN "011010" => oLMin <="01001000000010";
		WHEN "011011" => oLMin <="01001001111000";
		WHEN "011100" => oLMin <="01001000000000";
		WHEN "011101" => oLMin <="01001000010000";
		WHEN "011110" => oLMin <="01100001000000";
		WHEN "011111" => oLMin <="01100001111001";
		WHEN "100000" => oLMin <="01100000100100";
		WHEN "100001" => oLMin <="01100000110000";
		WHEN "100010" => oLMin <="01100000011001";
		WHEN "100011" => oLMin <="01100000010010";
		WHEN "100100" => oLMin <="01100000000010";
		WHEN "100101" => oLMin <="01100001111000";
		WHEN "100110" => oLMin <="01100000000000";
		WHEN "100111" => oLMin <="01100000010000";
		WHEN "101000" => oLMin <="00110011000000";
		WHEN "101001" => oLMin <="00110011111001";
		WHEN "101010" => oLMin <="00110010100100";
		WHEN "101011" => oLMin <="00110010110000";
		WHEN "101100" => oLMin <="00110010011001";
		WHEN "101101" => oLMin <="00110010010010";
		WHEN "101110" => oLMin <="00110010000010";
		WHEN "101111" => oLMin <="00110011111000";
		WHEN "110000" => oLMin <="00110010000000";
		WHEN "110001" => oLMin <="00110010010000";
		WHEN "110010" => oLMin <="00100101000000";
		WHEN "110011" => oLMin <="00100101111001";
		WHEN "110100" => oLMin <="00100100100100";
		WHEN "110101" => oLMin <="00100100110000";
		WHEN "110110" => oLMin <="00100100011001";
		WHEN "110111" => oLMin <="00100100010010";
		WHEN "111000" => oLMin <="00100100000010";
		WHEN "111001" => oLMin <="00100101111000";
		WHEN "111010" => oLMin <="00100100000000";
		WHEN "111011" => oLMin <="00100100010000";
		WHEN OTHERS => NULL;
		END CASE;
	END PROCESS;
SHS:PROCESS(sec)
	BEGIN
		CASE sec IS
		WHEN "000000" => oLSec <="10000001000000";
		WHEN "000001" => oLSec <="10000001111001";
		WHEN "000010" => oLSec <="10000000100100";
		WHEN "000011" => oLSec <="10000000110000";
		WHEN "000100" => oLSec <="10000000011001";
		WHEN "000101" => oLSec <="10000000010010";
		WHEN "000110" => oLSec <="10000000000010";
		WHEN "000111" => oLSec <="10000001111000";
		WHEN "001000" => oLSec <="10000000000000";
		WHEN "001001" => oLSec <="10000000010000";
		WHEN "001010" => oLSec <="11110011000000";
		WHEN "001011" => oLSec <="11110011111001";
		WHEN "001100" => oLSec <="11110010100100";
		WHEN "001101" => oLSec <="11110010110000";
		WHEN "001110" => oLSec <="11110010011001";
		WHEN "001111" => oLSec <="11110010010010";
		WHEN "010000" => oLSec <="11110010000010";
		WHEN "010001" => oLSec <="11110011111000";
		WHEN "010010" => oLSec <="11110010010000";
		WHEN "010011" => oLSec <="11110011000000";
		WHEN "010100" => oLSec <="01001001000000";
		WHEN "010101" => oLSec <="01001001111001";
		WHEN "010110" => oLSec <="01001000100100";
		WHEN "010111" => oLSec <="01001000110000";
		WHEN "011000" => oLSec <="01001000011001";
		WHEN "011001" => oLSec <="01001000010010";
		WHEN "011010" => oLSec <="01001000000010";
		WHEN "011011" => oLSec <="01001001111000";
		WHEN "011100" => oLSec <="01001000000000";
		WHEN "011101" => oLSec <="01001000010000";
		WHEN "011110" => oLSec <="01100001000000";
		WHEN "011111" => oLSec <="01100001111001";
		WHEN "100000" => oLSec <="01100000100100";
		WHEN "100001" => oLSec <="01100000110000";
		WHEN "100010" => oLSec <="01100000011001";
		WHEN "100011" => oLSec <="01100000010010";
		WHEN "100100" => oLSec <="01100000000010";
		WHEN "100101" => oLSec <="01100001111000";
		WHEN "100110" => oLSec <="01100000000000";
		WHEN "100111" => oLSec <="01100000010000";
		WHEN "101000" => oLSec <="00110011000000";
		WHEN "101001" => oLSec <="00110011111001";
		WHEN "101010" => oLSec <="00110010100100";
		WHEN "101011" => oLSec <="00110010110000";
		WHEN "101100" => oLSec <="00110010011001";
		WHEN "101101" => oLSec <="00110010010010";
		WHEN "101110" => oLSec <="00110010000010";
		WHEN "101111" => oLSec <="00110011111000";
		WHEN "110000" => oLSec <="00110010000000";
		WHEN "110001" => oLSec <="00110010010000";
		WHEN "110010" => oLSec <="00100101000000";
		WHEN "110011" => oLSec <="00100101111001";
		WHEN "110100" => oLSec <="00100100100100";
		WHEN "110101" => oLSec <="00100100110000";
		WHEN "110110" => oLSec <="00100100011001";
		WHEN "110111" => oLSec <="00100100010010";
		WHEN "111000" => oLSec <="00100100000010";
		WHEN "111001" => oLSec <="00100101111000";
		WHEN "111010" => oLSec <="00100100000000";
		WHEN "111011" => oLSec <="00100100010000";
		WHEN OTHERS => NULL;
		END CASE;
	END PROCESS;
END run;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -