0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何消除按鍵的抖動(dòng)現(xiàn)象

CHANBAEK ? 來(lái)源:工控小新 ? 作者:工控小新 ? 2023-11-10 11:44 ? 次閱讀

按鍵的介紹:

輕觸開(kāi)關(guān)是一種電子開(kāi)關(guān),使用時(shí).輕輕按開(kāi)關(guān)按鈕就可使開(kāi)關(guān)接通,當(dāng)松開(kāi)手時(shí).開(kāi)關(guān)斷開(kāi)。我們使用的開(kāi)關(guān)如下圖:

在一個(gè)理想的狀態(tài)下,我們按下按鍵就會(huì)使得電位狀態(tài)從低電平編程高電平,高電平編程低電平。

事實(shí)上,按鍵在按下和松開(kāi)的過(guò)程中,會(huì)存在一個(gè)處于中間值的過(guò)程,這個(gè)時(shí)候會(huì)存在一個(gè)抖動(dòng)現(xiàn)象。

為了消除按鍵的抖動(dòng)現(xiàn)象,我們需要對(duì)這一電路進(jìn)行一個(gè)修改。

對(duì)于消抖,我們可以通過(guò)兩個(gè)途徑進(jìn)行消抖

1、硬件消抖:

采用一個(gè)RC延時(shí)充放電的電路進(jìn)行消抖。

工作原理:在RC消抖電路中,電阻起到限制電流流動(dòng)的作用,電容則用來(lái)儲(chǔ)存電荷。當(dāng)輸入信號(hào)發(fā)生變化時(shí),電容會(huì)通過(guò)電阻進(jìn)行充放電,從而實(shí)現(xiàn)對(duì)信號(hào)的平滑處理。通過(guò)合理選擇電阻和電容的數(shù)值,可以達(dá)到最佳的消抖效果。

RC消抖電路的工作方式可以分為兩個(gè)階段:充電階段和放電階段。

1,充電階段:當(dāng)輸入信號(hào)由低電平變?yōu)楦唠娖綍r(shí),電容開(kāi)始充電。由于電容的充電時(shí)間常數(shù)( t=RC),充電過(guò)程并不是瞬間完成的,而是需要一定的時(shí)間。在這個(gè)過(guò)程中,電容會(huì)逐漸儲(chǔ)存電荷,輸出信號(hào)也會(huì)逐漸穩(wěn)定。當(dāng)電容充滿電荷后,輸出信號(hào)達(dá)到穩(wěn)定狀態(tài)。

2.放電階段:當(dāng)輸入信號(hào)由高電平變?yōu)榈碗娖綍r(shí),電容開(kāi)始放電。放電過(guò)程同樣需要一定的時(shí)間,電容會(huì)逐漸釋放電荷。在這個(gè)過(guò)程中,輸出信號(hào)會(huì)逐漸下降,直到達(dá)到低電平。放電過(guò)程的時(shí)間也由RC電路的時(shí)間常數(shù)決定。

圖片

2、軟件消抖:

當(dāng)按鍵被按下時(shí),通過(guò)延時(shí)時(shí)間來(lái)判斷按鍵是否按下(即二次確認(rèn)按鍵的狀態(tài))來(lái)進(jìn)行消抖

圖片

程序編寫:

通過(guò)一個(gè)按鍵來(lái)控制一個(gè)燈的啟停狀態(tài)

#include

typedef unsigned char u8;

typedef unsigned int u16;

sbit led=P2^0;

sbit K1=P3^1;

void delay(u16 i) //延時(shí)函數(shù)

{

while(i--);

}

void key()

{

if(K1==0)

{

delay(1000); //消抖

if(K1==0)

{

led=~led;

}

while(!K1); //判斷按鍵是否松開(kāi)

}

}

void main()

{

while(1)

{

key();

}

}

現(xiàn)象展示:

1、當(dāng)我們按下按鍵時(shí),那么LED燈亮

圖片

