❶ 消抖器在proteus中怎麼找
第一個是虛擬終端,先點左邊工具條中的虛擬儀器,列表中的第四個就是。第二個是串口組件,直接查找COMPIM就找到了。第三個是MAX232,也找這個型號就找到
❷ 點動開關的消抖電路是怎樣的一種電路
要用RC電路延時,關鍵在選擇適當的時間常數。一般按10—15毫秒設計,使用時感覺不到延時版。具體電路是權反相器輸入端到地並聯電阻電容(可選5K2μ),輸入端再接按鍵串聯電阻(5K)到5v。
鍵盤消抖軟體也是按延時12 毫秒編程的。
❸ 常用的按鍵消抖方法有哪些分別用什麼方法來實現
按鍵的消抖,可用硬體或軟體兩種方法。
1、硬體消抖
在鍵數較少時可用硬體方法消除鍵抖動。硬體消抖的典型做法是:採用R-S觸發器或RC積分電路。
雙穩態消抖
電路的工作過程如下:當按鍵未按下時,a=0,b=1,輸出A=1,B=0。當按鍵按下時,按鍵的機械彈性作用使按鍵產生前沿抖動。當釋放按鍵時,按鍵的機械彈性作用使按鍵產生後沿抖動。
濾波消抖
電路的工作過程如下:當按鍵未按下時,電容C兩端的電壓為V,非門輸出為1。當按鍵按下時,由於電容C兩端的電壓不能突變,因此即使在接觸過程中出現抖動,只要C兩端的充電電壓波動不超過非門的開啟電壓(TTL為0.8V左右),非門的輸出就不會改變(可通過選取合適的R1、R2和C的值來實現)。
當按鍵斷開時,即使出現抖動,由於C兩端的電壓不能突變(它要經過R2放電),因此只要C兩端的放電電壓波動不超過非門的關閉電壓,非門的輸出就不會改變所以,RC電路濾波消抖成敗的關鍵在於R1、R2和C時間常數的選取。
必須保證C由穩態電壓充電到開啟電壓或放電到關閉電壓的延遲時間大於或等於10ms。參數的數值可由計算或實驗確定,圖中的參數僅供參考。若釆用輸入端有施密特觸發特性的門電路,則效果更好。
2、軟體消抖
實現方法:假設未按鍵時輸入1,按鍵後輸入為0,抖動時不定。可以做以下檢測:檢測到按鍵輸入為0之後,延時5ms~10ms,再次檢測,如果按鍵還為0,那麼就認為有按鍵輸入。
延時的5ms~10ms恰好避開了抖動期,從而消除了前沿抖動的影響同理,在檢測到按鍵釋放後,再延時5~10ms,消除後沿抖動,然後再對鍵值進行處理。不過一般情況下,我們通常不對按鍵釋放的後沿進行處理,實踐證明,這樣也能滿足一定的要求。
(3)消抖電路圖擴展閱讀
在機械按鍵的觸點閉合和斷開時,都會產生抖動,為了保證系統能正確識別按鍵的開關,就必須對按鍵的抖動進行處理。
按鍵的抖動對於人類來說是感覺不到的,但對單片機來說,則是完全可以感應到的,而且還是一個很「漫長」的過程,因為單片機處理的速度在「微秒」級,而按鍵抖動的時間至少在「毫秒」級。
單片機如果在觸點抖動期間檢測按鍵的通斷狀態,則可能導致判斷出錯,即按鍵一次按下或釋放被錯誤地認為是多次操作,從而引起誤處理。因此,為了確保單片機對一次按鍵動作只作—次響應,就必須考慮如何消除按鍵抖動的影響。
❹ 單片機的軟體消抖什麼意思
你這是用於按鍵消抖的代碼。
通常的按鍵所用開關為機械彈性開關,當機械觸點斷開、閉合時,由於機械觸點的彈性作用,一個按鍵開關在閉合時不會馬上穩定地接通,在斷開時也不會一下子斷開。因而在閉合及斷開的瞬間均伴隨有一連串的抖動,為了不產生這種現象而作的措施就是按鍵消抖。
抖動時間的長短由按鍵的機械特性決定,一般為5ms~10ms。這是一個很重要的時間參數,在很多場合都要用到。
按鍵穩定閉合時間的長短則是由操作人員的按鍵動作決定的,一般為零點幾秒至數秒。鍵抖動會引起一次按鍵被誤讀多次。為確保CPU對鍵的一次閉合僅作一次處理,必須去除鍵抖動。在鍵閉合穩定時讀取鍵的狀態,並且必須判別到鍵釋放穩定後再作處理。
按鍵按下至松開的波形如下圖所示:
如果按鍵較多,常用軟體方法去抖,即檢測出鍵閉合後執行一個延時程序,5ms~10ms的延時,讓前沿抖動消失後再一次檢測鍵的狀態,如果仍保持閉合狀態電平,則確認為真正有鍵按下。當檢測到按鍵釋放後,也要給5ms~10ms的延時,待後沿抖動消失後才能轉入該鍵的處理程序。
❺ 數碼管消抖不理解。。。為什麼是P0=0xff;為什麼不是0x00呢;本人菜鳥~!!!
就看你接的電路圖是怎麼樣的哦 如果是共地 則是P0=0X00反之成立哦
❻ 有會用veriloghdl 編寫按鍵消抖的程序么 電路圖如下圖
我以前寫過一個,可以直接用
❼ 51單片機定時器消抖的問題。高手進
ms++;
if(key==0)key_num++;
if(ms==15) //15秒刷新一次
{
if(key_num>10) //15秒鍾如果低電平持續時間大於10秒就認為按鍵按下,而不是抖動
key_statue=1; //按鍵標識位置1
ms=0;
key_num=0;
}
這部分有問題,改為:
if(key==0)
{
key_num++;
}
else
{
key_num=0;
}
if(key_num>10) //如果低電平持續時間大於10ms就認為按鍵按下,而不是抖動
{
key_statue=1; //按鍵標識位置1
}
❽ 請問第一個圖時候具有硬體按鍵消抖動功能,如果有那麼怎麼消的
按鍵消除抖動用硬體的方法是單穩態電路,或者採用專用晶元,而單片機本身是智能回晶元,用軟體消除抖動是最答佳選擇,這樣性價比高,可靠性也高,多用一個器件就多一份成本,多一個故障點,設計智能化產品的原則是優先考慮採用軟體解決問題。一般是結合動態掃描顯示功能,編一個子程序來處理,因為動態顯示與消除抖動都是幾十毫秒的時間間隔,可以很好地融合在一起處理,提高單片機的效率。掃描到有鍵按下,先去執行顯示部分的程序,回頭再次讀入按鍵,確認後轉入鍵解碼程序。單純利用延時子程序等待抖動消失,單片機豈不是有點傻呼呼的?
❾ 單片機按鍵消抖硬體加什麼
加個104的電容就好了
❿ 在硬體電路中如何簡便的實現消抖
基本都是通過軟體來消抖得,硬體消抖成本高就不劃算了。
同樣可以通過延時加邏輯器件實現,基本沒有必要,所以不想畫圖圖了,不知道是否滿意。