色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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)橋杯物聯(lián)網(wǎng)】第四章 按鍵

撞上電子 ? 2022-05-26 10:50 ? 次閱讀

第一節(jié)基本原理

鍵盤在單片機(jī)應(yīng)用系統(tǒng)中能夠?qū)崿F(xiàn)向單片機(jī)輸入數(shù)據(jù)、傳送命令的功能,是人工干預(yù)單片機(jī)的主要手段。下面介紹鍵盤的工作原理、鍵盤按鍵的識(shí)別過程和識(shí)別方法以及鍵盤與單片機(jī)的接口編程

在進(jìn)行鍵盤使用之前,需要先了解一下鍵盤的工作原理。以下將分三個(gè)部分介紹鍵盤的工作原理。

1.鍵盤輸入的特點(diǎn)鍵盤實(shí)質(zhì)上是一個(gè)按鍵開關(guān)的集合。通常鍵盤的開關(guān)為機(jī)械彈性開關(guān),利用的是機(jī)械觸點(diǎn)的合斷特性。一個(gè)電信號(hào)通過機(jī)械觸點(diǎn)的斷開、閉合過程,其行線電壓輸出波形如圖所示。

1c49ec7c-da90-11ec-b80f-dac502259ad0.png

圖中t1和t3是鍵閉合和斷開過程中的抖動(dòng)期,抖動(dòng)時(shí)間長(zhǎng)短和機(jī)械特性有關(guān),一般為5~10ms;t2為穩(wěn)定的閉合期,時(shí)間由按鍵動(dòng)作所決定;一般為十分之幾到幾秒;t0、t4為斷開期。

2.按鍵的確認(rèn)按鍵的閉合與否反映在行線輸出電壓是高電平還是低電平上,如果高電平表示斷開,則低電平表示鍵閉合,通過對(duì)行線電平的檢測(cè)從而判斷是否有按鍵被按下。

3.消除按鍵抖動(dòng)消除按鍵的抖動(dòng)通常有軟件和硬件兩種方法。硬件消抖一般采用雙穩(wěn)態(tài)消抖電路,如下圖所示。圖中兩個(gè)與非門構(gòu)成一個(gè)RS觸發(fā)器。b點(diǎn)的抖動(dòng)電壓波形通過RS觸發(fā)電路后變成正規(guī)的正弦波,這一點(diǎn)很容易從RS觸發(fā)器的工作過程得到驗(yàn)證。

1c9b6886-da90-11ec-b80f-dac502259ad0.png?

在按鍵較多時(shí),硬件消抖無法勝任,因此常用軟件消除鍵盤的抖動(dòng),在第一次檢測(cè)到鍵按下時(shí),延時(shí)10ms的時(shí)間再確認(rèn)該鍵的電平是否繼續(xù)保持閉合狀態(tài)的電平,如果繼續(xù)保持為閉合狀態(tài)的電平,則確認(rèn)有鍵按下,從而消除抖動(dòng)的影響。

第二節(jié) 硬件解讀

藍(lán)橋杯嵌入式主板上面是有5個(gè)按鍵的,其中4個(gè)用戶按鍵,一個(gè)復(fù)位按鍵,本章的實(shí)驗(yàn)就是用戶按鍵來控制LED燈。先看看下圖的原理圖吧:

1cc4a9d0-da90-11ec-b80f-dac502259ad0.png ?? 上圖就是4個(gè)獨(dú)立按鍵的原理圖,我們以左上角的為例,按鍵一端連接到GND,另外一端連接到VDD,也就是說,PB1平時(shí)是高電平的狀態(tài),一旦按鍵被按下,就與GND相連,變成低電平了。至于其他的消抖等等不再詳述,都學(xué)習(xí)stm32了,想必51應(yīng)該學(xué)過了。

第三節(jié) 環(huán)境配置

1,打開stm32cubeMX,選擇“File-New Project ...”。

1cffca6a-da90-11ec-b80f-dac502259ad0.png

2,如圖,在方框中搜索“stm32g431rb”(可大寫,可小寫)。然后選擇LQFPN64的封裝的芯片

1d4b9ce2-da90-11ec-b80f-dac502259ad0.png3,選中“A-Z”,查看藍(lán)橋杯嵌入式芯片stm32g431rb的所有功能。

1d77d8c0-da90-11ec-b80f-dac502259ad0.png