2、當(dāng)我們?cè)俅伟聪掳存I時(shí),LED燈熄滅

圖片

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • RC
    RC
    +關(guān)注

    關(guān)注

    0

    文章

    224

    瀏覽量

    48726
  • 電子開(kāi)關(guān)
    +關(guān)注

    關(guān)注

    5

    文章

    107

    瀏覽量

    32795
  • 按鍵
    +關(guān)注

    關(guān)注

    4

    文章

    223

    瀏覽量

    57549
  • 消抖電路
    +關(guān)注

    關(guān)注

    0

    文章

    6

    瀏覽量

    8578
  • 輕觸開(kāi)關(guān)
    +關(guān)注

    關(guān)注

    0

    文章

    62

    瀏覽量

    1312
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    verilog寫cpld的程序如何消除按鍵抖動(dòng)?

    verilog寫cpld的程序如何消除按鍵抖動(dòng)?
    發(fā)表于 04-02 09:22

    關(guān)于按鍵抖動(dòng)問(wèn)題的解決

    電路圖如下,,左側(cè)按鈕按下后給74LS192提供脈沖信號(hào),但實(shí)物焊接時(shí)卻存在按下一次按鈕,192多次計(jì)數(shù)。是因?yàn)檫x用的按鈕存在按鍵抖動(dòng),按下一次按鈕會(huì)提供多個(gè)脈沖信號(hào),讓192多次計(jì)數(shù)嗎?如果是,有什么辦法能消除這種
    發(fā)表于 06-25 02:31

    消除按鍵抖動(dòng)的兩種方法分享

      按鍵也是機(jī)械裝置,在按下或放開(kāi)的一瞬間會(huì)產(chǎn)生抖動(dòng),如下圖:    消除方法有兩種:  軟件除抖和硬件除抖,其中硬件除抖是應(yīng)用了電容對(duì)高頻信號(hào)短路的原理?! ≤浖妒菣z測(cè)出鍵閉合后執(zhí)行一個(gè)延時(shí)
    發(fā)表于 09-02 17:52

    如何通過(guò)軟件編程實(shí)現(xiàn)消除鍵盤的抖動(dòng)

    如何通過(guò)軟件編程實(shí)現(xiàn)消除鍵盤的抖動(dòng)?記文本答:由于按鍵是機(jī)械開(kāi)關(guān)結(jié)構(gòu),所以當(dāng)用手按下其中-一個(gè)鍵時(shí),往往會(huì)出現(xiàn)所按鍵在閉合位置和斷開(kāi)位置之間發(fā)生跳幾下后才會(huì)穩(wěn)定到閉合狀態(tài)的情況。在釋放
    發(fā)表于 07-22 08:24

    單片機(jī)如何消除按鍵抖動(dòng)

    單片機(jī)如何消除按鍵抖動(dòng)?
    發(fā)表于 10-21 09:29

    按鍵抖動(dòng)現(xiàn)象

    C51單片機(jī)入門——按鍵按鍵抖動(dòng)現(xiàn)象按鍵按下后抬起有效按鍵
    發(fā)表于 11-18 09:05

    如何消除按鍵抖動(dòng)的影響

    ,從而引起誤處理。因此,為了確保單片機(jī)對(duì)一次按鍵動(dòng)作只作—次響應(yīng),就必須考慮如何消除按鍵抖動(dòng)的影響。按鍵讀取識(shí)
    發(fā)表于 01-17 07:46

    運(yùn)用外部中斷函數(shù)消除按鍵抖動(dòng)

    目的實(shí)現(xiàn):按鍵數(shù)碼管數(shù)字加減,運(yùn)用外部中斷函數(shù),消除按鍵抖動(dòng)***仿真c代碼#includecode unsigned char SEG[]={0XC0
    發(fā)表于 03-02 06:31

    按鍵彈跳消除模塊的原理及應(yīng)用

    按鍵在數(shù)字電路設(shè)計(jì)中經(jīng)常用到。按鍵的彈跳現(xiàn)象是數(shù)字系統(tǒng)設(shè)計(jì)中存在的客觀問(wèn)題。按鍵是機(jī)械觸點(diǎn),當(dāng)接觸點(diǎn)斷開(kāi)或閉合時(shí)會(huì)產(chǎn)生抖動(dòng)。為使每一次
    發(fā)表于 07-31 09:18 ?3021次閱讀
    <b class='flag-5'>按鍵</b>彈跳<b class='flag-5'>消除</b>模塊的原理及應(yīng)用

    按鍵彈跳消除模塊的程序設(shè)計(jì)與應(yīng)用

    按鍵開(kāi)關(guān)是電子設(shè)備人機(jī)交互的主要器件之一。按鍵大多是機(jī)械式開(kāi)關(guān)結(jié)構(gòu),由于機(jī)械式開(kāi)關(guān)的核心部件為彈性金屬簧片,因而在開(kāi)關(guān)切換的瞬間會(huì)在接觸點(diǎn)出現(xiàn)來(lái)回彈跳的現(xiàn)象。對(duì)于靈敏度比較高的電路,這種彈跳現(xiàn)
    的頭像 發(fā)表于 01-07 08:45 ?2697次閱讀
    <b class='flag-5'>按鍵</b>彈跳<b class='flag-5'>消除</b>模塊的程序設(shè)計(jì)與應(yīng)用

    STM32F407 按鍵抖動(dòng) 延時(shí)消抖

    ,從而引起誤處理。因此,為了確保單片機(jī)對(duì)一次按鍵動(dòng)作只作—次響應(yīng),就必須考慮如何消除按鍵抖動(dòng)的影響。按鍵讀取識(shí)
    發(fā)表于 01-18 10:30 ?4次下載
    STM32F407 <b class='flag-5'>按鍵</b><b class='flag-5'>抖動(dòng)</b> 延時(shí)消抖

    開(kāi)關(guān)抖動(dòng)消除設(shè)計(jì)

    當(dāng)按下和釋放微動(dòng)按鍵時(shí),會(huì)由短時(shí)間的抖動(dòng)現(xiàn)象才會(huì)到達(dá)想要的狀態(tài)。
    的頭像 發(fā)表于 12-26 16:25 ?2521次閱讀

    按鍵抖動(dòng)消除verilog設(shè)計(jì)

    按鍵作為一種機(jī)械開(kāi)關(guān),在進(jìn)行按鍵操作時(shí),機(jī)械接觸點(diǎn)的彈性及電壓突變等原因,在機(jī)械開(kāi)關(guān)合閉的時(shí)候會(huì)出現(xiàn)電壓抖動(dòng),因此在實(shí)際的應(yīng)用當(dāng)中需要做一定的處理。
    的頭像 發(fā)表于 04-27 09:55 ?1644次閱讀
    <b class='flag-5'>按鍵</b><b class='flag-5'>抖動(dòng)</b><b class='flag-5'>消除</b>verilog設(shè)計(jì)

    rs觸發(fā)器消除按鍵抖動(dòng)的原因

    按鍵抖動(dòng)是指由于按鍵接點(diǎn)的不完美接觸而導(dǎo)致的按鍵信號(hào)在短時(shí)間內(nèi)多次跳變的現(xiàn)象。在電子設(shè)備的設(shè)計(jì)與制造中,
    的頭像 發(fā)表于 11-17 15:53 ?1899次閱讀

    FPGA如何消除時(shí)鐘抖動(dòng)

    在FPGA(現(xiàn)場(chǎng)可編程門陣列)設(shè)計(jì)中,消除時(shí)鐘抖動(dòng)是一個(gè)關(guān)鍵任務(wù),因?yàn)闀r(shí)鐘抖動(dòng)會(huì)直接影響系統(tǒng)的時(shí)序性能、穩(wěn)定性和可靠性。以下將詳細(xì)闡述FPGA中消除時(shí)鐘
    的頭像 發(fā)表于 08-19 17:58 ?906次閱讀