国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

查看: 1374|回復(fù): 0
打印 上一主題 下一主題

【遙控器開發(fā)基礎(chǔ)教程2】瘋殼·開源編隊(duì)無人機(jī)-中斷(按鍵檢測(cè))

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2022-7-25 10:45:03 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
COCOFLY教程
——瘋殼·無人機(jī)·系列
中斷(按鍵檢測(cè))




圖1


一、輕觸按鍵

1.1輕觸按鍵簡(jiǎn)介
輕觸按鍵是眾多按鍵中的一款產(chǎn)品,它其實(shí)相當(dāng)于是一種電子開關(guān),只要輕輕的按下按鍵就可以把開關(guān)接通,松開時(shí)把開關(guān)斷開。輕觸按鍵由于微動(dòng)開關(guān)的特性以及體積小、質(zhì)量輕的優(yōu)勢(shì)在家用電器方面得到了廣泛的應(yīng)用,應(yīng)用場(chǎng)景有: 電視機(jī)按鍵、遙控器按鍵、電腦按鍵、鍵盤按鍵、顯示器按鍵、照明按鍵等,如下圖所示。


圖2
1.2輕觸按鍵原理
以四腳輕觸按鍵示例,四腳輕觸開關(guān)的內(nèi)部結(jié)構(gòu)如下圖所示。


圖3

這種開關(guān)的工作原理,其實(shí)和普通按鈕開 關(guān)的工作原理差不多,由常開觸點(diǎn)、常閉觸點(diǎn)組合而成,在四腳輕觸開關(guān)中,常開觸點(diǎn)的作用,就是當(dāng)壓力向常開觸點(diǎn)施壓時(shí),這個(gè)電路就呈現(xiàn)接通狀態(tài);當(dāng)撤銷這種壓力的時(shí)候,就恢復(fù)到了原始的常閉觸點(diǎn),也就是所謂的斷開。這個(gè)施壓的力,就是用我們的手去開按鈕、關(guān)按鈕的動(dòng)作。
二、中斷
2.1中斷簡(jiǎn)介
由于發(fā)生了某種隨機(jī)的事件(外部或內(nèi)部),引起單片機(jī)暫時(shí)中斷正在運(yùn)行的程序,轉(zhuǎn)去執(zhí)行一段特殊的服務(wù)程序(中斷服務(wù)子程序或中斷處理程序),以處理該事件,該事件處理完后又返回被中斷的程序繼續(xù)執(zhí)行,這一過程就稱為中斷, 引發(fā)中斷地稱為中斷源。比如:看電視時(shí)突然門鈴響,那么門鈴響就相當(dāng)于中斷源。有些中斷還能夠被其他高優(yōu)先級(jí)的中斷所中斷,那么這種情況又叫做中斷的嵌套。由于單片機(jī)中中斷眾多,我們這里主要講外部中斷。
STM32F103 的每個(gè) GPIO 引腳都可以作為外部中斷的中斷輸入口,每個(gè)中斷都設(shè)有狀態(tài)位,每個(gè)中斷/事件都有獨(dú)立的觸發(fā)和屏蔽設(shè)置。STM32 的外部中斷線及其對(duì)應(yīng)事件為:
(1)Line0~15:對(duì)應(yīng)外部 IO 口的輸入中斷;
(2)Line16:連接到 PVD 輸出;
(3)Line17:連接到 RTC 鬧鈴事件;
(4)Line18:連接到 USB 喚醒事件;
(5)Line19:連接到以太網(wǎng)喚醒事件。
這里我們使用到 Line0~15 的 GPIO 輸入中斷,這里的 0~15 分別對(duì)應(yīng)每組GPIO 引腳的 0~15。如下表所示為管腳所對(duì)應(yīng)的中斷線以及對(duì)應(yīng)的中斷服務(wù)函數(shù)名稱。



表1
2.2中斷優(yōu)先級(jí)管理
當(dāng)配置了多個(gè)中斷后,如果同一時(shí)間多個(gè)中斷觸發(fā)怎么辦?誰先執(zhí)行誰后執(zhí)行?在 STM32 中有一套專門用于處理中斷優(yōu)先級(jí)的問題的機(jī)制,叫中斷分組機(jī)制。分組配置在寄存器 SCB->AIRCR 中。如下表所示。


