什么是中断?---STM32篇

目录

一,中断的概念

二,中断的意义

三,中断的优先级

[四,中断的嵌套 如果一个高优先级的中断发生,它会立即打断当前正在处理的中断(如果其优先级较低),并首先处理这个高优先级的中断,这就是所谓的中断嵌套。 ​编辑](#四,中断的嵌套 如果一个高优先级的中断发生,它会立即打断当前正在处理的中断(如果其优先级较低),并首先处理这个高优先级的中断,这就是所谓的中断嵌套。 编辑)


一,中断的概念

1.1什么是中断?

中断就是单片机正在执行程序时, 由于内部或外部事件的触发 ,打断当前程序,转而去处理这一事件,当处理完成后再回到原来被打断的地方继续执行原程序的过程。

在ARM体系结构中 ,中断通常由外设或外部输入产生,有时也可以由软件触发。中断是单片机系统处理紧急或突发事件的重要方式,如定时器溢出、按键输入、串口数据到达等。

二,中断的意义

提高CPU的效率, 而不会一直占用CPU,实现对突发事件的实时处理,以及实现程序的并行化和嵌入式系统进程之间的切换。 相较于轮询方式(即按照一定的频率和周期不断地检测某些事件的发生),中断在处理一些偶然发生的事情时效率更高。

三,中断的优先级

中断具有优先级高低之分,两个中断同时触发,则优先响应高优先级中断,再响应低优先级中断。

四,中断的嵌套

如果一个高优先级的中断发生,它会立即打断当前正在处理的中断(如果其优先级较低),并首先处理这个高优先级的中断,这就是所谓的中断嵌套。

五,中断执行流程

当中断发生时,STM32的执行流程如下:

**首先,**由外设发出中断请求;

**然后,**处理器暂停当前执行的任务,保护现场(如将当前位置的PC地址压栈);

接着, 程序跳转到对应的**中断服务程序(ISR)**并执行;中断服务程序执行完毕后,恢复现场(如将栈顶的值送回PC);

**最后,**处理器返回到被中断的位置,继续执行下一个指令。

六,中断的数量

STM32F103C8T6 支持的中断共有 70 个,其中包括 10 个内核中断60 个外部中断 。外部中断包含EXTI、TIM、USART、ADC、I2C、SPI 等等。

七.中断框图

相关推荐
gfdr512 小时前
把吃灰的电视盒子,改成一台不花月租的监控
python·嵌入式硬件·电视盒子
ye1501277745512 小时前
220V转5V单片机供电电源芯片WT5102
单片机·嵌入式硬件·其他·硬件工程
HUI-47412 小时前
EG12523|集成 600V 半桥驱动,带内置正激恒流功能的正反激 PWM 控制器
单片机·嵌入式硬件
2601_9667990413 小时前
酷嗨米J300:单相机三平台同步推流,硬件级方案告别卡顿与限流
嵌入式硬件
謓泽13 小时前
『51单片机』AD/DA
单片机·嵌入式硬件·51单片机·模拟·ad·da·謓泽
风雨中的蜜蜂13 小时前
PHY6217/PHY6257是支持蓝牙低功耗 (BLE) 与私有 2.4G 应用的 SoC 芯片
单片机·嵌入式硬件·物联网·射频工程
芯片设计-曾工14 小时前
YL1621(SSOP28)国产段码LCD驱动芯片|PIN‑PIN兼容HT1621,储能电量显示板CH2505B国产化替换方案
stm32·单片机·嵌入式硬件·mcu·硬件工程
hongmai66688815 小时前
竖插专用:ESP8684-WROOM-07-H2X模组上手记录
笔记·单片机·嵌入式硬件·物联网·risc-v
玩转单片机与嵌入式1 天前
深入浅出TinyML 16:FFT、频带能量和MFCC分别适合什么任务?
stm32·深度学习·tinyml
深圳市宝华视联1 天前
Python 读取 IP 视频流简单 Demo
python·嵌入式硬件·opencv·网络协议·tcp/ip·实时音视频·嵌入式实时数据库