第一节原理解读
打算写一下中断,又忍不住想说一下中断的概念,去书上翻一翻,或者自己在搜索引擎上搜一下,都可以找到一大堆,包括本文写的这个外部中断也不例外。如果要写光是中断就可以单独写一篇了,所以本文直入主题,对于STM32的外部中断进行详细的剖析。下图来自《STM32参考手册》,从整个架构图可以知道,外部中断的功能可以配置六个寄存器。

2,选择按键的引脚,配置成外部中断。如下图:
3,配置PC15引脚(也就是开发板上LD5的引脚)为输出模式。
4,选中GPIO,选择PC14,并且将GPIO的模式配置为外部中断下降沿有效。如下图:
5,使能中断。如下图。
6,设置时钟树,项目路径,项目名称等等信息将不再阐述。配置完后生成项目即可。
第三节编写代码
1,大家先看看stm32l0xx_it.c的这个函数,这个是一个中断函数,中断服务函数里面就调用了GPIO外部中断处理函数HAL_GPIO_EXTI_IRQHandler(),参数为GPIO_PIN_14,即EXTI14中断。
2,详细看看这个函数,GPIO外部中断处理函数主要就是清除中断标识位,然后调用中断回调函数HAL_GPIO_EXTI_Callback()。我们只需重构中断回调函数,在函数里面添加我们的应用代码即可。
3,于是,在main.c中添加回调函数,如下:
4,配置下载器等就不再重复阐述了。
第四节 实验现象
实验注意事项:
1,程序语句需要位于程序的BEGIN与END之间。
3,CN4所有拨码开关必须选择ON DP档,否则无法下载程序。
实验现象:
LD1,LD4常亮。LD5上电长量,按下USER按键,LD5翻转。
宗旨:
免费的服务,永远的开源
说明:
1.本教程免费,开源,禁止用于任何商业用途,违者必究。
2.本教程版权所属为东莞市东城墨竹公子电子工作室,盗版必究。
-
STM32
+关注
关注
2278文章
10962浏览量
359543
发布评论请先 登录
相关推荐
三星显示推迟第八代OLED面板生产线安装
ADS1115第八位读取值一直都是0xFF,是什么原因?
串口中断是内部中断还是外部中断,串口中断是怎么触发的
成都华微荣获第八届中国卓越IR“最佳年度新锐公司”
《DNESP32S3使用指南-IDF版_V1.6》第八章 MENUCONFIG菜单配置
元脑服务器第八代新品重磅发布
《DNK210使用指南 -CanMV版 V1.0》第八章 CanMV IDE初体验
【「ARM MCU嵌入式开发 | 基于国产GD32F10x芯片」阅读体验】+书籍整体概况
欧姆龙出席第八届数智化升级应用巡回研讨会
TE Connectivity将亮相CCME2024第八届内镜大会
萨科微Slkor参与大佳源第八届千人峰会 宋仕强总经理出席并发表主旨演讲

STM8L外部中断跟普通MCU的外部中断不一致,为什么?
CET中电技术邀您参加第八届全国石油和化工电气技术大会

评论