<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > STM32學(xué)習筆記——外部中斷EXTI

STM32學(xué)習筆記——外部中斷EXTI

作者: 時(shí)間:2016-11-28 來(lái)源:網(wǎng)絡(luò ) 收藏

//配置按鈕中斷線(xiàn)觸發(fā)方式設置中斷配置結構體成員

EXTI_InitStructure.EXTI_Line=EXTI_Line6;//選擇外部中斷線(xiàn)EXTI_Line0~EXTI_Line18共19根線(xiàn)

EXTI_InitStructure.EXTI_Mode=EXTI_Mode_Interrupt;//設置為中斷請求,可以為EXTI_Mode_Interrupt中斷請求或者

//EXTI_Mode_Event事件請求

EXTI_InitStructure.EXTI_Trigger=EXTI_Trigger_Falling;//觸發(fā)方式下降沿觸發(fā)還可以為EXTI_Trigger_Rising上升沿觸發(fā)或者

//EXTI_Trigger_Rising_Falling上升沿下降沿觸發(fā)

EXTI_InitStructure.EXTI_LineCmd=ENABLE;//中斷線(xiàn)使能ENABLE使能,DISABLE失能

EXTI_Init(&EXTI_InitStructure);//根據參數結構體初始化EXTI中斷

EXTI_GenerateSWInterrupt(EXTI_Line6);//產(chǎn)生一個(gè)軟件中斷EXTI_Line6中斷允許

//到此中斷配置完成,可以寫(xiě)中斷處理函數。

while(1)

{

}

}

voidRCC_Configuration(void)

{

//復位RCC外部設備寄存器到默認值

RCC_DeInit();

//打開(kāi)外部高速晶振

RCC_HSEConfig(RCC_HSE_ON);

//等待外部高速時(shí)鐘準備好

HSEStartUpStatus=RCC_WaitForHSEStartUp();

//外部高速時(shí)鐘已經(jīng)準別好

if(HSEStartUpStatus==SUCCESS)

{

FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);

FLASH_SetLatency(FLASH_Latency_2);

//配置AHB(HCLK)時(shí)鐘=SYSCLK

RCC_HCLKConfig(RCC_SYSCLK_Div1);

//配置APB2(PCLK2)鐘=AHB時(shí)鐘

RCC_PCLK2Config(RCC_HCLK_Div1);

//配置APB1(PCLK1)鐘=AHB1/2時(shí)鐘

RCC_PCLK1Config(RCC_HCLK_Div2);

//配置ADC時(shí)鐘=PCLK21/4

RCC_ADCCLKConfig(RCC_PCLK2_Div4);

//配置PLL時(shí)鐘==外部高速晶體時(shí)鐘*98MHz*9MHz=72MHz

RCC_PLLConfig(RCC_PLLSource_HSE_Div1,RCC_PLLMul_9);

//配置ADC時(shí)鐘=PCLK2/4

RCC_ADCCLKConfig(RCC_PCLK2_Div4);

//使能PLL時(shí)鐘

RCC_PLLCmd(ENABLE);

//等待PLL時(shí)鐘就緒

while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY)==RESET)

{

}

//配置系統時(shí)鐘=PLL時(shí)鐘

RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);

//檢查PLL時(shí)鐘是否作為系統時(shí)鐘

while(RCC_GetSYSCLKSource()!=0x08)

{

}

}

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOB

|RCC_APB2Periph_AFIO,ENABLE);

//使能GPIOA,GPIOB和AFIO的APB2

}

voidGPIO_Configuration(void)

{

GPIO_InitTypeDefGPIO_InitStructure;//定義配置GPIO的結構體

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_8;//選中第8個(gè)腳

GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;//推挽輸出

GPIO_Init(GPIOB,&GPIO_InitStructure);//用配置好的結構體初始化GPIOBPB8用于驅動(dòng)led

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_6;//選中6腳

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN_FLOATING;//配置浮空輸入

GPIO_Init(GPIOB,&GPIO_InitStructure);//初始化GPIOBPB6腳連接外部中斷線(xiàn)6的中斷源

//所有的端口都有外部中斷的能力,為了使用外部中斷線(xiàn),端口必須配置為輸入模式

}



評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>