表2
組 0 就是 4 位都用來設(shè)置成響應(yīng)優(yōu)先級(jí),2^4=16 位都是響應(yīng)優(yōu)先級(jí);
組 1 分為(2^1) 兩個(gè)搶占優(yōu)先級(jí),在這兩個(gè)搶占優(yōu)先級(jí)里面還分別有(2^3) 八個(gè)響應(yīng)優(yōu)先級(jí),(2^1) *  (2^3) =16;
組 2 分為(2^2) 四個(gè)搶占優(yōu)先級(jí),在這四個(gè)搶占優(yōu)先級(jí)里面還分別有(2^2) 四個(gè)響應(yīng)優(yōu)先級(jí),(2^2) *  (2^2) =16;
組 3 分為(2^3)八個(gè)搶占優(yōu)先級(jí),在這八個(gè)搶占優(yōu)先級(jí)里面還分別有(2^1) 兩個(gè)響應(yīng)優(yōu)先級(jí),(2^3)*(2^1) =16;
組 4 分為(2^4)十六個(gè)都是搶占優(yōu)先級(jí) (2^4) =16;
STM32 的中斷分組常常使用代碼“NVIC_PriorityGroupConfig”,如下示例:
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
該示例代碼設(shè)置 NVIC 中斷分組 2 即 2 位搶占優(yōu)先級(jí),2 位響應(yīng)優(yōu)先級(jí),也就是說可以配置成四個(gè)搶占優(yōu)先級(jí),在這四個(gè)搶占優(yōu)先級(jí)中還可以配置四個(gè)響應(yīng)優(yōu)先級(jí)。
那么什么又叫做搶占優(yōu)先級(jí),什么叫做響應(yīng)優(yōu)先級(jí)呢?主要區(qū)別如下:
(1)搶占優(yōu)先級(jí)。搶占優(yōu)先級(jí)高的中斷,可以打斷搶占優(yōu)先級(jí)低的中斷;
(2)響應(yīng)優(yōu)先級(jí)。搶占優(yōu)先級(jí)相同的中斷,響應(yīng)優(yōu)先級(jí)高的可以優(yōu)先執(zhí)行。
2.3外部中斷的觸發(fā)方式
STM32 觸發(fā)外部中斷的方式主要有三種:


圖4
上升沿觸發(fā),指的是電平從低電平(“0”)變?yōu)楦唠娖?“1”)的過程,對(duì)應(yīng)上圖中的上升時(shí)間部分。
下降沿觸發(fā),指的是電平從高電平(“1”)變?yōu)榈碗娖?“0”)的過程,對(duì)應(yīng)上圖中的下降時(shí)間部分。
上升沿下降沿觸發(fā),指的是(1)、(2)兩種情況都會(huì)觸發(fā)中斷。
2.4外部中斷常用寄存器
STM32 配置外部中斷的常用寄存器如下:
(1)上升沿觸發(fā)選擇寄存器 (EXTI_RTSR),該寄存器用于配置中斷 x 線上的中斷是否允許上升沿觸發(fā)。


圖5
TRx:指的是中斷線 x 的上升沿觸發(fā)事件配置位,其中 0 為禁止輸入線上升沿觸發(fā),1 為允許輸入線上升沿觸發(fā)。
(2)下降沿觸發(fā)選擇寄存器 (EXTI_FTSR),該寄存器用于配置中斷 x 線上的中斷是否允許下降沿觸發(fā)。


圖6
TRx:指的是中斷線 x 的下降沿觸發(fā)事件配置位,其中 0 為禁止輸入線下降沿觸發(fā),1 為允許輸入線下降沿觸發(fā)。

2.5中斷實(shí)驗(yàn)
本節(jié)實(shí)驗(yàn)的內(nèi)容是使用遙控手柄上的左搖桿的按鍵對(duì)遙控上的指示燈進(jìn)行控制,這里把左搖桿按鍵的 GPIO 配置外部中斷的下降沿觸發(fā)的方式,一旦觸發(fā)則把遙控器指示燈的狀態(tài)進(jìn)行反轉(zhuǎn),即原本為亮則滅,原本為滅則亮。
遙控器的左搖桿按鍵如下圖所示。


圖7

查看原理圖,可知左搖桿的按鍵對(duì)應(yīng) PB9,如下圖所示。



圖8
LED 的配置可以參考遙控器開發(fā)基礎(chǔ)教程《GPIO》一節(jié)。整體的編寫代碼的思路如下表所示:
代碼思路



表3
按照代碼思路,編寫代碼(通過調(diào)用官方庫(kù)),對(duì)搖桿左按鍵配置外部中斷的代碼如下圖所示:


圖9
中斷服務(wù)函數(shù)的邏輯處理如下圖所示。


圖10

保存、編譯、下載,連續(xù)按下左按鍵,就可以看到遙控手柄的四個(gè) LED 指示燈執(zhí)行熄滅與點(diǎn)亮,如下圖所示。


圖11





文件下載請(qǐng)點(diǎn)擊: 【2】中斷(按鍵檢測(cè)).pdf (794.33 KB)

本版積分規(guī)則

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 狠狠色综合久久婷婷 | 欧美性黑人十极品hd | 91视频免费网址 | 国产三级精品91三级在专区 | 男舔女逼| 国产欧美精品三区 | 国产精品久久久久久久免费 | 青青草手机在线观看 | www五月婷婷 | 我不卡影视 | 爱爱综合社区 | 日本岛国大片 | 日本免费观看官网 | 亚洲专区在线播放 | 国产欧美日韩在线 | 欧美成人影院 | 青青草免 | 欧美视频在线观看 | 久久只有精品视频 | 日本免费在线观看视频 | 精品伊人久久久久网站 | 美女视频永久黄网站免费观看国产 | 草草线在成年免费视频网站 | 男人的天堂亚洲 | 国产精品亚洲综合网站 | 91精品国产高清91久久久久久 | 日韩欧美国产偷亚洲清高 | 国产专区精品 | aa级国产女人毛片水真多 | 69热在线| 四虎a级欧美在线观看 | 亚洲欧美日韩在线一区二区三区 | 99视频在线观看视频 | 国产成人午夜视频 | 日韩久久一级毛片 | 天堂最新在线 | 国产精品美女一区二区 | 日韩免费高清完整版 | 九九视频免费在线 | 性国产精品 | 丁香六月欧美 |