资料介绍
一、实验目的
理解中断的基本概念。
掌握STM32的中断源及中断优先级。
掌握STM32外部中断技术的基本使用方法。
掌握STM32中断处理程序的编程方法。
硬件设计原理图如下图1所示:LED的连接在上一节已经介绍过了,在STM32开发板上的按键KEY0是接在PE4上,KEY1是接在PE3上的,KEY2是连在PE2上,WK_UP接在PA0上。
实验预备知识
中断对于开发嵌入式系统来讲的地位绝对是毋庸置疑的,在C51单片机时代,一共只有5个中断,其中2个外部中断,2个定时/ 计数器中断和一个串口中断,但是在STM32中,中断数量大大增加,而且中断的设置也更加复杂。今天就将来探讨一下关于 STM32中的中断系统。
ARM Coetex-M3内核共支持256个中断,其中16个内部中断,240个外部中断和可编程的256级中断优先级的设置。STM32目前支持的中断共84个(16个内部+68个外部),还有16级可编程的中断优先级的设置,仅使用中断优先级设置8bit中的高4 位。
STM32可支持68个中断通道,已经固定分配给相应的外部设备,每个中断通道都具备自己的中断优先级控制字节PRI_n(8 位,但是STM32中只使用4位,高4位有效),每4个通道的8位中断优先级控制字构成一个32位的优先级寄存器。68个通道的优先级控制字至少构成17个32位的优先级寄存器。
STM32的每个IO口都可以作为中断输入,这点很好用。要把IO口作为外部中断输入,有以下几个步骤:
1)初始化IO口为输入。这一步设置你要作为外部中断输入的IO口的状态,可以设置为上拉/下拉输入,也可以设置为浮空输入,但浮空的时候外部一定要带上拉,或者下拉电阻。否则可能导致中断不停的触发。在干扰较大的地方,就算使用了上拉/下拉,也建议使用外部上拉/下拉电阻,这样可以一定程度防止外部干扰带来的影响。
2)开启IO口复用时钟,设置IO口与中断线的映射关系。 STM32的IO口与中断线的对应关系需要配置外部中断配置寄存器EXTICR,这样我们要先开启复用时钟,然后配置IO口与中断线的对应关系。才能把外部中断与中断线连接起来。
3)开启与该IO口相对的线上中断/事件,设置触发条件。这一步,我们要配置中断产生的条件,STM32可以配置成上升沿触发,下降沿触发,或者任意电平变化触发,但是不能配置成高电平触发和低电平触发。这里根据自己的实际情况来配置。同时要开启中断线上的中断,这里需要注意的是:如果使用外部中断,并设置该中断的EMR位的话,会引起软件仿真不能跳到中断,而硬件上是可以的。而不设置EMR,软件仿真就可以进入中断服务函数,并且硬件上也是可以的。建议不要配置EMR位。
4)配置中断分组(NVIC),并使能中断。这一步,我们就是配置中断的分组,以及使能,对STM32的中断来说,只有配置了NVIC的设置,并开启才能被执行,否则是不会执行到中断服务函数里面去的。关于NVIC的详细介绍,请参考前面章节。
5)编写中断服务函数。这是中断设置的最后一步,中断服务函数,是必不可少的,如果在代码里面开启了中断,但是没编写中断服务函数,就可能引起硬件错误,从而导致程序崩溃!所以在开启了某个中断后,一定要记得为该中断编写服务函数。在中断服务函数里面编写你要执行的中断后的操作。通过以上几个步骤的设置,我们就可以正常使用外部中断了。
- Keil 51单片机IO端口实验的详细资料说明 17次下载
- 使用STM32F103单片机实现定时器实验的详细资料说明 5次下载
- 使用STM32F103RB单片机实现外部中断实验的资料详细说明 0次下载
- 使用STM32F103RB单片机实现串口实验的详细资料说明 7次下载
- 使用STM32F103RB单片机实现蜂鸣器实验的详细资料说明 4次下载
- STM32单片机的外部中断实验详细资料说明 1次下载
- 80C51单片机的中断系统和系统结构的详细资料说明
- 使用51单片机的计时器和中断的详细资料说明
- 使用51单片机进行中断和软件仿真的详细资料说明
- 使用51单片机进行中断设置的详细资料说明
- 51单片机的中断系统详细资料说明
- 使用单片机进行驱动蜂鸣器实验的详细资料说明
- 使用STM32单片机实现IAP的详细资料说明
- 基于STM32单片机进行PWM输出实验的详细资料说明 18次下载
- 51单片机的中断系统详细资料总结 3次下载
- 什么是中断?单片机中断处理过程详解 4342次阅读
- 单片机外部中断的好处 1919次阅读
- STM32的IO外部中断EXTI的使用 1658次阅读
- PIC系列单片机的详细资料说明 5350次阅读
- AT89S51单片机实验板的详细资料简介 4614次阅读
- 如何进行PLC控制程序的设计详细资料PPT说明 5753次阅读
- 如何利用51单片机对protues进行仿真扩展 2958次阅读
- 单片机中的堆栈详细资料说明 4646次阅读
- 51单片机的外部中断实验设计 1.1w次阅读
- 如何对51单片机进行外部扩展 1.5w次阅读
- 51单片机的中断体系结构_中断的响应过程 1.9w次阅读
- 关于单片机的中断系统的详细介绍 3.1w次阅读
- 单片机中断系统介绍_51单片机中断系统结构 1.2w次阅读
- 详细的STM32单片机学习笔记 1.4w次阅读
- 51单片机的扩展中断方法 1184次阅读
下载排行
本周
- 1TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 2开关电源基础知识
- 5.73 MB | 6次下载 | 免费
- 3100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
- 4嵌入式linux-聊天程序设计
- 0.60 MB | 3次下载 | 免费
- 5基于FPGA的光纤通信系统的设计与实现
- 0.61 MB | 2次下载 | 免费
- 651单片机窗帘控制器仿真程序
- 1.93 MB | 2次下载 | 免费
- 751单片机大棚环境控制器仿真程序
- 1.10 MB | 2次下载 | 免费
- 8基于51单片机的RGB调色灯程序仿真
- 0.86 MB | 2次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33564次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6653次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537796次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191185次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多