4,選中“SYS”,在Debug項(xiàng)目中選擇“Serial Wire”,可以看見PA13與PA14引腳變成綠色,分別用作SYS_SWDIO和SYS_SWCLK。

1da4dcbc-da90-11ec-b80f-dac502259ad0.png

5,選中“PD2-GPIO_Output”,“PC8-GPIO_Output”,“PC9-GPIO_Output”,“PC10-GPIO_Output”,“PC11-GPIO_Output”,“PC12-GPIO_Output”,“PC13-GPIO_Output”,“PC14-GPIO_Output”和“PC15-GPIO_Output”,這樣就可以讓芯片的PD2和PC8~PC15作為輸出引腳了。

1dc6a306-da90-11ec-b80f-dac502259ad0.png

6,選中“PA0-GPIO_Input”,“PB0-GPIO_Input”,“PB1-GPIO_Input”,“PB2-GPIO_Input”,這樣就可以讓芯片的PA0和PB0~PB2作為輸入引腳了,也據(jù)說用戶按鍵引腳。

1e1314f2-da90-11ec-b80f-dac502259ad0.png

7,選中“Project Manager-Project”。在Project Name中填寫項(xiàng)目的名字(盡可能不要用中文),在Project Location中選擇項(xiàng)目保存的路徑,在Toolchain/IDE中選擇編譯器,藍(lán)橋杯嵌入式比賽用的是MDK5,所以我們選擇MDK-ARM V5。

1e3d5302-da90-11ec-b80f-dac502259ad0.png

8,點(diǎn)擊GENERATE CODE生成代碼。

1e6e3620-da90-11ec-b80f-dac502259ad0.png

9,點(diǎn)擊”CLOSE”,關(guān)閉stm32cubeMX,代碼生成成功。

1ebb7ebc-da90-11ec-b80f-dac502259ad0.png

第四節(jié) 程序編寫

1,用MDK5打開stm32cubeMX生成的工程。

2,點(diǎn)擊“Rebuild”,進(jìn)行代碼的編譯,可以看出代碼沒有任何問題,證明我們利用stm32cubeMX生成代碼很成功。

1f051b6c-da90-11ec-b80f-dac502259ad0.png

3,在main.c文件中添加下面定義:

1f5e847c-da90-11ec-b80f-dac502259ad0.png?

4,在main.c文件中加入以下封裝好了的函數(shù):

1f8871ba-da90-11ec-b80f-dac502259ad0.png

1fbdb5aa-da90-11ec-b80f-dac502259ad0.png

1febed30-da90-11ec-b80f-dac502259ad0.png

5,將封裝好的函數(shù)在main.h中聲明:

202ab560-da90-11ec-b80f-dac502259ad0.png

6,在mian函數(shù)中初始化LED:

2062c41e-da90-11ec-b80f-dac502259ad0.png

7,編寫while里面的函數(shù):

20a1d474-da90-11ec-b80f-dac502259ad0.png

8,編譯代碼。

20db3584-da90-11ec-b80f-dac502259ad0.png

9,點(diǎn)擊”O(jiān)ptions for Target...“。

211a2bfe-da90-11ec-b80f-dac502259ad0.png

10,點(diǎn)擊”Debug“,然后選擇下載器”CMSIS-DAP Debugger“,并點(diǎn)擊”O(jiān)K“。

2154441a-da90-11ec-b80f-dac502259ad0.png

11,選擇“Settings”。

219a43b6-da90-11ec-b80f-dac502259ad0.png

12,選擇”Flash Downlosd”,勾選”Reset and Run”并點(diǎn)擊”O(jiān)K”。

21d1bb48-da90-11ec-b80f-dac502259ad0.png

13,點(diǎn)擊”Download“,開始下載程序。

222b861e-da90-11ec-b80f-dac502259ad0.png

14,程序下載成功。

第五節(jié) 注意事項(xiàng)與實(shí)驗(yàn)現(xiàn)象

實(shí)驗(yàn)注意事項(xiàng):

1,程序語句需要位于程序的BEGIN與END之間。

2,利用USB線將電腦USB口與開發(fā)板CN2口連接。

3,J6,J7,J8需要用跳線帽連接,否則無法下載程序。

實(shí)驗(yàn)現(xiàn)象:

LD9和LD11常亮。按下B1,LD1亮;按下B2,LD2亮:按下B3,LD3亮;按下B4,LD4亮。

宗旨:

