最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

江科大學習筆記 _3.外部中斷配置

2023-06-09 12:30 作者:自閉選手的Z23  | 我要投稿

例:開啟PB14的引腳的 接收外部信號 中斷

1.?開啟RCC時鐘,掛載在APB2總線上

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);

?

2.?開啟AFIO時鐘,掛載在APB2總線上

RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);

EXTI和NVIC在STM32中不需要手動開啟

?

3.?選擇EXTI外設中斷線,并配置EXTI

AFIO的配置文件和GPIO在一個函數(shù)里

GPIO_EXTILineConfig(GPIO_PortSourceGPIOB, GPIO_PinSource14);

?

?

配置EXTI

????EXTI_InitTypeDef EXTI_InitStruct;

????EXTI_InitStruct.EXTI_Line = EXTI_Line14;

????EXTI_InitStruct.EXTI_LineCmd = ENABLE;

????EXTI_InitStruct.EXTI_Mode = EXTI_Mode_Interrupt;

????EXTI_InitStruct.EXTI_Trigger = ?EXTI_Trigger_Falling;

????EXTI_Init(&EXTI_InitStruct);

?

4.?配置NVIC

在內(nèi)核函數(shù)庫里(misc.h)

?

NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//這個函數(shù)在整個程序里只要配置一次

????

????NVIC_InitTypeDef NVIC_InitStruct;

????NVIC_InitStruct.NVIC_IRQChannel = EXTI15_10_IRQn;

????NVIC_InitStruct.NVIC_IRQChannelCmd = ENABLE;

????NVIC_InitStruct.NVIC_IRQChannelPreemptionPriority = 1;

????NVIC_InitStruct.NVIC_IRQChannelSubPriority = 1;

????NVIC_Init(&NVIC_InitStruct);

?

4步后,中斷程序開啟,接下來就需要編寫中斷函數(shù)

每一個中斷通道都對應一個中斷函數(shù)

?

void EXTI15_10_IRQHandler(void)

{

//因為EXTI10--15都能進這個中斷函數(shù),所以先判斷是不是EXTI14進的中斷

????if(EXTI_GetITStatus(EXTI_Line14) == SET)

?????{

??????????

????? ????EXTI_ClearITPendingBit(EXTI_Line14);//關閉這個中斷,否則一直在中斷中

?????}

?

}

?


江科大學習筆記 _3.外部中斷配置的評論 (共 條)

分享到微博請遵守國家法律
木兰县| 泰顺县| 仁怀市| 北辰区| 灵武市| 新和县| 苏尼特右旗| 武安市| 伊金霍洛旗| 夏邑县| 阿巴嘎旗| 灵宝市| 衢州市| 兴城市| 麦盖提县| 龙陵县| 光山县| 伊金霍洛旗| 康马县| 松滋市| 白山市| 周至县| 丰城市| 游戏| 项城市| 大方县| 连城县| 都安| 平南县| 当涂县| 六盘水市| 象山县| 峨眉山市| 徐州市| 垫江县| 阳城县| 广丰县| 隆昌县| 石景山区| 宿州市| 耒阳市|