91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

【藍橋杯嵌入式】第四章 按鍵控制LED

撞上電子 ? 2023-09-27 08:00 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

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

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


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

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

第二節(jié) 硬件解讀

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

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

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

按鍵

引腳

B1

PB0

B2

PB1

B3

PB2

B4

PA0


第三節(jié) CubeMX配置

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

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

第四節(jié) MDK代碼

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

結(jié)合上圖,可以看出需要20ms的消抖時間。所以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é) 實驗現(xiàn)象

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

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

來源:撞上電子微信公眾號

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

    關(guān)注

    243

    文章

    24622

    瀏覽量

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

    關(guān)注

    5200

    文章

    20483

    瀏覽量

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

    關(guān)注

    4

    文章

    229

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    嵌入式新手必看!GPIO調(diào)試從0到1:計算、操作、排錯全指南

    嵌入式開發(fā)中,GPIO(通用輸入輸出口)是最基礎(chǔ)也最常用的硬件接口 —— 小到控制一顆 LED 亮滅、讀取一個按鍵狀態(tài),大到驅(qū)動傳感器、控制
    的頭像 發(fā)表于 02-01 16:55 ?2791次閱讀
    <b class='flag-5'>嵌入式</b>新手必看!GPIO調(diào)試從0到1:計算、操作、排錯全指南

    什么是嵌入式應(yīng)用開發(fā)?

    系統(tǒng)中,用于控制、監(jiān)測或通信等特定用途。與一般計算機系統(tǒng)不同,嵌入式系統(tǒng)通常具有較小的存儲容量、處理能力和功耗,且需要滿足特定的實時性、可靠性和安全性要求?。 應(yīng)用領(lǐng)域 嵌入式系統(tǒng)廣泛應(yīng)用于各種設(shè)備
    發(fā)表于 01-12 16:13

    【瑞薩RA × Zephyr評測】LED、按鍵和UART

    實現(xiàn)在Zephyr操作系統(tǒng)下按鍵控制 LED 的開關(guān)狀態(tài),并通過 UART 輸出按鍵事件日志,驗證 GPIO 和串口通信功能。
    的頭像 發(fā)表于 01-10 10:21 ?2463次閱讀
    【瑞薩RA × Zephyr評測】<b class='flag-5'>LED</b>、<b class='flag-5'>按鍵</b>和UART

    嵌入式通信技術(shù)轉(zhuǎn)型:MCU+AT向OpenCPU的必然性深度拆解(下篇)

    重重障礙,實現(xiàn)從“外部控制”到“一體自治”的全面躍遷嗎? 第四章:OpenCPU相較MCU+AT的七大核心優(yōu)勢 當我們把“通信模組+MCU”變成“可獨立運行的模組”,所獲得的不只是省下一顆芯片,而是系統(tǒng)層面的范式升級。 OpenCPU的核心價值不在于“少一顆MCU”, 而
    的頭像 發(fā)表于 12-03 16:54 ?342次閱讀
    <b class='flag-5'>嵌入式</b>通信技術(shù)轉(zhuǎn)型:MCU+AT向OpenCPU的必然性深度拆解(下篇)

    嵌入式從入門到進階,怎么學?

    嵌入式從入門到進階,怎么學? 嵌入式學習的核心是 “軟硬結(jié)合的技術(shù)壁壘”,科學分層才能高效突破。以下是從入門到高階的精簡路線,幫你避開彎路: 1、基礎(chǔ)奠基層:構(gòu)建技術(shù)底座 C 語言聚焦 指針、結(jié)構(gòu)體
    發(fā)表于 09-02 09:44

    入行嵌入式應(yīng)該怎么準備?

    任務(wù)調(diào)度的代碼是非常重要的。此外,了解操作系統(tǒng)內(nèi)核的工作原理以及與硬件交互的方式也是必須的。 、通信協(xié)議嵌入式系統(tǒng)通常需要與其他設(shè)備或系統(tǒng)進行通信。了解常見的通信協(xié)議(如UART、SPI、I2C
    發(fā)表于 08-06 10:34

    2025“芯原”全國嵌入式軟件開發(fā)大賽圓滿落幕

    此前,2025年7月20日至26日,第四屆“芯原”全國嵌入式軟件開發(fā)大賽決賽在??诔晒εe辦。
    的頭像 發(fā)表于 08-06 09:51 ?1371次閱讀

    BitsButton嵌入式按鍵處理框架

    配備了完整的按鍵測試用例,專為嵌入式C項目設(shè)計: 詳情見:按鍵測試用例 ?? 分層架構(gòu)設(shè)計 核心層(core/): 測試框架基礎(chǔ)設(shè)施和運行器 工具層(utils/): 模擬工具、時間控制
    發(fā)表于 08-02 11:24

    【「DeepSeek 核心技術(shù)揭秘」閱讀體驗】--全書概覽

    講解Deepseek的使用方法 第三 深入剖析Deepseek-V3的模型架構(gòu)、訓練框架、推理階段優(yōu)化、后訓練優(yōu)化等關(guān)鍵技術(shù) 第四章關(guān)于DeepSeek-R1的技術(shù)剖析 第五 從宏觀角度分析
    發(fā)表于 07-21 00:04

    初級工程師PCB設(shè)計技巧(PPT版)

    目錄第一:PCB 概述第二:PCB 設(shè)計流程及PCB Layout 設(shè)計第三: PROTEL 常用操作第四章: PCB Layout 技巧 獲取完整文檔資料可下載附件哦!?。?!
    發(fā)表于 06-26 15:50

    Linux嵌入式和單片機嵌入式的區(qū)別?

    Processor Unit)。 2. 單片機嵌入式(也稱為嵌入式微控制器MCU): 定義:一種集成電路,能夠在一個芯片上完成各種計算、控制和管理任務(wù)。 特點:小型化、低功耗、成本低、可靠性高
    發(fā)表于 06-20 09:46

    第四章 什么是寄存器

    本篇文章我們講解了寄存器的概念、地址映射和寄存器操作等內(nèi)容,內(nèi)容比較干,大家有個概念即可,不要求全部熟記掌握,有需要時可重復查閱觀看。下一篇我們將開始進行實操內(nèi)容,通過控制單片機的GPIO來點亮一顆LED,敬請期待!
    的頭像 發(fā)表于 05-21 14:23 ?1497次閱讀
    <b class='flag-5'>第四章</b> 什么是寄存器

    嵌入式開發(fā)入門指南:從零開始學習嵌入式

    基礎(chǔ) 3. 學習路徑推薦第一階段:熟悉開發(fā)環(huán)境(如Keil、IAR、STM32)第二階段:掌握裸機編程與驅(qū)動開發(fā)第三階段:學習RTOS(實時操作系統(tǒng))如FreeRTOS第四階段:深入理解Linux嵌入式
    發(fā)表于 05-15 09:29

    嵌入式適合自學嗎?

    基礎(chǔ)。對于初學者來說,很難在短時間內(nèi)建立起完整的知識體系。 2)學習曲線陡峭:嵌入式開發(fā)需要掌握多種編程語言、硬件知識、操作系統(tǒng)原理等,學習曲線非常陡峭。例如,學習STM32微控制器時,需要理解其基本架
    發(fā)表于 04-27 09:54

    基于51/32單片機按鍵控制步進電機正反轉(zhuǎn),A4988驅(qū)動

    基于51/32單片機按鍵控制步進電機正反轉(zhuǎn),A4988驅(qū)動
    發(fā)表于 04-14 15:05 ?7次下載