在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

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

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

硬件攻城獅 ? 來源:CSDN技術(shù)社區(qū) ? 2022-12-26 16:25 ? 次閱讀

當(dāng)按下和釋放微動(dòng)按鍵時(shí),會(huì)由短時(shí)間的抖動(dòng)現(xiàn)象才會(huì)到達(dá)想要的狀態(tài)。如下圖所示:

49d0ca52-84f0-11ed-bfe3-dac502259ad0.jpg

從上圖可知。按鍵抖動(dòng)時(shí)間大概為150us。

在一些對(duì)按鍵抖動(dòng)敏感的情況下需要進(jìn)行消抖設(shè)計(jì),目前常見的消抖設(shè)計(jì)如下:

濾波電容

關(guān)于去抖硬件最簡單的方式并聯(lián)一顆100nF陶瓷電容,進(jìn)行濾波處理。

49e863ce-84f0-11ed-bfe3-dac502259ad0.jpg

RC濾波+施密特觸發(fā)器

要想更嚴(yán)謹(jǐn)設(shè)計(jì)消抖電路,會(huì)增加施密特觸發(fā)器,更大程度的保證后端不受按鍵抖動(dòng)影響,電路如下:

49fa8d9c-84f0-11ed-bfe3-dac502259ad0.jpg

分別來看按鍵閉合斷開時(shí)電路狀態(tài):

4a11d312-84f0-11ed-bfe3-dac502259ad0.jpg

開關(guān)打開時(shí):

電容C1通過R1 D1回路充電,Vb電壓=Vcc-0.7為高電平,后通過反向施密特觸發(fā)器使Vout輸出為低。

開關(guān)閉合時(shí):

電容C1通過R2進(jìn)行放電,最后Vb電壓變?yōu)?,通過反向施密特觸發(fā)器使Vout輸出為高。

當(dāng)按下按鍵出現(xiàn)快速抖動(dòng)現(xiàn)象時(shí),通過電容會(huì)使Vb點(diǎn)電壓快速變成Vcc或GND。在抖動(dòng)過程時(shí)對(duì)電容會(huì)有輕微的充電或放電,但后端的施密特觸發(fā)器有遲滯效果不會(huì)導(dǎo)致Vout發(fā)現(xiàn)抖動(dòng)現(xiàn)象。

此電路中D1的使用使為了限制R1 R2一起給C1供電,增加充電時(shí)間影響效果。如果減小R1的值會(huì)使電流增加,功耗較高。

專用消抖芯片

一些廠家會(huì)提供專用芯片,避免自搭電路的不穩(wěn)定性, 如美信-Max6816:

4a25d0d8-84f0-11ed-bfe3-dac502259ad0.jpg

軟件濾波

軟件消除抖動(dòng)也是很常見的方式,一般形式是延時(shí)查詢按鍵狀態(tài)或者中斷形式來消除抖動(dòng)。

下面是Arduino的軟件消抖代碼:

/* SoftwareDebounce

*

* At each transition from LOW to HIGH or from HIGH to LOW

* the input signal is debounced by sampling across

* multiple reads over several milli seconds. The input

* is not considered HIGH or LOW until the input signal

* has been sampled for at least "debounce_count" (10)

* milliseconds in the new state.

*

* Notes:

* Adjust debounce_count to reflect the timescale

* over which the input signal may bounce before

* becoming steady state

*

* Based on:

* http://www.arduino.cc/en/Tutorial/Debounce

*

* Jon Schlueter

* 30 December 2008

*

* http://playground.arduino.cc/Learning/SoftwareDebounce

*/

int inPin = 7; // the number of the input pin

int outPin = 13; // the number of the output pin

int counter = 0; // how many times we have seen new value

int reading; // the current value read from the input pin

int current_state = LOW; // the debounced input value

// the following variable is a long because the time, measured in milliseconds,

// will quickly become a bigger number than can be stored in an int.

long time = 0; // the last time the output pin was sampled

int debounce_count = 10; // number of millis/samples to consider before declaring a debounced input

void setup()

{

pinMode(inPin, INPUT);

pinMode(outPin, OUTPUT);

digitalWrite(outPin, current_state); // setup the Output LED for initial state

}

void loop()

{

// If we have gone on to the next millisecond

if(millis() != time)

{

reading = digitalRead(inPin);

if(reading == current_state && counter > 0)

{

counter--;

}

if(reading != current_state)

{

counter++;

}

// If the Input has shown the same value for long enough let's switch it

if(counter >= debounce_count)

{

counter = 0;

current_state = reading;

digitalWrite(outPin, current_state);

}

time = millis();

}

}

