本文主要内容是使用STM32CubeMX配置GPIO外部中断,从而实现Gokit2扩展板上的红外障碍物检测应用。
一、外部中断EXTI简介
中断在嵌入式应用中占有非常重要的地位,几乎每个控制器都有中断功能。中断对保证紧急事件得到第一时间处理是非常重要的。STM32的外部中断/事件控制器(EXTI)管理了23个中断/事件线。每个中断/事件线都对应有一个边沿检测器,可以实现输入信号的上升沿检测和下降沿的检测。EXTI可以实现对每个中断/事件线进行单独配置,可以单独配置为中断或者事件,以及触发事件的属性。Gokit2扩展板板载红外障碍物检测电路,根据原理图,数字信号输出连接到了PB7,有障碍物时,输出低电平,因此我们设计为下降沿触发,使得控制器产生中断,并在中断服务函数中实现用户任务。
二、STM32CubeMX配置
关键配置如下,配置为上拉模式,下降沿触发,并开启外部中断。
其它如时钟、串口等配置参见附件文档;
三、用户应用
底板LED1代码;
主函数用户代码;
外部中断应用代码,有障碍物时进入中断服务函数;
附件:
1.STM32CubeMX配置报表PDF:
GokitDemoInfrared.pdf
2.完整工程文件:
GokitDemoInfrared.zip
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |