新手上路
- 积分
- 38
- 金钱
- 38
- 注册时间
- 2016-3-22
- 在线时间
- 5 小时
|
发表于 2016-5-1 13:30:39
|
显示全部楼层
哥,你帮我看看吧行不
#include "exti.h"
#include "key.h"
void EXTI_GPIO_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOB, ENABLE);
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_40MHz;
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;
GPIO_Init(GPIOB, &GPIO_InitStructure);
}
void EXTI_PB0_Config(void)
{
EXTI_InitTypeDef EXTI_InitStructure;
NVIC_InitTypeDef NVIC_InitStructure;
EXTI_DeInit();
SYSCFG_EXTILineConfig(EXTI_PortSourceGPIOB, EXTI_PinSource0);
EXTI_InitStructure.EXTI_Line = EXTI_Line0;
EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;
EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling;
EXTI_InitStructure.EXTI_LineCmd = ENABLE;
EXTI_Init(&EXTI_InitStructure);
NVIC_InitStructure.NVIC_IRQChannel = EXTI0_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 2;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);
}
void EXTI0_IRQHandler(void)
{
if(EXTI_GetITStatus(EXTI_Line0) != RESET) //è·±£êÇ·ñ2úéúáËEXTI LineÖD¶Ï
{
if( Key_Scan(GPIOB,GPIO_Pin_0) == KEY_ON )
{
GPIO_WriteBit(GPIOB, GPIO_Pin_12, (BitAction)((1-GPIO_ReadOutputDataBit(GPIOB, GPIO_Pin_12)))); /*¿ØÖÆ·äÃùÆ÷·′×a*/
}
// // LED1 è¡·′
// GPIO_WriteBit(GPIOB, GPIO_Pin_12,
// (BitAction)((1-GPIO_ReadOutputDataBit(GPIOC, GPIO_Pin_12))));
EXTI_ClearITPendingBit(EXTI_Line0); //Çå3yÖD¶Ï±ê־λ
}
}
|
|