用VHDL編寫簡單的按鍵消抖程序

一般按鍵延時在20ms左右,根據(jù)時鐘頻率決定你的計數(shù)范圍。程序非常簡單,但經(jīng)常用到,對于FPGA初學(xué)者要好好學(xué)習(xí)這部分。

library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;

entity reseter is
port(clk,reset_in:in std_logic;           --按鍵按下時為0
     reset_out:out std_logic:='0');
      end reseter;

architecture behav of reseter is

begin

PROCESS(clk,reset_in) 
  VARIABLE COUNT1 :INTEGER RANGE 0 TO 100000; 
BEGIN 
IF reset_in='0' THEN 
   IF RISING_EDGE(clk) THEN
    IF COUNT1<10000 THEN COUNT1:=COUNT1+1; 
    ELSE COUNT1:=COUNT1; END IF; 
    IF COUNT1<=9999 THEN reset_out<='1'; 
    ELSE reset_out<='0'; END IF; 
  END IF; 
ELSE COUNT1:=0;
     reset_out<='1';
END IF; 
END PROCESS ;
end behav;```
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一個計數(shù)器通常是由一組觸發(fā)器構(gòu)成,該組觸發(fā)器按照預(yù)先給定的順序改變其狀態(tài),如果所有觸發(fā)器的狀態(tài)改變是在同一時鐘脈沖...
    錦穗閱讀 15,175評論 0 6
  • 姓名:徐嬌 學(xué)號:17011210547 轉(zhuǎn)自 http://mp.weixin.qq.com/s/WNigJh...
    徐Jiao閱讀 2,435評論 0 3
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,741評論 25 709
  • 南方在經(jīng)歷了一個夏天的持續(xù)高溫后,隨著副高南撤,又進入了陰雨綿綿天。讓我在夏日蟄伏后,也難以出門釋放身心。于是乎,...
    惠在遠方閱讀 942評論 0 1
  • 曾經(jīng)我們認為 遇到我們喜歡的人 就應(yīng)該義無反顧的去付出 去愛 去包容和原諒 但往往事與愿違 任何一種縱容換來的不是...
    Indy閱讀 2,508評論 1 2

友情鏈接更多精彩內(nèi)容