STM32的中斷機(jī)制stm32中斷方式有幾種
中斷機(jī)制在單片機(jī)中是很重要的環(huán)節(jié),中斷代碼默認(rèn)地從上往下執(zhí)行,遇到特定條件或特定語句,將按照指定的程序跳轉(zhuǎn)。而STM32單片機(jī)的中斷是有兩層控制器分別控制的,若采用中斷機(jī)制,必須同時(shí)配置內(nèi)核和芯片。
在STM32單片機(jī)中執(zhí)行中斷機(jī)制主要有三個(gè)函數(shù),分別是:
1.配置NVIC_Config()函數(shù)
2.配置EXTI_Config()函數(shù)
3.自行編寫中斷服務(wù)函數(shù)
NVIC是嵌套向量中斷控制器,主要控制整個(gè)單片機(jī)芯片中斷相關(guān)的功能,跟內(nèi)核緊密耦合。配置NVIC_Config()函數(shù)是為單片機(jī)提供選擇中斷源的優(yōu)先級(jí)及打開中斷通道,主要由配置NVIC初始化結(jié)構(gòu)體NVIC_InitStruct完成,NVIC的任務(wù)主要是給對(duì)應(yīng)的中斷源分配中斷優(yōu)先級(jí)。NVIC控制器主要負(fù)責(zé)管理內(nèi)核中的中斷,而內(nèi)核對(duì)中斷的控制主要表現(xiàn)在中斷地址、中斷優(yōu)先級(jí)和中斷使能。
EXTI是外部中斷/事件控制器,一般由IO口的電平信號(hào)變化而引起的,主要管理控制器的20個(gè)中斷/事件線。每個(gè)中斷/事件線都有一個(gè)專屬的邊沿檢測器,可實(shí)現(xiàn)輸入信號(hào)的上升沿檢測和下降沿檢測。EXTI最大優(yōu)勢是可對(duì)單個(gè)中斷/事件線配置中端或觸發(fā)事件。EXTI是根據(jù)傳入的信號(hào)進(jìn)行處理,向NVIC傳送中斷信號(hào)。
所有的中斷函數(shù)都要在stm32f10x_it.c中編寫代碼。
STM32芯片中斷設(shè)置:
1.打開時(shí)鐘
2.中斷引腳選擇
3.中斷模式選擇
4.中斷觸發(fā)方式選擇
5.使能中斷
STM32內(nèi)核中斷配置:
1.中斷優(yōu)先級(jí)分組
2.設(shè)置中斷地址
3.設(shè)置搶占優(yōu)先級(jí)
4.設(shè)置子優(yōu)先級(jí)
5.使能中斷
以上是STM32中斷機(jī)制及函數(shù),希望對(duì)用戶有所幫助。
本文整合自CSDN、ChinaUnix
責(zé)編AJX
-
STM32
+關(guān)注
關(guān)注
2302文章
11106瀏覽量
370232 -
中斷
+關(guān)注
關(guān)注
5文章
911瀏覽量
43454
發(fā)布評(píng)論請(qǐng)先 登錄
脈沖編碼器TIM3中斷不生效是怎么回事?
在rt-thread系統(tǒng)中,使用stm32,怎樣設(shè)置接收中斷字節(jié)數(shù)?
STM32G474進(jìn)入Fault3中斷沒辦法設(shè)置成周期性觸發(fā)嗎?
第十章 W55MH32中斷應(yīng)用概覽

STM32的中斷機(jī)制 stm32中斷方式有幾種
評(píng)論