衡阳派盒市场营销有限公司

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

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

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

采用ADC掃描實(shí)現(xiàn)一個(gè)IO上掛多個(gè)按鍵

Dp1040 ? 來源:嵌入式技術(shù)開發(fā) ? 2023-08-11 09:16 ? 次閱讀

有時(shí)候做設(shè)計(jì)時(shí),我們會(huì)遇到外部按鍵比較多,IO口不夠用的情況。這時(shí)大部分人會(huì)考慮通過其它芯片擴(kuò)展IO,或者直接換一個(gè)IO口足夠的MCU。其實(shí),還有個(gè)方法可以實(shí)現(xiàn)一個(gè)IO上掛多個(gè)按鍵———即采用ADC掃描。

一、硬件及原理

電路圖如下:

da1cd172-37de-11ee-9e74-dac502259ad0.png

當(dāng)沒有按鍵按下時(shí),ADC的電壓為3.3V,由于不同按鍵對(duì)應(yīng)的分壓電阻不同,所以不同按鍵按下時(shí),得到的ADC電壓也不同。通過采樣ADC的電壓即可判斷是哪個(gè)按鍵被按下。這種方式也支持組合按鍵。

設(shè)計(jì)時(shí)需要計(jì)算好每個(gè)按鍵的分壓電阻阻值,使每個(gè)按鍵的分壓值(包括組合按鍵)有較明顯區(qū)別,便于ADC區(qū)分。

上面這種方式為并聯(lián)式接法,還有一種串聯(lián)式接法:

da4d41ae-37de-11ee-9e74-dac502259ad0.png

這種方式與上面的原理一樣,但不同的是,這種方式不支持組合按鍵,且有按鍵優(yōu)先級(jí)之分,當(dāng)S8按下時(shí)下面的按鍵無效。即S8優(yōu)先級(jí)最高,S9次之,以此類推。

理論上,上述兩種方式都可以一個(gè)IO掛很多按鍵,但掛的越多,每個(gè)按鍵的分壓后的電壓就越接近,越不容易區(qū)分,導(dǎo)致誤判。所以如果按鍵太多,還是要分多個(gè)ADC端口來采樣。

另外,分壓電阻的選擇也要考慮ADC的輸入阻抗。有些MCU內(nèi)置ADC輸入阻抗較低,電阻選擇不合適可能導(dǎo)致采樣誤差較大。

二、消抖

上圖中并聯(lián)的10nF電容有利于消除一些高頻噪聲和抖動(dòng),但最好在軟件上也做消抖處理。方式與普通按鍵類似,即多次采樣判斷。每次采樣間隔10ms左右即可。

審核編輯:湯梓紅

