可產生20個軟體外部中斷。
探測低於apb2時鐘週期的外部脈衝。
當上公升沿下降沿和軟體觸發請求時,看中斷和事件的遮蔽器來決定是否進入下一步(可同時產生),若中斷遮蔽器使能則掛起。
exti0-exti15對應gpio引腳的0-15,剩下4位exti對應不同功能。
這裡還指出需要配置afio_exticrx暫存器和使能afio時鐘。
此掛起非nvic中的掛起,此掛起應該是指中斷在執行,nvic中的掛起是指低優先順序中斷掛起巢狀高優先順序中斷),將會一直處於中斷狀態(我認為的)。
swier在pr對應位為0無請求和imr對應位已使能時寫入1將會產生中斷。
//軟體中斷觸發
void
exti_nvic_gpiocompleteconfig
(void);
void
exticonfig
( uint32_t exti_line , extimode_typedef exti_mode , extitrigger_typedef exti_trigger , functionalstate exti_linecmd )
;void
exti_nvic_gpioconfig
( gpio_typedef* gpiox , uint16_t gpio_pin , extimode_typedef exti_mode ,\
extitrigger_typedef exti_trigger , functionalstate exti_linecmd )
;#endif
exticonfig.c
void
exticonfig
( uint32_t exti_line , extimode_typedef exti_mode , extitrigger_typedef exti_trigger , functionalstate exti_linecmd )
void
exti_nvic_gpiocompleteconfig
(void
)//硬體中斷配置
void
exti_nvic_gpiosoftwareconfig
(void
)//軟體中斷配置,比硬體中斷少了gpio相關的操作,呼叫interrupt0直接產生中斷。
stm32f10x_it.c
void
exti0_irqhandler
(void
)}
main.c
int
main()
//軟體中斷使led閃爍
}
歡迎交流指正~~ STM32學習筆記 基礎外設 EXTI
四 為什麼配置中斷功能時要在apb2中使能afio相關功能?五 外部中斷bug總結 配置中斷分組nvic並使用中斷 void nvic exit cfg gpio初始化 void gpio exit cfg 初始化線上中斷,設定觸發條件等 void exti cfg exti2中斷處理函式 void...
STM32外部中斷 exti 配置
在微控制器運用中,exti的使用算是常規操作了。在32微控制器中,exti的每個中斷均可單獨配置來選擇型別 即中斷和事件 以及相應的觸發事件 上公升沿觸發 下降沿觸發 邊沿觸發等 也可以進行單獨遮蔽的操作。如下是32中的exti框圖,其中線路1 2 3 4 5為 中斷 而1 2 3 6 7 8為 事...
STM32 使用EXTI處理外部中斷
使用exti處理外部中斷 1.任務描述 使用開發板上的key1按鍵,達到開 關led彩燈的目的 2.程式設計思路及要點 程式設計思路 檢測gpio中斷,在中斷服務函式裡面,實現開 關led彩燈 程式設計要點 1 初始化用來產生中斷的 gpio 2 初始化 exti 3 配置 nvic 4 編寫中斷服...