日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

STM32的:外部中断线EXTIN和外部中断向量EXTIN_IRQn和中断服务程序入口EXTIN_IRQHandler详解

發布時間:2025/6/15 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 STM32的:外部中断线EXTIN和外部中断向量EXTIN_IRQn和中断服务程序入口EXTIN_IRQHandler详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一:硬件情況:采用PA11管腳

需要明確的是,PxN管腳共用外部中斷線EXTIN外部中斷向量EXTIN_IRQn中斷服務程序入口EXTIN_IRQHandler,但是需要注意的是[9...5]共用EXTI9_5_IRQn和EXTI9_5_IRQHandler、[15...10]共用EXTI15_10_IRQn和EXTI15_10_IRQHandler。

二:配置過程

1.設置時鐘

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_AFIO, ENABLE);

注意:需要打開AFIO時鐘。

2.配置GPIO

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOA, &GPIO_InitStructure);

注意:采用浮空輸入方式

3.將GPIO管腳與外部中斷線連接

GPIO_EXTILineConfig(GPIO_PortSourceGPIOA, GPIO_PinSource11);

注意:很重要

4.配置EXTI

EXTI_InitStructure.EXTI_Line = EXTI_Line11; EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt; EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling; EXTI_InitStructure.EXTI_LineCmd = ENABLE; EXTI_Init(&EXTI_InitStructure);

注意:包括觸發方式等等

5.配置NVIC

NVIC_InitTypeDef NVIC_InitStructure; NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);NVIC_InitStructure.NVIC_IRQChannel = EXTI15_10_IRQn; //PPP外部中斷線 NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure);

6.寫中斷服務程序

void EXTI15_10_IRQHandler(void) {if (EXTI_GetITStatus(EXTI_Line11) != RESET){EXTI_ClearITPendingBit(EXTI_Line11);//清除標志...} }

?

總結

以上是生活随笔為你收集整理的STM32的:外部中断线EXTIN和外部中断向量EXTIN_IRQn和中断服务程序入口EXTIN_IRQHandler详解的全部內容,希望文章能夠幫你解決所遇到的問題。

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