審核編輯:湯梓紅

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

    關(guān)注

    19

    文章

    3138

    瀏覽量

    93727
  • 濾波電容
    +關(guān)注

    關(guān)注

    8

    文章

    458

    瀏覽量

    40079
  • 抖動(dòng)
    +關(guān)注

    關(guān)注

    1

    文章

    69

    瀏覽量

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

    關(guān)注

    4

    文章

    223

    瀏覽量

    57616

原文標(biāo)題:開關(guān)抖動(dòng)及消除

文章出處:【微信號(hào):mcu168,微信公眾號(hào):硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如何實(shí)現(xiàn)軟件與硬件的開關(guān)抖動(dòng)設(shè)計(jì)

    開關(guān)、磁性開關(guān)和磁簧開關(guān)以及繼電器等。所有開關(guān)都有一個(gè)共同點(diǎn):就是有抖動(dòng)。這就是它們的工作方式。 通常情況下,這種
    的頭像 發(fā)表于 03-04 14:03 ?4387次閱讀

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

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

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

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

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

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

    如何消除無刷電機(jī)的靜態(tài)抖動(dòng)

    換相脈寬采集是什么?無刷電機(jī)PID的運(yùn)算時(shí)間如何定?如何消除無刷電機(jī)的靜態(tài)抖動(dòng)
    發(fā)表于 08-09 06:52

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

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

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

    按鍵抖動(dòng):在機(jī)械按鍵的觸點(diǎn)閉合和斷開時(shí),都會(huì)產(chǎn)生抖動(dòng),為了保證系統(tǒng)能正確識(shí)別按鍵的開關(guān),就必須對(duì)按鍵的抖動(dòng)進(jìn)行處理。按鍵的抖動(dòng)對(duì)于人類來說是
    發(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

    sr鎖存器是如何消除脈沖抖動(dòng)的?

    數(shù)電分析,電平從高到低再到高的過程,sr鎖存器是如何消除脈沖抖動(dòng)的?
    發(fā)表于 04-26 11:00

    請(qǐng)問sr鎖存器是如何消除脈沖抖動(dòng)的?

    數(shù)電分析,電平從高到低再到高的過程,sr鎖存器是如何消除脈沖抖動(dòng)的?
    發(fā)表于 05-10 15:03

    模擬開關(guān)型防抖動(dòng)電路

    模擬開關(guān)型防抖動(dòng)電路
    發(fā)表于 09-11 14:14 ?10次下載
    模擬<b class='flag-5'>開關(guān)</b>型防<b class='flag-5'>抖動(dòng)</b>電路

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

    按鍵作為一種機(jī)械開關(guān),在進(jìn)行按鍵操作時(shí),機(jī)械接觸點(diǎn)的彈性及電壓突變等原因,在機(jī)械開關(guān)合閉的時(shí)候會(huì)出現(xiàn)電壓抖動(dòng),因此在實(shí)際的應(yīng)用當(dāng)中需要做一定的處理。
    的頭像 發(fā)表于 04-27 09:55 ?1707次閱讀
    按鍵<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ì)與制造中,消除按鍵抖動(dòng)是非常重要的一個(gè)問題。為了解決這個(gè)問題,工程師們引入了RS觸發(fā)器。 第一部分:按鍵
    的頭像 發(fā)表于 11-17 15:53 ?2244次閱讀

    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 ?1458次閱讀

    CDCM7005高性能時(shí)鐘同步器和抖動(dòng)消除器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《CDCM7005高性能時(shí)鐘同步器和抖動(dòng)消除器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 08-21 11:44 ?0次下載
    CDCM7005高性能時(shí)鐘同步器和<b class='flag-5'>抖動(dòng)</b><b class='flag-5'>消除</b>器數(shù)據(jù)表
    主站蜘蛛池模板: 免费观看一级一片| 黄色国产精品| a爱视频| 91久久青草精品38国产| 亚洲一区二区三区免费观看| 免费在线观看视频网站| 久久理论片| 黄乱色伦| 免费人成网ww44kk44| 一区二区三区久久| 国产成人乱码一区二区三区| 黄视频网站在线| 亚洲a成人| 在线中文字幕第一页| www.激情五月| 中文字幕在线观看一区二区三区| 欧美视频一区二区三区在线观看| 在线成人免费| 日本三级电影在线观看| 久久久噜久噜久久gif动图| 风流护士| 色婷婷狠狠干| 久久久黄色片| 免费高清在线视频色yeye| 久久精品在| 三级黄色在线| 国产精品三区四区| 天天操天天射天天舔| 1024你懂的国产精品| 啪啪调教所29下拉式免费阅读| 亚洲成人高清在线观看| 欧美1区| 亚洲精品福利视频| 特黄免费| 欧洲性开放大片免费观看视频| 久久伊人色| 播播开心激情网| 99色网站| 久久久久久天天夜夜天天| 欧美一级片在线视频| 国产精品一区二区三区四区五区|