国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(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.外部中斷配置的評論 (共 條)

分享到微博請遵守國家法律
思茅市| 满洲里市| 北票市| 内丘县| 镇巴县| 格尔木市| 赤峰市| 茌平县| 胶州市| 周至县| 军事| 佛教| 大方县| 象山县| 沁源县| 锡林郭勒盟| 临清市| 贵德县| 长春市| 藁城市| 英超| 都兰县| 诸城市| 北海市| 南川市| 云龙县| 长白| 临沭县| 横峰县| 德安县| 麟游县| 边坝县| 唐河县| 兴安县| 营山县| 桂阳县| 吉木乃县| 延边| 分宜县| 琼结县| 电白县|