当前位置: 首页 > news >正文

STM32外部中断(EXTI)以及旋转编码器的简介 - 指南

一、外部中断机制概述 

指当主程序执行期间出现特定触发条件(即中断源)时,CPU将暂停当前任务,转而执行相应的中断服务程序(ISR),待处理完成后恢复原程序的运行流程。该机制通过事件驱动方式显著提升系统效率,其优势在于可将中断事件与定时器任务从主循环中剥离,从而减少内核资源占用(例如避免启用阻塞式延时函数)。就是中断

二、中断优先级管理 

在多个中断源并发请求的场景下,CPU需根据预设的优先级策略进行仲裁,优先处理紧急程度更高的中断请求。优先级机制包含两种类型: 

1. 抢占优先级:允许高优先级中断打断正在执行的低优先级中断服务程序,形成中断嵌套 

2. 响应优先级:决定相同抢占优先级中断的排队顺序 

三、STM32中断体系架构 

STM32微控制器提供多种可屏蔽中断通道,包括EXTI(外部中断)、定时器(TIM)、模数转换器(ADC)等,各通道均支持16级可编程优先级。其中嵌套向量中断控制器(NVIC)作为核心管理单元,负责优先级分配及与CPU的通信。 

典型中断源示例: 

- WWDG:窗口看门狗中断 

- PVD:电源电压检测中断 

- RTC:实时时钟中断 

- FLASH:存储器操作中断 

- EXTI0~15:外部引脚中断 

四、中断向量与优先级分组 

中断响应借助硬件自动跳转至中断向量表实现。NVIC采用4位优先级寄存器(取值范围0-15),可通过位域划分配置抢占优先级与响应优先级的比例。 

五、外部中断(EXTI)工作原理 

EXTI模块通过监测GPIO端口的电平变化(支持上升沿、下降沿及双边沿触发模式)向NVIC发起中断请求。其特点包括: 

1. 所有GPIO端口均可触发中断,但同编号引脚(如PA0与PB0)不可同时启用 

2. 除GPIO外,还支持PVD输出、RTC闹钟等唤醒事件 

3. 提供20个中断/事件通道,其中: 

   - 中断模式:触发CPU中断服务 

   - 事件模式:直接联动其他外设而不中断CPU 

应用场景建议: 

- 适合处理高频信号(如旋转编码器) 

- 对于长时信号(如按键输入),建议采用定时器中断 

六、复用功能与引脚配置 

AFIO(Alternate Function IO)模块主要实现: 

1. 中断引脚选择:通过数据选择器将特定GPIO映射至EXTI通道(如EXTI0通道可配置为PA0/PB0/PC0等) 

2. 特殊效果直连:PVD、USB等信号直接接入EXTI系统 

3. 引脚特性重映射:承受外设特性的引脚重新配置 

注:EXTI9_5与EXTI15_10采用复合通道设计,需通过状态标志位识别具体中断源。

旋转编码器简介

  • 旋转编码器:用来测量位置、速度或旋转方向的装置,当其旋转轴旋转时,其输出端可以输出与旋转速度和方向对应的方波信号,读取方波信号的频率和相位信息即可得知旋转轴的速度和方向
  • 类型:机械触点式/霍尔传感器式/光栅式

硬件电路

http://www.jsqmd.com/news/9552/

相关文章:

  • 神经网络中的梯度消失与梯度爆炸 - 实践
  • [数学 - 正态分布]
  • Withdraw x Failure《一元微积分》讲义习题
  • 状态压缩 DP
  • QGIS开发笔记(四):QgsRasterLayer加载Cesium二维地图的瓦片地图数据到QGIS
  • 基于 Chrome 浏览器扩展的Chroma简易图形化界面 - 实践
  • 详细介绍:go语言学习 第4章:流程控制
  • 学号20232328 2025-2026-1 《网络与系统攻防技术》实验一实验报告
  • 《一元微积分》讲义习题
  • 【光照】Unity[光照探针]的作用与工作原理
  • [数学 - 线性回归]
  • 251007
  • Java 并发锁
  • 实用指南:点评中是如何实现短信登录的
  • 二分法算法技巧-思维提升 - 教程
  • 开源量子模拟引擎:Quantum ESPRESSO本地部署教程,第一性原理计算轻松入门! - 实践
  • 基于Python+Vue开发的大学竞赛报名管理系统源码+运行步骤
  • 详细介绍:QT常用控件(1)
  • Generate First, Then Sample: Enhancing Fake News Detection with LLM-Augmented Reinforced Sampling
  • 数据大屏
  • K8S上采用helm部署 Prometheus + Grafana
  • AI元人文的硅基基石体系:EPU+VPU+WBUC+WAUC深度解析——声明Ai解析
  • 详细介绍:VSCode+Cline 安装配置及使用说明
  • 题解:P4779 【模板】单源最短路径(标准版)
  • 网关配置
  • 高频感应钎焊在制冷行业的应用与优势:高效、绿色、智能的焊接革命!
  • 题解:P12672 「LAOI-8」近期我们注意到有网站混淆视听
  • 详细介绍:基于LangChain构建高效RAG问答系统:向量检索与LLM集成实战
  • 完整教程:docker创建postgreSql带多个init的sql
  • vscode的文心快码插件不错