日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

关于嵌入式学习随笔-6《NVIC中断优先级管理》

發布時間:2023/12/20 编程问答 56 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于嵌入式学习随笔-6《NVIC中断优先级管理》 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、中斷技術概述

??? 在單片機應用系統中,中斷技術主要用于時時檢測與控制,也就是要求單片機能感及時地響應中斷請求源提出的服務請求,進行快速響應并及時處理,這些工作是由單片機片內的中斷系統來實現的。當中斷請求源發出中斷請求時,如果中斷請求得到允許,單片機暫時中止當前正在執行的主程序,轉到中斷服務處理程序處理中斷請求,處理完中斷服務請求后,再回到原來被中止的程序處(斷點),繼續執行被中斷的主程序。

中斷響應和處理過程如下圖所示:













2、中斷源

--》M4/M7內核支持256個中斷,其中包含了16個內核中斷和240個外部中斷,并且具有256級的可編程中斷設置。

--》對于STM32F4/F7來說并沒有使用CM4內核的全部資源,而只是用了其中的一部分》

? -->STM32F40xx/STM32F41xx總共有92個中斷:10個內核中斷,82個可屏蔽外部中斷。

? -->STM32F42xx/STM32F43xx總共有97個中斷:10個內核中斷,87個可屏蔽外部中斷。

? -->STM32F6x總共有118個中斷:10個內核中斷,108個可屏蔽外部中斷。

--》STM32具有16級可編程的中斷優先級,而我們常用的就是這些可屏蔽中斷。

3、中斷向量表

中斷向量是中斷服務程序的入口地址。將所有中斷向量集中放在一起,就形成了中斷向量表。

中斷向量表參考

4、如何管理如此之多的中斷?(NVIC中斷優先級管理)

中斷管理方法:

?? 首先,對于STM32中斷進行分組,0-4組。同時,對每個中斷設置一個搶占優先級和一個響應優先級值。

分組配置實在寄存器SCB->AIRCR中配置:

5、搶占優先級和響應優先級的區別

--》高優先級的搶占優先級是可以打斷正在進行的低搶占優先級中斷的。

--》搶占優先級相同的中斷,高響應優先級不可以打斷低響應優先級的中斷。

--》搶占優先級相同的中斷,當兩個中斷同時發生的情況下,哪個響應優先級越高,哪個先執行。

--》如果兩個中斷的搶占優先級和響應優先級都一樣,那么哪個中斷先發生就先執行。

例子:(假定設置中斷優先級組為2)

設置中斷3的搶占優先級為2,響應優先級為1;

設置中斷6的搶占優先級為3,響應優先級為0;

設置中斷7的搶占優先級為2,響應優先級為0。

則3個中斷的優先級順序為:中斷7>中斷3>中斷6。

注意:優先級數值越小,優先級越高,先看搶占,再看響應。

?? 一般情況下,系統代碼執行過程中,只設置一次中斷優先級分組,比如分組2,設置好分組后一般不會在改變分組。隨意改變分組會導致中斷管理混亂,程序出現意想不到的執行結果。

6、HAL庫中相應設置操作

第一步:設置中斷優先級分組

1 HAL_NVIC_SetPriorityGrouping(uint32_t PriorityGroup);

第二步:設置單個中斷搶占優先級和響應優先級

1 HAL_NVIC_SetPriority(IRQn_Type IRQn, uint32_t PreemptPriority, uint32_t SubPriority);

第三步:設置使能中斷通道

1 HAL_NVIC_EnableIRQ(IRQn_Type IRQn);


轉載于:https://www.cnblogs.com/vcan123/p/10434571.html

總結

以上是生活随笔為你收集整理的关于嵌入式学习随笔-6《NVIC中断优先级管理》的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。