




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
單元四串口打印—中斷接收主講人:湯宇嬌上海城建職業(yè)學(xué)院本單元內(nèi)容中斷基本概述USART中斷庫函數(shù)說明中斷方式的串口通信教學(xué)目標(biāo)了解中斷的基本概念了解HAL庫的中斷設(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位。中斷簡介基本概念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í)寄存器。中斷簡介基本概念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í)的中斷處理過程中被響應(yīng),即中斷嵌套。當(dāng)兩個(gè)中斷源的搶占式優(yōu)先級(jí)相同時(shí),這兩個(gè)中斷將沒有嵌套關(guān)系,當(dāng)一個(gè)中斷到來后,如果正在處理另一個(gè)中斷,這個(gè)后到來的中斷就要等到前一個(gè)中斷處理完之后才能被處理。如果這兩個(gè)中斷同時(shí)到達(dá),則中斷控制器根據(jù)他們的響應(yīng)優(yōu)先級(jí)高低來決定先處理哪一個(gè);如果他們的搶占式優(yōu)先級(jí)和響應(yīng)優(yōu)先級(jí)都相等,則根據(jù)他們在中斷表中的排位順序決定先處理哪一個(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í)別相同的中斷源之間沒有嵌套關(guān)系;如果某個(gè)中斷源被指定為某個(gè)搶占式優(yōu)先級(jí)別,又沒有其它中斷源處于同一個(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í)類型名稱說明地址44可設(shè)置USART1USART1全局中斷0x0000_00D445可設(shè)置USART2USART2全局中斷0x0000_00D846可設(shè)置USART3USART3全局中斷0x0000_00DC基本概念UART中斷控制器中斷控制器NVIC(NestedVectoredInterruptController),NVIC是屬于Cortex內(nèi)核的器件,不可屏蔽中斷和外部中斷都是由它處理,而SYTICK不是由它處理。NVIC中斷控制器3.2USART中斷庫函數(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的配置信息返回值無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,來選擇USART外設(shè)入口參數(shù)2USART_IT:待使能或者失能的USART中斷源入口參數(shù)3NewState:USARTx中斷的新狀態(tài)這個(gè)參數(shù)可以取:ENABLE或者DISABLE返回值無中斷配置NVIC串口中斷通用處理函數(shù)接口函數(shù):USART1_IRQHandler
函數(shù)原型voidUSART1_IRQHandler(void)功能描述USART1中斷服務(wù)程序入口參數(shù)無返回值無中斷配置NVIC串口中斷通用處理函數(shù)接口函數(shù):USART_GetITStatus
函數(shù)原型ITStatusUSART_GetITStatus(USART_TypeDef*USARTx,u16USART_IT)功能描述檢查指定的USART中斷發(fā)生與否入口參數(shù)1USARTx:x可以是1,2或者3,來選擇USART外設(shè)入口參數(shù)2USART_IT:待檢查的USART中斷源返回值USART_IT的新狀態(tài)中斷配置NVIC串口中斷通用處理函數(shù)接口函數(shù):USART_ClearFlag 函數(shù)原型voidUSART_ClearFlag(USART_TypeDef*USARTx,u16USART_FLAG)功能描述清除USARTx的待處理標(biāo)志位入口參數(shù)1USARTx:x可以是1,2或者3,來選擇USART外設(shè)入口參數(shù)2USART_FLAG:待清除的USART標(biāo)志位返回值無3.3中斷方式的串口通信串口中斷方式UART串口中斷方式的特點(diǎn)發(fā)送數(shù)據(jù)時(shí),將一字節(jié)數(shù)據(jù)放入數(shù)據(jù)寄存器DR;接收數(shù)據(jù)時(shí),將DR的內(nèi)容存放到用戶存儲(chǔ)區(qū);中斷方式不必等待數(shù)據(jù)的傳輸過程,只需要在每字節(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ù)。因此在批量數(shù)據(jù)傳輸,通信波特率較高時(shí),建議采用DMA方式。串口初始化UART串口中斷程序初始化開啟時(shí)鐘GPIO端口配置GPIO初始化USART配置USART中斷配置和使能USART使能NVIC優(yōu)先級(jí)分組設(shè)置NVIC完成USART配置和使能USART_ITConfig(USART2,USART_IT_RX
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 新疆大學(xué)《工程項(xiàng)目管理及審計(jì)實(shí)訓(xùn)》2023-2024學(xué)年第一學(xué)期期末試卷
- 徐州幼兒師范高等??茖W(xué)校《影視后期創(chuàng)作》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025年河南省駐馬店市高三第一次診斷考試(生物試題文)試卷含解析
- 鞏固CPSM考試知識(shí)的有效方式及試題與答案
- 河南對外經(jīng)濟(jì)貿(mào)易職業(yè)學(xué)院《無線通信與車聯(lián)網(wǎng)》2023-2024學(xué)年第二學(xué)期期末試卷
- 如何提升采購合同的執(zhí)行力度試題及答案
- 廣東青年職業(yè)學(xué)院《多媒體課件制作與應(yīng)用》2023-2024學(xué)年第二學(xué)期期末試卷
- 鄭州鐵路職業(yè)技術(shù)學(xué)院《經(jīng)齊學(xué)原理》2023-2024學(xué)年第二學(xué)期期末試卷
- 貴州職業(yè)技術(shù)學(xué)院《環(huán)境與化學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 西藏那曲市色尼區(qū)2025屆數(shù)學(xué)四下期末統(tǒng)考模擬試題含解析
- 人教版七年級(jí)上歷史第三單元復(fù)習(xí)課件
- 微創(chuàng)介入診斷治療管理制度
- 人工智能環(huán)境下的初中語文課堂教學(xué)探究
- 第46屆世界技能大賽河南省選拔賽-化學(xué)實(shí)驗(yàn)室技術(shù)項(xiàng)目-樣題
- 糖尿病預(yù)防幻燈片
- 隧道危險(xiǎn)源清單
- 2024年度安徽省高校教師資格證之高等教育學(xué)題庫附答案(典型題)
- 《ISO 41001-2018 設(shè)施管理- 管理體系 要求及使用指南》專業(yè)讀與應(yīng)用指導(dǎo)材料之3:“4 組織環(huán)境-4.3 確定設(shè)施管理體系的范圍”(雷澤佳編制-2024)
- 2024-2030年枸杞汁行業(yè)市場現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 2024義務(wù)教育《英語課程標(biāo)準(zhǔn)》(2022版)
- 一例下肢靜脈血栓疑難病例護(hù)理討論
評(píng)論
0/150
提交評(píng)論