STM32 拥有大量的外部中断资源, 可以映射到不同的 GPIO 端口, 使用非常灵活。外部中断的使用流程主要包含时钟使能、GPIO 配置,中断优先级配置,中断服务程序等。这里关于STM32中断优先级的问题,由于STM32的中断优先级具有分不同组, 有抢占优先级与响应优先级, 这里暂时不进行深入的讲解,后面会单独再详细讲解。这里只是示例外部中断的使用流程
1、初始化时钟
在使用外部中断时,首先前面的设置一样, 先初始化系统时钟, 然后使能对应 GPIO 端口的时钟,接着使能复用IO 的时钟。
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);
2、中断配置