chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒ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。

在一些對按鍵抖動(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í)對電容會(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)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 開關(guān)
    +關(guān)注

    關(guān)注

    19

    文章

    3282

    瀏覽量

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

    關(guān)注

    8

    文章

    459

    瀏覽量

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

    關(guān)注

    1

    文章

    69

    瀏覽量

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

    關(guān)注

    4

    文章

    227

    瀏覽量

    58068

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

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎ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 ?4747次閱讀

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

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

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

      按鍵也是機(jī)械裝置,在按下或放開的一瞬間會(huì)產(chǎn)生抖動(dòng),如下圖:    消除方法有兩種:  軟件除抖和硬件除抖,其中硬件除抖是應(yīng)用了電容對高頻信號(hào)短路的原理?! ≤浖妒菣z測出鍵閉合后執(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),就必須對按鍵的抖動(dòng)進(jìn)行處理。按鍵的抖動(dòng)對于人類來說是
    發(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

    請問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 ?1987次閱讀
    按鍵<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 ?3069次閱讀

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

    在FPGA(現(xiàn)場可編程門陣列)設(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 ?2782次閱讀

    14路差分輸出時(shí)鐘抖動(dòng)消除器SC6302,兼容HMC7044

    14路差分輸出時(shí)鐘抖動(dòng)消除器SC6302,兼容HMC7044
    的頭像 發(fā)表于 03-05 10:18 ?415次閱讀
    14路差分輸出時(shí)鐘<b class='flag-5'>抖動(dòng)</b><b class='flag-5'>消除</b>器SC6302,兼容HMC7044