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

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

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

Arduino的軟件消抖代碼

GReq_mcu168 ? 來源:CSDN ? 作者:CSDN ? 2022-06-22 14:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

59b96cd8-f12c-11ec-ba43-dac502259ad0.jpg

從上圖可知。按鍵抖動時間大概為150us。

在一些對按鍵抖動敏感的情況下需要進行消抖設計,目前常見的消抖設計如下:

濾波電容

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

59ca12fe-f12c-11ec-ba43-dac502259ad0.jpg

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

要想更嚴謹設計消抖電路,會增加施密特觸發(fā)器,更大程度的保證后端不受按鍵抖動影響,電路如下:

59dafd80-f12c-11ec-ba43-dac502259ad0.jpg

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

59eee214-f12c-11ec-ba43-dac502259ad0.jpg

開關打開時:

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

開關閉合時:

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

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

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

專用消抖芯片

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

59fc1204-f12c-11ec-ba43-dac502259ad0.jpg

軟件濾波

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

下面是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)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 濾波電容
    +關注

    關注

    8

    文章

    461

    瀏覽量

    41461
  • 陶瓷電容
    +關注

    關注

    4

    文章

    466

    瀏覽量

    24879

原文標題:開關抖動及消除

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

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    按鍵的方法

    常用的方法是判斷按鍵按下的時候進行一定的延時,代碼如下: ((KEY==)delay_ms20;whilegpio_get)0;delay_ms20;beep)//蜂鳴器提示音}這種方法簡單易懂
    發(fā)表于 11-27 06:12

    硬件方案元件參數(shù)的計算方法

    硬件是通過電路設計消除機械開關(如按鍵、繼電器等)在閉合或斷開時產(chǎn)生的抖動信號。以下是常見硬件方案及其元件參數(shù)計算方法: 1. RC濾波
    發(fā)表于 11-19 06:31

    音電商 API 接口:音平臺電商活動熱度實時監(jiān)測

    ? 音作為全球領先的短視頻平臺,其電商業(yè)務近年來蓬勃發(fā)展,吸引了眾多商家和消費者。實時監(jiān)測電商活動熱度,對于商家優(yōu)化營銷策略、平臺提升用戶體驗至關重要。音電商 API 接口為開發(fā)者提供了高效
    的頭像 發(fā)表于 08-21 15:30 ?551次閱讀
    <b class='flag-5'>抖</b>音電商 API 接口:<b class='flag-5'>抖</b>音平臺電商活動熱度實時監(jiān)測

    揭秘音電商 API,讓音小店粉絲增長有跡可循

    ? 在當今短視頻電商時代,音已成為商家必爭之地。但如何精準追蹤粉絲增長,優(yōu)化營銷策略?音電商 API(應用程序接口)正是關鍵。它讓商家通過數(shù)據(jù)接口獲取店鋪核心指標,將粉絲增長從“黑匣子”變?yōu)?/div>
    的頭像 發(fā)表于 08-20 15:46 ?562次閱讀
    揭秘<b class='flag-5'>抖</b>音電商 API,讓<b class='flag-5'>抖</b>音小店粉絲增長有跡可循

    巧用音電商 API,精準分析音商品種草效果

    ? 在當今短視頻電商時代,音已成為品牌推廣的核心平臺。"種草"(即通過內(nèi)容激發(fā)用戶購買欲望)效果直接影響商品銷售。然而,許多商家僅憑直覺評估推廣效果,導致資源浪費。本文將介紹如何利用音電商
    的頭像 發(fā)表于 08-20 15:29 ?738次閱讀
    巧用<b class='flag-5'>抖</b>音電商 API,精準分析<b class='flag-5'>抖</b>音商品種草效果

    音電商 API 接口:開啟音小店直播帶貨數(shù)據(jù)新洞察

    ? 在數(shù)字化電商浪潮中,音小店憑借直播帶貨模式迅速崛起,成為品牌和商家的新戰(zhàn)場。然而,如何從海量直播數(shù)據(jù)中提取有價值的洞察,優(yōu)化銷售策略?音電商 API 接口正是解決這一挑戰(zhàn)的關鍵工具。本文將
    的頭像 發(fā)表于 08-20 15:20 ?658次閱讀
    <b class='flag-5'>抖</b>音電商 API 接口:開啟<b class='flag-5'>抖</b>音小店直播帶貨數(shù)據(jù)新洞察

    蔡司一出手,計量也得 “”三

    編程,縮短測量時間 精度是工業(yè)的底色 而計量,才是守護這份底色的光 2025年7月 蔡司工業(yè)質(zhì)量商城 懷揣著這份守護初心 正式入駐音 作為百年計量行業(yè)專家 我們準備與您一起在這里“ ”三 官號
    的頭像 發(fā)表于 07-24 15:53 ?359次閱讀
    蔡司一出手,計量也得 “<b class='flag-5'>抖</b>”三<b class='flag-5'>抖</b>

    微機諧裝置優(yōu)勢

    微機諧裝置(也稱為微機諧器或智能諧裝置)具有顯著優(yōu)勢。以下是其核心優(yōu)勢: 1. ?強大的諧振識別能力: ? ? 能夠?qū)崟r、精確地識別系統(tǒng)發(fā)生的多種類型的鐵磁諧振(如分頻、工頻、高頻諧振),以及
    的頭像 發(fā)表于 06-16 15:50 ?458次閱讀
    微機<b class='flag-5'>消</b>諧裝置優(yōu)勢

    《ESP32S3 Arduino開發(fā)指南》第二章 Arduino基礎知識

    地進行可開發(fā)。3、開放性Arduino的硬件原理圖、電路圖、IDE軟件及核心庫文件都是開源的,在開源協(xié)議范圍內(nèi)可以任意修改原始設計及相應代碼。4、社區(qū)和第三方支持Arduino有著眾多
    發(fā)表于 05-13 09:28

    一次諧裝置與二次諧裝置區(qū)別、一次諧器與二次諧器的區(qū)別

    一次諧器與二次諧器是電力系統(tǒng)中用于抑制諧振過電壓的不同裝置,主要區(qū)別如下: 安裝位置:一次諧器串聯(lián)于電壓互感器(PT)一次側(cè)中性點與地之間,直接承受高電壓;二次諧器并聯(lián)在PT
    的頭像 發(fā)表于 05-07 09:58 ?3131次閱讀
    一次<b class='flag-5'>消</b>諧裝置與二次<b class='flag-5'>消</b>諧裝置區(qū)別、一次<b class='flag-5'>消</b>諧器與二次<b class='flag-5'>消</b>諧器的區(qū)別

    諧裝置的作用

    諧裝置是電力系統(tǒng)中防止鐵磁諧振過電壓的關鍵設備,主要用于保護電壓互感器(PT)及電網(wǎng)安全。當系統(tǒng)因單相接地、操作過電壓或雷擊引發(fā)PT鐵芯飽和時,可能產(chǎn)生分頻、工頻或高頻諧振,導致PT過熱、絕緣損壞
    的頭像 發(fā)表于 04-24 10:23 ?2007次閱讀
    <b class='flag-5'>消</b>諧裝置的作用

    微機諧器與一次諧器區(qū)別與聯(lián)系

    微機諧器與一次諧器都是用于電力系統(tǒng)中抑制諧波和消除鐵磁諧振的設備,
    的頭像 發(fā)表于 04-22 16:21 ?597次閱讀

    STM32F334比較器隱和HRTIM的事件隱功能如何實現(xiàn)?

    1,使用STM32F334制作的數(shù)字電源,用EVENT事件來實現(xiàn)逐周期電流檢測功能,現(xiàn)在開關管開通瞬間過沖較大,導致比較器誤觸發(fā),比較器隱功能一直配置不起作用,不明白比較器的窗口隱的PWM
    發(fā)表于 03-11 06:08

    用于 SPI 絕對編碼器的 Arduino 示例代碼

    作者:Damon Tarry, Design Applications Engineer, Same Sky 本 Arduino 示例代碼教程旨在為用戶提供一個堅實的起點,以便通過串行外設接口
    的頭像 發(fā)表于 01-26 21:35 ?1276次閱讀
    用于 SPI 絕對編碼器的 <b class='flag-5'>Arduino</b> 示例<b class='flag-5'>代碼</b>

    TVP5150輸出圖像有時有時無是怎么回事?

    我現(xiàn)在使用貴司的TVP5150AM視頻解碼芯片,現(xiàn)在出現(xiàn)一個問題,用顯示器顯示的圖像時有時無,并且有圖像的情況下也有點。 我的方案是用TVP5150進行采集相機輸出的視頻信號,然后通過FPGA
    發(fā)表于 01-06 07:28