【开源】STM32F407- 外部中断实验教程——疯壳·ARM双处理器开发板系列

目录

第一节 外部中断介绍

第二节 外部中断常用寄存器介绍

第三节 实验

第四节 实验现象

【开源】STM32F407- 外部中断实验教程——疯壳·ARM双处理器开发板系列_第1张图片

第一节 外部中断介绍

STM32F407的每个GPIO引脚都可以作为外部中断的中断输入口,它的中断控制器支持22个外部中断/事件请求。每个中断设有状态位,每个中断/事件都有独立的触发和屏蔽设置。STM32F407的22个外部中断为:

Line0~15:对应外部IO口的输入中断;

Line16:连接到PVD输出;

Line17:连接到RTC闹铃事件;

Line18:连接到USB_OTG_FS唤醒事件;

Line19:连接到以太网唤醒事件;

Line20:连接到USB_OTG_HS唤醒事件;

Line21:连接到RTC入侵和时间戳事件;

Line22:连接到RTC唤醒事件。

这里我们使用到Line0~15的GPIO输入中断,这里的0~15分别对应每组GPIO引脚的0~15。

第二节 外部中断常用寄存器介绍

GPIO口与中断线的映射关系需要配置寄存器SYSCFG_EXTICR1~4,如下图所示:

【开源】STM32F407- 外部中断实验教程——疯壳·ARM双处理器开发板系列_第2张图片

 

 

SYSCFG_EXTICR2~4寄存器也类似。

    触发条件寄存器,设置上升沿/下降沿触发,如下图所示:

 

 

【开源】STM32F407- 外部中断实验教程——疯壳·ARM双处理器开发板系列_第3张图片

【开源】STM32F407- 外部中断实验教程——疯壳·ARM双处理器开发板系列_第4张图片

第三节 实验

外部中断实验通过按键来触发中断,控制LED的亮灭,LED以及按键与MCU硬件连接的电路图如下图所示:

【开源】STM32F407- 外部中断实验教程——疯壳·ARM双处理器开发板系列_第5张图片

【开源】STM32F407- 外部中断实验教程——疯壳·ARM双处理器开发板系列_第6张图片

【开源】STM32F407- 外部中断实验教程——疯壳·ARM双处理器开发板系列_第7张图片

 

 

 

两个LED分别与PC1和PC4引脚相连,两个按键分别与PC2和PC3连接。对PC1与PC4的配置可以参考GPIO实验教程,这里只介绍对PC2与PC3引脚的中断配置,配置代码(通过调用官方库)如下图所示:

【开源】STM32F407- 外部中断实验教程——疯壳·ARM双处理器开发板系列_第8张图片

详细的代码可以参考我们提供的例程代码。

开发接口连接可以参考《开发接口连接教程》,路径为:..\WT_Mobile\0.从这里开始\2.快速上手。

开发板供电可以参考《如何上电》教程,路径为:..\WT_Mobile\0.从这里开始\0.开机测试。

下面打开GPIO实验工程文件按键中断.uvproj,路径为:..\WT_Mobile\1.初级教程\STM32F407\1_中断\按键中断\user,如下图所示:

 

【开源】STM32F407- 外部中断实验教程——疯壳·ARM双处理器开发板系列_第9张图片

打开代码后先点击编译按钮,编译完成没有错误之后直接点击Load按钮下载代码,如果需要调试,单步运行代码就点击DEBUG按钮,如下图所示:

 

第四节 实验现象

    完成第三节的操作之后,右侧上方的按键控制红色LED的亮灭,中间的按键控制绿色LED的亮灭。如果按Load按钮下载没有现象就按一下板子上的复位按键。如果点击的DEBUG按钮就需要点击全速运行。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(单片机)