聲明:本文內(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)注

    10356

    文章

    10725

    瀏覽量

    532872
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17317

    瀏覽量

    352630
  • adc
    adc
    +關(guān)注

    關(guān)注

    99

    文章

    6533

    瀏覽量

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

    關(guān)注

    4

    文章

    223

    瀏覽量

    57657
  • IO口
    +關(guān)注

    關(guān)注

    3

    文章

    170

    瀏覽量

    24193
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    基于GPIO的按鍵板實(shí)現(xiàn)方案

    介紹簡(jiǎn)單的ADC實(shí)現(xiàn),需要IC提供個(gè)額外的ADC。但出于IC成本的考慮,無法提供這個(gè)的ADC時(shí)
    的頭像 發(fā)表于 10-18 11:43 ?3526次閱讀
    基于GPIO的<b class='flag-5'>按鍵板實(shí)現(xiàn)</b>方案

    ADC實(shí)現(xiàn)個(gè)IO多個(gè)按鍵

    有時(shí)候做設(shè)計(jì)時(shí),我們會(huì)遇到外部按鍵比較多,IO口不夠用的情況。這時(shí)大部分人會(huì)考慮通過其它芯片擴(kuò)展IO,或者直接換一個(gè)IO口足夠的MCU。其實(shí)
    發(fā)表于 09-01 13:25 ?3068次閱讀

    單片機(jī)用個(gè)I/O采集多個(gè)按鍵信號(hào)

    使用模數(shù)轉(zhuǎn)換(ADC)的特點(diǎn)就可以實(shí)現(xiàn)單片機(jī)用個(gè)I/O采集多個(gè)按鍵信號(hào)。
    發(fā)表于 10-28 09:54 ?1963次閱讀

    IO實(shí)現(xiàn)個(gè)按鍵功能

    功能,也不是不行,可以用電容充放電的方法實(shí)現(xiàn)ADC,從而用普通IO間接進(jìn)行測(cè)量。(參見我之前關(guān)于鍵盤掃描的文章)這樣用
    發(fā)表于 08-29 10:41

    絕對(duì)經(jīng)典2個(gè)IO實(shí)現(xiàn)5個(gè)按鍵掃描

    通過兩個(gè)單片機(jī)IO口,即可實(shí)現(xiàn)5個(gè)IO口的掃描,不太用任何外圍器件的哦。。。。。。。。。。。。。
    發(fā)表于 12-05 14:07

    5個(gè)IO掃描25個(gè)按鍵的解決方法

    在這次“51深度研究,邁向高階之路” 的活動(dòng)中,我自認(rèn)為看到這篇文章很有必要和大家分享下‘給你5個(gè)IO,你能掃描多少個(gè)
    發(fā)表于 03-08 10:22

    【HarmonyOS HiSpark Wi-Fi IoT 套件試用連載】個(gè)ADC實(shí)現(xiàn)多個(gè)按鍵檢測(cè)

    的行列掃描原理詳解這種行列式鍵盤結(jié)構(gòu)能有效地提高單片機(jī)系統(tǒng)中I/O口的利用率。在MCU管腳有限的情況下,矩陣按鍵大大的節(jié)省了I/O資源。3. ADC分壓鍵盤利用電阻串聯(lián)分壓的原理實(shí)現(xiàn)
    發(fā)表于 11-14 13:34

    單片機(jī)如何用個(gè)IO口采集多個(gè)按鍵信號(hào)?

    按鍵信號(hào)的采集方法,可以用個(gè)IO口采集多個(gè)按鍵信號(hào),不僅電路簡(jiǎn)單,而且編程比較容易
    發(fā)表于 11-26 16:51

    如何使用ADC實(shí)現(xiàn)按鍵功能

    節(jié)省IO口;本次介紹使用ADC實(shí)現(xiàn)按鍵功能,通過采集ADC不同的值,然后判斷是按鍵幾按下?因此
    發(fā)表于 01-07 06:32

    矩陣鍵盤上哪一個(gè)按鍵被按下可以采用掃描和行掃描

    矩陣鍵盤共有4行和4列共16個(gè)按鍵組成,確定矩陣鍵盤上哪一個(gè)按鍵被按下可以
    發(fā)表于 01-13 08:27

    8個(gè)IO口產(chǎn)生49個(gè)按鍵

    本內(nèi)容提供了8個(gè)IO口產(chǎn)生49個(gè)按鍵 ,詳細(xì)展示了如何實(shí)現(xiàn)49個(gè)
    發(fā)表于 08-08 11:17 ?178次下載
    8<b class='flag-5'>個(gè)</b><b class='flag-5'>IO</b>口產(chǎn)生49<b class='flag-5'>個(gè)</b><b class='flag-5'>按鍵</b>

    5個(gè)IO口最多能掃描多少個(gè)按鍵

    在做項(xiàng)目(工程)的時(shí)候,我們經(jīng)常要用到比較多的按鍵,而且IO資源緊張,于是我們就想方設(shè)法地在別的模塊中節(jié)省IO口,好不容易擠出一兩個(gè)IO口,
    的頭像 發(fā)表于 02-10 11:02 ?4587次閱讀
    5<b class='flag-5'>個(gè)</b><b class='flag-5'>IO</b>口最多能<b class='flag-5'>掃描</b>多少<b class='flag-5'>個(gè)</b><b class='flag-5'>按鍵</b>

    如何實(shí)現(xiàn)單片機(jī)用個(gè)I/O采集多個(gè)按鍵信號(hào)?

    如何實(shí)現(xiàn)單片機(jī)用個(gè)I/O采集多個(gè)按鍵信號(hào) 使用模數(shù)轉(zhuǎn)換(ADC)的特點(diǎn)就可以
    發(fā)表于 02-11 14:23 ?11次下載
    如何<b class='flag-5'>實(shí)現(xiàn)</b>單片機(jī)用<b class='flag-5'>一</b><b class='flag-5'>個(gè)</b>I/O采集<b class='flag-5'>多個(gè)</b><b class='flag-5'>按鍵</b>信號(hào)?

    矩陣按鍵掃描實(shí)現(xiàn)原理

    之前做過很多仿真儀表盒,經(jīng)常遇到盒子既有大量LED指示燈,又有很多按鍵的情況,主芯片使用的SiliconLabs的款單片機(jī),管腳資源有限,如何應(yīng)對(duì)如此多的指示燈和按鍵呢?當(dāng)時(shí)選用了
    的頭像 發(fā)表于 03-27 14:05 ?6307次閱讀
    矩陣<b class='flag-5'>按鍵</b><b class='flag-5'>掃描</b>的<b class='flag-5'>實(shí)現(xiàn)</b>原理

    硬件設(shè)計(jì)如何實(shí)現(xiàn)個(gè)IO多個(gè)按鍵

    有時(shí)候做設(shè)計(jì)時(shí),我們會(huì)遇到外部按鍵比較多,IO口不夠用的情況。這時(shí)大部分人會(huì)考慮通過其它芯片擴(kuò)展IO,或者直接換一個(gè)IO口足夠的MCU。其實(shí)
    發(fā)表于 08-11 09:16 ?1348次閱讀
    硬件設(shè)計(jì)如何<b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>一</b><b class='flag-5'>個(gè)</b><b class='flag-5'>IO</b><b class='flag-5'>上</b><b class='flag-5'>掛</b><b class='flag-5'>多個(gè)</b><b class='flag-5'>按鍵</b>?
    百家乐博百家乐的玩法技巧和规则| 东莞百家乐的玩法技巧和规则| 百家乐官网平玩法几副牌| 百家乐官网投注平台信誉排行 | 怎么看百家乐路单| 24山向方位度数| 上市百家乐官网评论| 百家乐官网最新打法| 云博娱乐城官网注册| 筒子二八杠分析仪| 百家乐真人游戏娱乐场| 百家乐注册开户| 运城百家乐官网的玩法技巧和规则 | 扬州棋牌中心| 大发888方官| 巴比伦百家乐的玩法技巧和规则| 鲨鱼百家乐游戏平台| 百家乐官网桌布无纺布| 线上百家乐官网技巧| 百家乐官网有多少网址| 永亨娱乐城| 波克棋牌斗地主| 东方太阳城租房| 百家乐规| 如何赢百家乐的玩法技巧和规则 | 六合彩开奖现场| 大发888老虎机下载| 威尼斯人娱乐城网址| 同乐城百家乐现金网| 百家乐发牌铲| 免费百家乐官网游戏下| 网上百家乐官网的玩法技巧和规则| 百家乐官网赌场软件| 百家乐官网的桌子| 百家乐官网视频游戏网站| 百家乐官网实战案例| 梅州市| 星河国际娱乐场| 永胜博| 香港六合彩特码| 新利国际娱乐网|