27,397
社区成员
![](https://csdnimg.cn/release/cmsfe/public/img/topic.427195d5.png)
![](https://csdnimg.cn/release/cmsfe/public/img/me.40a70ab0.png)
![](https://csdnimg.cn/release/cmsfe/public/img/task.87b52881.png)
![](https://csdnimg.cn/release/cmsfe/public/img/share-circle.3e0b7822.png)
这是程序 各位大神帮看看
void Y_X_GPIO(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD ,ENABLE);//ʹÄÜPORTDʱÖÓ
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11| GPIO_Pin_12| GPIO_Pin_13|GPIO_Pin_14 ;// ÏÞλ
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPD; //ÉèÖóÉÉÏÀÊäÈë
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOD, &GPIO_InitStructure);//³õʼ»¯GPIOD5
}
void Y_X_ST0P(void) //YÖáÏÞλ¿ª¹Ø
{
EXTI_InitTypeDef EXTI_InitStructure;
NVIC_InitTypeDef NVIC_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);
Y_X_GPIO();
EXTI_ClearITPendingBit(EXTI_Line11);
EXTI_ClearITPendingBit(EXTI_Line12);
EXTI_ClearITPendingBit(EXTI_Line13);
EXTI_ClearITPendingBit(EXTI_Line14);
GPIO_EXTILineConfig(GPIO_PortSourceGPIOD , GPIO_PinSource11 ); //½«GPIO ÓëÖжÏÓ³ÉäÆðÀ´
GPIO_EXTILineConfig(GPIO_PortSourceGPIOD , GPIO_PinSource12 );
GPIO_EXTILineConfig(GPIO_PortSourceGPIOD , GPIO_PinSource13 );
GPIO_EXTILineConfig(GPIO_PortSourceGPIOD , GPIO_PinSource14 );
EXTI_InitStructure.EXTI_Line=EXTI_Line11; //ÖжÏÏß±àºÅ È¡Öµ·¶Î§ EXTI_Line0~EXTI_Line15
EXTI_InitStructure.EXTI_Mode=EXTI_Mode_Interrupt;
EXTI_InitStructure.EXTI_Trigger=EXTI_Trigger_Rising; //´¥·¢Ä£Ê½ ϽµÑØ´¥·¢Falling ÉÏÉýÑØ´¥·¢Rising
EXTI_InitStructure.EXTI_LineCmd=ENABLE;
EXTI_Init(&EXTI_InitStructure);
EXTI_InitStructure.EXTI_Line=EXTI_Line12; //ÖжÏÏß±àºÅ È¡Öµ·¶Î§ EXTI_Line0~EXTI_Line15
EXTI_InitStructure.EXTI_Mode=EXTI_Mode_Interrupt;
EXTI_InitStructure.EXTI_Trigger=EXTI_Trigger_Rising; //´¥·¢Ä£Ê½ ϽµÑØ´¥·¢Falling ÉÏÉýÑØ´¥·¢Rising
EXTI_InitStructure.EXTI_LineCmd=ENABLE;
EXTI_Init(&EXTI_InitStructure);
EXTI_InitStructure.EXTI_Line=EXTI_Line13; //ÖжÏÏß±àºÅ È¡Öµ·¶Î§ EXTI_Line0~EXTI_Line15
EXTI_InitStructure.EXTI_Mode=EXTI_Mode_Interrupt;
EXTI_InitStructure.EXTI_Trigger=EXTI_Trigger_Rising; //´¥·¢Ä£Ê½ ϽµÑØ´¥·¢Falling ÉÏÉýÑØ´¥·¢Rising
EXTI_InitStructure.EXTI_LineCmd=ENABLE;
EXTI_Init(&EXTI_InitStructure);
EXTI_InitStructure.EXTI_Line=EXTI_Line14; //ÖжÏÏß±àºÅ È¡Öµ·¶Î§ EXTI_Line0~EXTI_Line15
EXTI_InitStructure.EXTI_Mode=EXTI_Mode_Interrupt;
EXTI_InitStructure.EXTI_Trigger=EXTI_Trigger_Rising; //´¥·¢Ä£Ê½ ϽµÑØ´¥·¢Falling ÉÏÉýÑØ´¥·¢Rising
EXTI_InitStructure.EXTI_LineCmd=ENABLE;
EXTI_Init(&EXTI_InitStructure);
NVIC_InitStructure.NVIC_IRQChannel = EXTI15_10_IRQn; //ʹÄÜÍⲿͨµÀ 0-4 , 5-9¶ÔÓ¦ EXTI9_5_IRQHandler, 10-15¶ÔÓ¦ EXTI15_10_IRQHandler?
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0x02;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0x01;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);
}