RM新时代网站-首页

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

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

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

【藍(lán)橋杯嵌入式】第四章 按鍵控制LED

撞上電子 ? 2023-09-27 08:00 ? 次閱讀

第一節(jié) 按鍵的基本知識(shí)

按鍵的最基本的知識(shí)就是消抖,它分為軟件消抖和硬件消抖。其中,軟件消抖流程為:當(dāng)檢測(cè)到按鍵按下時(shí),啟動(dòng)一個(gè)延時(shí),持續(xù)一段時(shí)間(通常幾毫秒);在延時(shí)結(jié)束后,再次讀取按鍵狀態(tài);如果按鍵仍然處于按下狀態(tài),那么可以確定按鍵的狀態(tài)為按下;否則,可以確定按鍵的狀態(tài)為釋放;軟件消抖通過延時(shí)等待按鍵電平的穩(wěn)定來避免誤觸發(fā)。如下圖:

ebaef9ec-5cc8-11ee-9788-92fbcf53809c.png


硬件的消抖方案有很多種:在按鍵引腳與微控制器之間添加外部電路元件,如電容、電阻或Schmitt觸發(fā)器等,這些電路元件可以濾除按鍵的電氣噪音,提供更穩(wěn)定的電平信號(hào)。

藍(lán)橋杯嵌入式開發(fā)板并沒有在硬件上處理,所以只能通過軟件的方式來消抖。

第二節(jié) 硬件解讀

ebc1d242-5cc8-11ee-9788-92fbcf53809c.png

從圖中我們可以看出,一共有4個(gè)按鍵,每一個(gè)按鍵的原理圖都是一樣的,我們舉一個(gè)例子吧,以PA0為例,當(dāng)按鍵被按下,按鍵的1,2和3,3導(dǎo)通,按鍵的3,4接地,導(dǎo)致PA0也接地,所以PA0也就是低電平。由此我們知道,當(dāng)按鍵按下時(shí),PA0為低電平;反之為高電平。

以下是按鍵和引腳的關(guān)系:

按鍵

引腳

B1

PB0

B2

PB1

B3

PB2

B4

PA0


第三節(jié) CubeMX配置

配置PB0,PB1,PB2,PA0為輸入模式,并配置上拉和標(biāo)簽。【注意:配圖有誤,配圖為輸出模式,正常是輸入模式】

ebcb26b2-5cc8-11ee-9788-92fbcf53809c.png

第四節(jié) MDK代碼

ebd9f098-5cc8-11ee-9788-92fbcf53809c.png

結(jié)合上圖,可以看出需要20ms的消抖時(shí)間。所以MDK代碼如下:

ebe990c0-5cc8-11ee-9788-92fbcf53809c.png

ebf2afde-5cc8-11ee-9788-92fbcf53809c.png

ec0d2cce-5cc8-11ee-9788-92fbcf53809c.png

ec255cae-5cc8-11ee-9788-92fbcf53809c.png

ec41cd58-5cc8-11ee-9788-92fbcf53809c.png

第五節(jié) 實(shí)驗(yàn)現(xiàn)象

注意:請(qǐng)用USB線連接電腦與開發(fā)板,注意是CN2口。

現(xiàn)象:LED閃爍一次,按下按鍵,對(duì)應(yīng)的LED翻轉(zhuǎn)一次。

來源:撞上電子微信公眾號(hào)

