




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
單元四串口打印—中斷接收主講人:湯宇嬌上海城建職業(yè)學(xué)院本單元內(nèi)容中斷基本概述USART中斷庫(kù)函數(shù)說(shuō)明中斷方式的串口通信教學(xué)目標(biāo)了解中斷的基本概念了解HAL庫(kù)的中斷設(shè)計(jì)思想熟練掌握中斷方式串口通信的編程方法4.1中斷基本概述基本概念UART中斷的概念A(yù)RMCoetex-M3內(nèi)核共支持256個(gè)中斷,其中16個(gè)內(nèi)部中斷,240個(gè)外部中斷和可編程的256級(jí)中斷優(yōu)先級(jí)的設(shè)置。STM32目前支持的中斷共84個(gè)(16個(gè)內(nèi)部+68個(gè)外部),還有16級(jí)可編程的中斷優(yōu)先級(jí)的設(shè)置,僅使用中斷優(yōu)先級(jí)設(shè)置8bit中的高4位。中斷簡(jiǎn)介基本概念UART中斷的概念STM32可支持68個(gè)中斷通道,已經(jīng)固定分配給相應(yīng)的外部設(shè)備,每個(gè)中斷通道都具備自己的中斷優(yōu)先級(jí)控制字節(jié)(8位,但是STM32中只使用4位,高4位有效),每4個(gè)通道的8位中斷優(yōu)先級(jí)控制字構(gòu)成一個(gè)32位的優(yōu)先級(jí)寄存器。68個(gè)通道的優(yōu)先級(jí)控制字節(jié)至少構(gòu)成17個(gè)32位的優(yōu)先級(jí)寄存器。中斷簡(jiǎn)介基本概念UART中斷的概念4bit的中斷優(yōu)先級(jí)可以分成2組,從高位看,前面定義的是搶占式優(yōu)先級(jí),后面是響應(yīng)優(yōu)先級(jí)。按照這種分組,4bit一共可以分成5組:第0組:所有4bit用于指定響應(yīng)優(yōu)先級(jí);第1組:最高1位用于指定搶占式優(yōu)先級(jí),后面3位用于指定響應(yīng)優(yōu)先級(jí);第2組:最高2位用于指定搶占式優(yōu)先級(jí),后面2位用于指定響應(yīng)優(yōu)先級(jí);第3組:最高3位用于指定搶占式優(yōu)先級(jí),后面1位用于指定響應(yīng)優(yōu)先級(jí);第4組:所有4位用于指定搶占式優(yōu)先級(jí)。搶占優(yōu)先級(jí)和響應(yīng)優(yōu)先級(jí)基本概念UART中斷的概念所謂搶占式優(yōu)先級(jí)和響應(yīng)優(yōu)先級(jí),他們之間的關(guān)系是:具有高搶占式優(yōu)先級(jí)的中斷可以在具有低搶占式優(yōu)先級(jí)的中斷處理過(guò)程中被響應(yīng),即中斷嵌套。當(dāng)兩個(gè)中斷源的搶占式優(yōu)先級(jí)相同時(shí),這兩個(gè)中斷將沒(méi)有嵌套關(guān)系,當(dāng)一個(gè)中斷到來(lái)后,如果正在處理另一個(gè)中斷,這個(gè)后到來(lái)的中斷就要等到前一個(gè)中斷處理完之后才能被處理。如果這兩個(gè)中斷同時(shí)到達(dá),則中斷控制器根據(jù)他們的響應(yīng)優(yōu)先級(jí)高低來(lái)決定先處理哪一個(gè);如果他們的搶占式優(yōu)先級(jí)和響應(yīng)優(yōu)先級(jí)都相等,則根據(jù)他們?cè)谥袛啾碇械呐盼豁樞驔Q定先處理哪一個(gè)。每一個(gè)中斷源都必須定義2個(gè)優(yōu)先級(jí)。搶占優(yōu)先級(jí)和響應(yīng)優(yōu)先級(jí)基本概念UART中斷的概念有幾點(diǎn)需要注意的是:如果指定的搶占式優(yōu)先級(jí)別或響應(yīng)優(yōu)先級(jí)別超出了選定的優(yōu)先級(jí)分組所限定的范圍,將可能得到意想不到的結(jié)果;搶占式優(yōu)先級(jí)別相同的中斷源之間沒(méi)有嵌套關(guān)系;如果某個(gè)中斷源被指定為某個(gè)搶占式優(yōu)先級(jí)別,又沒(méi)有其它中斷源處于同一個(gè)搶占式優(yōu)先級(jí)別,則可以為這個(gè)中斷源指定任意有效的響應(yīng)優(yōu)先級(jí)別。搶占優(yōu)先級(jí)和響應(yīng)優(yōu)先級(jí)基本概念UARTUSART中斷向量表優(yōu)先級(jí)優(yōu)先級(jí)類(lèi)型名稱(chēng)說(shuō)明地址44可設(shè)置USART1USART1全局中斷0x0000_00D445可設(shè)置USART2USART2全局中斷0x0000_00D846可設(shè)置USART3USART3全局中斷0x0000_00DC基本概念UART中斷控制器中斷控制器NVIC(NestedVectoredInterruptController),NVIC是屬于Cortex內(nèi)核的器件,不可屏蔽中斷和外部中斷都是由它處理,而SYTICK不是由它處理。NVIC中斷控制器3.2USART中斷庫(kù)函數(shù)配置中斷配置NVIC嵌套向量中斷控制器NVIC_InitTypeDefstructureNVIC_InitTypeDef定義于文件“stm32f10x_nvic.h”:typedefstruct{u8 NVIC_IRQChannel;u8 NVIC_IRQChannelPreemptionPriority;u8 NVIC_IRQChannelSubPriority;FunctionalStateNVIC_IRQChannelCmd;}NVIC_InitTypeDef;接口函數(shù):NVIC_Init
函數(shù)原型voidNVIC_Init(NVIC_InitTypeDef*NVIC_InitStruct)功能描述根據(jù)NVIC_InitStruct中指定的參數(shù)初始化外設(shè)NVIC寄存器入口參數(shù)NVIC_InitStruct:指向結(jié)構(gòu)NVIC_InitTypeDef的指針,包含了外設(shè)GPIO的配置信息返回值無(wú)NVIC驅(qū)動(dòng)有多種用途:例如使能或者失能IRQ中斷,使能或者失能單獨(dú)的IRQ通道,改變IRQ通道的優(yōu)先級(jí)等等。中斷配置NVIC串口中斷通用處理函數(shù)接口函數(shù):USART_ITConfig 函數(shù)原型voidUSART_ITConfig(USART_TypeDef*USARTx,u16USART_IT,FunctionalStateNewState)功能描述使能或者失能指定的USART中斷入口參數(shù)1USARTx:x可以是1,2或者3,來(lái)選擇USART外設(shè)入口參數(shù)2USART_IT:待使能或者失能的USART中斷源入口參數(shù)3NewState:USARTx中斷的新?tīng)顟B(tài)這個(gè)參數(shù)可以取:ENABLE或者DISABLE返回值無(wú)中斷配置NVIC串口中斷通用處理函數(shù)接口函數(shù):USART1_IRQHandler
函數(shù)原型voidUSART1_IRQHandler(void)功能描述USART1中斷服務(wù)程序入口參數(shù)無(wú)返回值無(wú)中斷配置NVIC串口中斷通用處理函數(shù)接口函數(shù):USART_GetITStatus
函數(shù)原型ITStatusUSART_GetITStatus(USART_TypeDef*USARTx,u16USART_IT)功能描述檢查指定的USART中斷發(fā)生與否入口參數(shù)1USARTx:x可以是1,2或者3,來(lái)選擇USART外設(shè)入口參數(shù)2USART_IT:待檢查的USART中斷源返回值USART_IT的新?tīng)顟B(tài)中斷配置NVIC串口中斷通用處理函數(shù)接口函數(shù):USART_ClearFlag 函數(shù)原型voidUSART_ClearFlag(USART_TypeDef*USARTx,u16USART_FLAG)功能描述清除USARTx的待處理標(biāo)志位入口參數(shù)1USARTx:x可以是1,2或者3,來(lái)選擇USART外設(shè)入口參數(shù)2USART_FLAG:待清除的USART標(biāo)志位返回值無(wú)3.3中斷方式的串口通信串口中斷方式UART串口中斷方式的特點(diǎn)發(fā)送數(shù)據(jù)時(shí),將一字節(jié)數(shù)據(jù)放入數(shù)據(jù)寄存器DR;接收數(shù)據(jù)時(shí),將DR的內(nèi)容存放到用戶(hù)存儲(chǔ)區(qū);中斷方式不必等待數(shù)據(jù)的傳輸過(guò)程,只需要在每字節(jié)數(shù)據(jù)收發(fā)完成后,由中斷標(biāo)志位觸發(fā)中斷,在中斷服務(wù)程序中放入新的一字節(jié)數(shù)據(jù)或者讀取接收到的一字節(jié)數(shù)據(jù);在傳輸數(shù)據(jù)量較大,且通信波特率較高(大于38400)時(shí),如果采用中斷方式,每收發(fā)一個(gè)字節(jié)的數(shù)據(jù),CPU都會(huì)被打斷,造成CPU無(wú)法處理其他事務(wù)。因此在批量數(shù)據(jù)傳輸,通信波特率較高時(shí),建議采用DMA方式。串口初始化UART串口中斷程序初始化開(kāi)啟時(shí)鐘GPIO端口配置GPIO初始化USART配置USART中斷配置和使能USART使能NVIC優(yōu)先級(jí)分組設(shè)置NVIC完成USART配置和使能USART_ITConfig(USART2,USART_IT_RX
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年CPSM考試備考計(jì)劃與試題與答案
- 浙教版 2021-2022學(xué)年度八年級(jí)數(shù)學(xué)上冊(cè)模擬測(cè)試卷
- 中班防拐騙課件
- 寧夏銀川市興慶區(qū)育才中學(xué)2025年高考沖刺模擬化學(xué)試題含解析
- 天津五區(qū)縣2025年高考化學(xué)倒計(jì)時(shí)模擬卷含解析
- 福建省莆田市第六中學(xué)2025年高三第二次調(diào)研化學(xué)試卷含解析
- 2025太原城市職業(yè)技術(shù)學(xué)院輔導(dǎo)員考試題庫(kù)
- 2025四川化工職業(yè)技術(shù)學(xué)院輔導(dǎo)員考試題庫(kù)
- 2025婁底職業(yè)技術(shù)學(xué)院輔導(dǎo)員考試題庫(kù)
- 2025年汽車(chē)尾氣凈化設(shè)備項(xiàng)目建議書(shū)
- 人工智能環(huán)境下的初中語(yǔ)文課堂教學(xué)探究
- 第46屆世界技能大賽河南省選拔賽-化學(xué)實(shí)驗(yàn)室技術(shù)項(xiàng)目-樣題
- 糖尿病預(yù)防幻燈片
- 隧道危險(xiǎn)源清單
- T-ZNZ 248-2024 紅黃壤貧瘠耕地快速培肥技術(shù)規(guī)范
- 2024年度安徽省高校教師資格證之高等教育學(xué)題庫(kù)附答案(典型題)
- 《ISO 41001-2018 設(shè)施管理- 管理體系 要求及使用指南》專(zhuān)業(yè)讀與應(yīng)用指導(dǎo)材料之3:“4 組織環(huán)境-4.3 確定設(shè)施管理體系的范圍”(雷澤佳編制-2024)
- 2024-2030年枸杞汁行業(yè)市場(chǎng)現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 2024義務(wù)教育《英語(yǔ)課程標(biāo)準(zhǔn)》(2022版)
- 一例下肢靜脈血栓疑難病例護(hù)理討論
- 鋼卷采購(gòu)合同
評(píng)論
0/150
提交評(píng)論