免費(fèi)的服務(wù),永遠(yuǎn)的開源

說明:

1.本教程免費(fèi),開源,禁止用于任何商業(yè)用途,違者必究。

2.本教程版權(quán)所屬為東莞市東城墨竹公子電子工作室,盜版必究。

聲明:本文內(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)投訴
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    藍(lán)橋中GPIO輸入之按鍵實(shí)驗(yàn)

    第一節(jié)按鍵的基本知識(shí)按鍵按照結(jié)構(gòu)原理可分為兩類,一類是觸點(diǎn)式開關(guān)按鍵,如機(jī)械式開關(guān)、導(dǎo)電橡膠式開關(guān)燈;另一類是無觸點(diǎn)式開關(guān)按鍵,如電氣式按鍵
    的頭像 發(fā)表于 01-09 21:02 ?111次閱讀
    <b class='flag-5'>藍(lán)橋</b><b class='flag-5'>杯</b>中GPIO輸入之<b class='flag-5'>按鍵</b>實(shí)驗(yàn)

    藍(lán)橋聯(lián)網(wǎng)需要安裝哪些軟件?

    藍(lán)橋聯(lián)網(wǎng)比賽需要安裝的軟件有如下幾種,需要大家自己在練習(xí)的時(shí)候自行安裝。下面是安裝教程。以下是需要安裝的軟件,本教程會(huì)一一帶領(lǐng)大家安裝,【注意:一定要按照順序安裝】沒有安裝包的話,
    的頭像 發(fā)表于 12-23 21:02 ?253次閱讀
    <b class='flag-5'>藍(lán)橋</b><b class='flag-5'>杯</b><b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>需要安裝哪些軟件?

    瑞薩電子榮獲維科·OFweek 2024聯(lián)網(wǎng)行業(yè)優(yōu)秀開發(fā)平臺(tái)獎(jiǎng)

    近日,由高科技行業(yè)門戶OFweek維科網(wǎng)主辦、OFweek聯(lián)網(wǎng)承辦的“OFweek 2024(第九屆)聯(lián)網(wǎng)產(chǎn)業(yè)大會(huì)”暨“維科·OFwe
    的頭像 發(fā)表于 12-23 11:45 ?268次閱讀

    藍(lán)橋聯(lián)網(wǎng)開發(fā)板硬件組成

    第一節(jié)開發(fā)板簡(jiǎn)介聯(lián)網(wǎng)設(shè)計(jì)與開發(fā)競(jìng)賽實(shí)訓(xùn)平臺(tái)由藍(lán)橋大賽技術(shù)支持單位北京梯科技有限公司設(shè)計(jì)和生產(chǎn),該產(chǎn)品可用于參加
    的頭像 發(fā)表于 12-22 21:30 ?498次閱讀
    <b class='flag-5'>藍(lán)橋</b><b class='flag-5'>杯</b><b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>開發(fā)板硬件組成

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

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

    大華股份第四屆創(chuàng)新大會(huì)暨首屆“大華”技術(shù)創(chuàng)新大賽圓滿落幕

    近日,由浙江省發(fā)明協(xié)會(huì)指導(dǎo),大華股份主辦的大華股份第四屆創(chuàng)新大會(huì)暨首屆“大華”技術(shù)創(chuàng)新大賽圓滿落下帷幕。
    的頭像 發(fā)表于 12-11 11:00 ?265次閱讀

    華為-射頻基礎(chǔ)知識(shí)培訓(xùn)

    課程目標(biāo)z 熟悉和掌握射頻基本概念和知識(shí)z 了解無線射頻系統(tǒng)結(jié)構(gòu)z 了解天饋系統(tǒng)的概念和知課程內(nèi)容第一 無線通信的基本概念第二 射頻常用計(jì)算單位簡(jiǎn)介第三 射頻常用概念辨析第四章
    發(fā)表于 12-10 13:39 ?1次下載

    《DNESP32S3使用指南-IDF版_V1.6》第四章 認(rèn)識(shí)ESP-IDF

    第四章 認(rèn)識(shí)ESP-IDF ESP-IDF是樂鑫科技為其ESP32系列芯片提供的官方開發(fā)框架。這個(gè)框架主要用于開發(fā)、構(gòu)建和部署基于ESP32的聯(lián)網(wǎng)(IoT)應(yīng)用。我們要寫程序控制ESP32芯片
    發(fā)表于 11-22 09:49

    “聯(lián)想·創(chuàng)新第四屆中國(guó)高校ESG案例大賽拉開帷幕

    “創(chuàng)新”中國(guó)高校ESG案例大賽是由首都經(jīng)濟(jì)貿(mào)易大學(xué)中國(guó)ESG研究院和工商管理學(xué)院聯(lián)合主辦的大學(xué)生ESG案例大賽。第四屆中國(guó)高校ESG案例大賽由聯(lián)想集團(tuán)贊助,致力于在中國(guó)高校推廣ESG理念,發(fā)掘和培養(yǎng)中國(guó)ESG商業(yè)領(lǐng)域儲(chǔ)備人才。
    的頭像 發(fā)表于 10-31 11:36 ?493次閱讀

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

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

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

    與重定向等機(jī)制。 第四章:PRTOS Hypervisor的設(shè)計(jì)與實(shí)現(xiàn) 內(nèi)容概述 : 第四章則聚焦于PRTOS(Portable Real-Time Operating System)Hypervisor
    發(fā)表于 10-09 18:29

    【北京迅為】iTOP-i.MX6開發(fā)板使用手冊(cè)第四部分固件編譯第十四章非設(shè)備樹Android4.4系統(tǒng)編譯

    【北京迅為】iTOP-i.MX6開發(fā)板使用手冊(cè)第四部分固件編譯第十四章非設(shè)備樹Android4.4系統(tǒng)編譯
    的頭像 發(fā)表于 09-12 15:43 ?582次閱讀
    【北京迅為】iTOP-i.MX6開發(fā)板使用手冊(cè)<b class='flag-5'>第四</b>部分固件編譯第十<b class='flag-5'>四章</b>非設(shè)備樹Android4.4系統(tǒng)編譯

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

    工程師)對(duì)LoongArch內(nèi)核架構(gòu)演講。 龍芯云平臺(tái)技術(shù)及應(yīng)用.mp435:11分鐘30.62MB 文件大小 2023-05-09發(fā)表。其內(nèi)容是2023年度龍芯精英百?gòu)?qiáng)賽前培訓(xùn),龍芯發(fā)展歷程,中科院計(jì)算所,三大架構(gòu)
    發(fā)表于 09-11 18:10

    雙麒麟系統(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

    搭配100教學(xué)實(shí)驗(yàn)案例,輕松解決老師備課難題!

    Linux系統(tǒng)使用實(shí)驗(yàn)第三Linux設(shè)備驅(qū)動(dòng)程序開發(fā)實(shí)驗(yàn)第四章基于ARM基礎(chǔ)外設(shè)實(shí)驗(yàn)第五LinuxQt開發(fā)實(shí)驗(yàn)第六LinuxPython開發(fā)實(shí)驗(yàn)向下滑動(dòng)查看所有內(nèi)容
    的頭像 發(fā)表于 05-01 08:31 ?443次閱讀
    搭配100教學(xué)實(shí)驗(yàn)案例,輕松解決老師備課難題!
    主站蜘蛛池模板: 最新果冻传媒在线观看免费版| 综合激情区视频一区视频二区| 欧美含羞草免费观看全部完| 久久免费国产| 精品无码一区二区三区中文字幕| 国产www视频| 东北真实仑乱| 德国xxxx| 顶级少妇AAAAABBBBB片| SM双性精跪趴灌憋尿调教H| 99视频免费播放| china中国gay偷拍| qvod 电影| 被窝伦理午夜电影网| 成年女人色毛片免费| 成年视频xxxxxx在线| 成人久久欧美日韩一区二区三区| YELLOW在线观看高清视频免费| 99久久精品国产交换| A级韩国乱理伦片在线观看| 99久久精品久久久| av影音先锋影院男人站| 擦擦擦在线视频观看| 国产不卡在线观看视频| 国产精品99亚发布| 国产三级电影网| 娇小老少配xxxxx| 久久三级视频| 蜜臀AV999无码精品国产| 男人国产AV天堂WWW麻豆| 欧美日韩另类在线观看视频| 人妻精品久久无码专区| 少妇无码吹潮久久精品AV网站| 色婷婷国产精品视频一区二区 | 日韩大胆视频| 神马电影我不卡国语版| 午夜伦yy44880影院| 亚洲欧洲日韩视频在钱| 最近中文字幕2018MV高清在线| 99久久久无码国产精品AAA| 成a人片亚洲日本久久|