前言
利用 STM32CubeMX 和 HAL 库采用中断模式实现LED灯亮灭。用 STM32F103C8开发板的GPIOA 端A5管脚接一个 LED,GPIOB 端B15管脚接一个开关(用杜邦线模拟代替)。采用中断模式编程,当B端接出的线接高电平时,LED 亮灯;接低电平时,LED 灭灯。
一、中断介绍
1、中断方式
中断方式
中断方式是处理器和外部设备的数据传输方式。一方通过申请中断的方式与另一方进行数据传输,收发双方可以并行工作。
中断系统
中断装置和中断处理程序统称为中断系统。
中断系统是计算机的重要组成部分。实时控制、故障自动处理、计算机与外围设备间的数据传送往往采用中断系统。中断系统的应用大大提高了计算机效率。
数据传输方式(处理器和外部设备之间)
传输方式 | 说明 |
---|---|
无条件传输 | 处理器不需要了解外部设备状态,而直接进行数据传输 |
查询方式 | 传输前一方先查询对方的状态,若已准备好就进行传输,没有就继续查询 |
中断方式 | 一方通过申请中断的方式与对方进行数据传输,收发方可并行工作 |
直接存储器访问 | 处理器内部建立片内外设和内存之间的数据传输通道,传输过程无需处理器参与 |
中断全过程
- 中断发生:当CPU在处理某一事件m,发生了另一事件n,请求CPU迅速去处理
- 中断处理:CPU暂停当前的工作,转去处理事件n
- 中断返回:当CPU将时间n处理完以后再回到事件m中被暂停的地方继续处理
中断程序执行过程示意图
中断的作用
作用 | 具体说明 |
---|---|
速度匹配 | 可以解决快速的CPU与慢速的外部设备之间传送数据的矛盾 |
分时操作 | CPU可以分时为多个外部设备服务,提高计算机的利用率 |
实时响应 |