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

📄 按键去抖.txt

📁 按键消抖
💻 TXT
字号:
library ieee;                       -- 基于计数法的(4×4矩阵键盘)键盘防抖电路程序
use ieee.std_logic_1164.all;                        

entity antitwritter is
	port(clock:in std_logic;
		 num_in:in integer range 0 to 15;
		 num_out:out integer range 0 to 15);
end entity;

architecture behavior of antitwritter is
	signal temp_num,counter:integer range 0 to 15; --按键的输入输出信息  
	signal start:std_logic;
begin
	process(clock)
		begin
			if clock'event and clock='1' then
				if start='0' then        --上电后立即对输出的键值赋予无效值
					temp_num<=15;    --将15作为无效值
					num_out<=15;     --此无效值视实际情况而定
					start<='1';
				else
					if num_in=temp_num then         --上一键值与此键值不同
						temp_num<=num_in;       --记录此键值
						counter<=0;             --并对计数器清零,准备对此键值计时
					else
						if counter=31 then      --当键值保持31 个时钟周期不变时
							num_out<=num_in;--即确认为有效值,并输出
							counter<=0;
						else
							counter<=counter+1;
						end if;
					end if;
				end if;
			end if;
	end process;
end;   

⌨️ 快捷键说明

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