聲明:本文內(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)投訴
  • led
    led
    +關(guān)注

    關(guān)注

    242

    文章

    23252

    瀏覽量

    660558
  • 嵌入式
    +關(guān)注

    關(guān)注

    5082

    文章

    19104

    瀏覽量

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

    關(guān)注

    4

    文章

    223

    瀏覽量

    57595
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    藍(lán)橋該如何備賽?

    藍(lán)橋物聯(lián)網(wǎng)已經(jīng)換了三次開發(fā)板了,每次換板子,題目難度都會(huì)降低不少,所以說,藍(lán)橋物聯(lián)網(wǎng)在藍(lán)橋
    的頭像 發(fā)表于 12-19 21:02 ?56次閱讀
    <b class='flag-5'>藍(lán)橋</b><b class='flag-5'>杯</b>該如何備賽?

    藍(lán)橋單片機(jī)】第一 大賽概述

    第一節(jié)藍(lán)橋是什么樣的比賽藍(lán)橋全國(guó)軟件和信息技術(shù)專業(yè)人才大賽(以下簡(jiǎn)稱“藍(lán)橋”)是由中國(guó)教育
    的頭像 發(fā)表于 10-29 12:00 ?324次閱讀
    【<b class='flag-5'>藍(lán)橋</b><b class='flag-5'>杯</b>單片機(jī)】第一<b class='flag-5'>章</b> 大賽概述

    【北京迅為】i.mx8mm嵌入式linux開發(fā)指南第四嵌入式Linux系統(tǒng)移植篇第六十九章uboot移植

    【北京迅為】i.mx8mm嵌入式linux開發(fā)指南第四嵌入式Linux系統(tǒng)移植篇第六十九章uboot移植
    的頭像 發(fā)表于 10-22 14:46 ?588次閱讀
    【北京迅為】i.mx8mm<b class='flag-5'>嵌入式</b>linux開發(fā)指南<b class='flag-5'>第四</b>篇 <b class='flag-5'>嵌入式</b>Linux系統(tǒng)移植篇第六十九章uboot移植

    AMD 面向嵌入式系統(tǒng)推出高能效 EPYC 嵌入式 8004 系列

    AMD 憑借其 EPYC? 嵌入式處理器不斷樹立行業(yè)標(biāo)準(zhǔn),為網(wǎng)絡(luò)、存儲(chǔ)和工業(yè)應(yīng)用提供卓越的性能、效率、連接與創(chuàng)新。今天,我們正以第四代 AMD EPYC 嵌入式 8004 系列處理器擴(kuò)展這一
    發(fā)表于 10-11 13:58 ?714次閱讀

    【「嵌入式Hypervisor:架構(gòu)、原理與應(yīng)用」閱讀體驗(yàn)】+第7-8學(xué)習(xí)心得

    這是一本很好的學(xué)習(xí)嵌入式的書籍。 在深入學(xué)習(xí)《嵌入式Hypervisor:架構(gòu)、原理與應(yīng)用》的第7-8后,我對(duì)嵌入式Hypervisor的架構(gòu)、原理及其在實(shí)際應(yīng)用中的重要性有了更為深
    發(fā)表于 10-09 18:50

    【「嵌入式Hypervisor:架構(gòu)、原理與應(yīng)用」閱讀體驗(yàn)】+第三四章閱讀報(bào)告

    在深入閱讀了《嵌入式Hypervisor:架構(gòu)、原理與應(yīng)用》的第三、四章后,我對(duì)嵌入式Hypervisor的設(shè)計(jì)與實(shí)現(xiàn)技術(shù)有了更為詳盡和系統(tǒng)的理解。以下是我對(duì)這兩內(nèi)容的閱讀報(bào)告:
    發(fā)表于 10-09 18:29

    【「嵌入式Hypervisor:架構(gòu)、原理與應(yīng)用」閱讀體驗(yàn)】+第一二讀后感

    非常感謝社區(qū)提供的閱讀機(jī)會(huì),拿到書后,就迫不及待的的開始閱讀了。 社區(qū)還有簽名留念呢,值得紀(jì)念。 《嵌入式Hypervisor:架構(gòu)、原理與應(yīng)用》的第一、二為讀者提供了關(guān)于Hypervisor技術(shù)
    發(fā)表于 10-09 18:22

    嵌入式主板是什么意思?嵌入式主板全面解析

    嵌入式主板,通常被稱為嵌入式系統(tǒng)的核心組件,是一種用于控制和數(shù)據(jù)處理的計(jì)算機(jī)硬件,其設(shè)計(jì)旨在嵌入特定設(shè)備中執(zhí)行專門任務(wù)。嵌入式主板如同是設(shè)備
    的頭像 發(fā)表于 09-30 10:05 ?447次閱讀

    第四章:對(duì)廣東龍芯2K0300-蜂鳥板-v1.0視頻教程我的感觸

    服務(wù)器、臺(tái)式機(jī)、嵌入式。 龍架構(gòu)應(yīng)用開發(fā)與適配遷移技術(shù).mp450:39分鐘47.41MB 文件大小 2024-04-30發(fā)表。其內(nèi)容是龍架構(gòu)應(yīng)用開發(fā)與遷移適配技術(shù),龍芯云平臺(tái),應(yīng)用軟件遷移的本質(zhì),遷移
    發(fā)表于 09-11 18:10

    【「ARM MCU嵌入式開發(fā) | 基于國(guó)產(chǎn)GD32F10x芯片」閱讀體驗(yàn)】+書籍整體概況

    案例為按鍵控制LED亮滅;第四章介紹了中斷和事件,中斷包含嵌套向量中斷控制器NVIC,EXTI外部中斷/事件控制器以及EXTI外部中斷處理的
    發(fā)表于 08-25 22:48

    學(xué)習(xí)hypervisor嵌入式產(chǎn)品安全設(shè)計(jì)

    第一部分(第1~2)介紹Hypervisor基礎(chǔ),涵蓋虛擬化技術(shù)與實(shí)現(xiàn)、主流的嵌入式Hypervisor產(chǎn)品,以及基于分離內(nèi)核的嵌入式Hypervisor等內(nèi)容。第二部分(第3~12
    發(fā)表于 08-25 09:11

    第四章-V1.5 舵機(jī) 舵機(jī)角度控制 PWM控制紅外對(duì)管和按鍵控制 STM32驅(qū)動(dòng)舵機(jī)控制 SG90控制

    由于C8T6小板子的PA12接了上拉電阻,所以使用PA12的時(shí)候要注意。而且如果我們用Mrico USB供電 可能會(huì)影響PA11。
    的頭像 發(fā)表于 08-15 16:20 ?505次閱讀
    <b class='flag-5'>第四章</b>-V1.5 舵機(jī) 舵機(jī)角度<b class='flag-5'>控制</b> PWM<b class='flag-5'>控制</b>紅外對(duì)管和<b class='flag-5'>按鍵控制</b> STM32驅(qū)動(dòng)舵機(jī)<b class='flag-5'>控制</b> SG90<b class='flag-5'>控制</b>

    雙麒麟系統(tǒng)!迅為RK3588開發(fā)板+銀河麒麟/開放麒麟

    Build root系統(tǒng)功能測(cè)試 第四章 Ubuntu系統(tǒng)功能測(cè)試 第五 Debian系統(tǒng)功能測(cè)試 第六 openkylin系統(tǒng)功能測(cè)試 第七 銀河麒麟系統(tǒng)功能測(cè)試
    發(fā)表于 07-15 10:35

    嵌入式fpga是什么意思

    嵌入式FPGA是指將FPGA技術(shù)集成到嵌入式系統(tǒng)中的一種解決方案。嵌入式系統(tǒng)是一種為特定應(yīng)用而設(shè)計(jì)的計(jì)算機(jī)系統(tǒng),它通常包括處理器、內(nèi)存、外設(shè)接口等組件,并且被嵌入到更大的設(shè)備或系統(tǒng)中,
    的頭像 發(fā)表于 03-15 14:29 ?1242次閱讀

    聊聊嵌入式軟件分層

    今天以控制LED閃爍為例,聊聊嵌入式軟件分層
    的頭像 發(fā)表于 12-28 09:22 ?672次閱讀
    RM新时代网站-首页