K60学习 外部引脚中断

这一部分比较熟悉了少说两句
···
//打开PORTE的中断,注册中断函数为GPIO_ISR
GPIO_CallbackInstall(HW_GPIOE, GPIO_ISR);
//将PORTE26配置为下降沿触发
GPIO_ITDMAConfig(HW_GPIOE, 26, kGPIO_IT_FallingEdge, true);
//下面依据表示中断函数是一个带有参数的函数
typedef void (*GPIO_CallBackType)(uint32_t pinxArray);
···
其实在中断函数中,应该关闭中断的,但是在固件库中已将写过了,就不用再写如下:

static void PORT_IRQHandler(uint32_t instance)
{
    uint32_t ISFR;
    /* safe copy */
    ISFR = PORT_InstanceTable[instance]->ISFR;
    /* clear IT pending bit */
    PORT_InstanceTable[instance]->ISFR = 0xFFFFFFFF;
    if(GPIO_CallBackTable[instance])
    {
        GPIO_CallBackTable[instance](ISFR);//回调函数
    }
}

一般直说使用的话,能够理解函数调用就好了

你可能感兴趣的:(K60学习 外部引脚中断)