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

📄 dynamic_sweep.vhd

📁 很好很强大的eda动态扫描程序
💻 VHD
字号:
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
ENTITY dynamic_sweep IS
	PORT(
		clk 	: IN	STD_LOGIC;
		data_in : IN    STD_LOGIC_VECTOR(31 downto 0);		--显示数据输入
		DIG		: OUT	STD_LOGIC_VECTOR(7 downto 0);    --位线
		SEG		: OUT	STD_LOGIC_VECTOR(7 downto 0));	--段线
END dynamic_sweep;

ARCHITECTURE a OF dynamic_sweep IS
	SIGNAL count 		: STD_LOGIC_VECTOR(2 downto 0);
	SIGNAL seg_mid  	: STD_LOGIC_VECTOR(3 downto 0);
	
BEGIN

clk1_label:
	PROCESS (clk)
	BEGIN
	IF clk'event and clk='1' THEN
  	count<=count+1;
	END IF;
END PROCESS clk1_label;


DIG<="11111110" when count="000" else
	  "11111101" when count="001" else
	  "11111011" when count="010" else
	  "11110111" when count="011" else
	  "11101111" when count="100" else
	  "11011111" when count="101" else
	  "10111111" when count="110" else
	  "01111111" ;

seg_mid<=data_in(3 downto 0)when count="000" else
	  data_in(7 downto 4)   when count="001" else
	  data_in(11 downto 8)  when count="010" else
	  data_in(15 downto 12) when count="011" else
	  data_in(19 downto 16) when count="100" else
	  data_in(23 downto 20) when count="101" else
	  data_in(27 downto 24) when count="110" else
	  data_in(31 downto 28) ;


WITH seg_mid select
	SEG  <="11000000" WHEN "0000",
		   "11111001" WHEN "0001",
		   "10100100" WHEN "0010",
		   "10110000" WHEN "0011",
		   "10011001" WHEN "0100",
		   "10010010" WHEN "0101",
		   "10000011" WHEN "0110",
		   "11111000" WHEN "0111",
		   "10000000" WHEN "1000",
		   "10011000" WHEN OTHERS;
		
		
		

END a;


⌨️ 快捷键说明

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