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

news/2025/10/7 11:48:25/文章来源:https://www.cnblogs.com/wzzkaifa/p/19128320

一、外部中断机制概述 

指当主程序执行期间出现特定触发条件(即中断源)时,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.mzph.cn/news/930363.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

神经网络中的梯度消失与梯度爆炸 - 实践

神经网络中的梯度消失与梯度爆炸 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Mo…

[数学 - 正态分布]

您提到的“中间隆起的图”很可能就是正态分布(Normal Distribution)的图形,也叫钟形曲线(Bell Curve)。 在统计学和金融学中,这个图形和回归分析、标准差一样重要,因为它是我们理解风险、波动性和概率的基础。隆…

Withdraw x Failure《一元微积分》讲义习题

习题 \(1.1\): 第 \(1\) 题: \(1.1.7\):\(\N\) 上的加法是对乘法满足分配律:即对任意 \(m,n,k\in\N\),\((m+n)\cdot k=m\cdot k+n\cdot k\)。 证明:对 \(k\) 做数学归纳。 令 \(A=\{k\in\N|\forall m,n\in \N,(m…

状态压缩 DP

“状态压缩动态规划”中的状态,通常与集合相关联。集合本身具有确定性、互异性和无序性 3 个性质,这也就决定了集合只关心每个元素的存在状态,而这通常可以使用 0 或者 1 表示存在或者不存在。例如,有 8 个物品,对…

QGIS开发笔记(四):QgsRasterLayer加载Cesium二维地图的瓦片地图数据到QGIS

前言地图引擎加载瓦片地图是基本操作,本篇对qgis添加图片瓦片地图。 Demo 专业名词波段波段(Band) 是指栅格数据中具有特定波长范围的信息层,类似于数字图像中的 “通道”。它是栅格数据(尤其是遥感影像)的核心组…

基于 Chrome 浏览器扩展的Chroma简易图形化界面 - 实践

基于 Chrome 浏览器扩展的Chroma简易图形化界面 - 实践2025-10-07 11:28 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; d…

建筑设计作品展示网站wordpress免费相册

在本篇博客中,作者将会讲解类与对象的最后一篇。 一.再谈构造函数 在类与对象(上篇)中,我们讲到了构造函数,其实构造函数就是给每个成员变量进行赋值!!! 仅仅只是赋值而已&#xf…

苍南县网站集约化建设西安网站优化排名案例

原文 http://www.eoeandroid.com/thread-274556-1-1.html 【初识Github】 首先让我们大家一起喊一句“Hello Github”。YEAH!就是这样。Git是一个分布式的版本控制系统,最初由Linus Torvalds编写,用作Linux内核代码的管理。在推出后,Git在其…

详细介绍:go语言学习 第4章:流程控制

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

学号20232328 2025-2026-1 《网络与系统攻防技术》实验一实验报告

1.实验内容 1.1NOP, JNE, JE, JMP, CMP汇编指令的机器码: 1.1.1NOP(No Operation) 功能:NOP指令是一条空操作指令,它不做任何事情。执行NOP指令时,处理器的状态(如寄存器值、内存内容等)不会发生变化,只是简单…

《一元微积分》讲义习题

习题 \(1.1\): 第 \(1\) 题: \(1.1.7\):\(\N\) 上的加法是对乘法满足分配律:即对任意 \(m,n,k\in\N\),\((m+n)\cdot k=m\cdot k+n\cdot k\)。 证明:对 \(k\) 做数学归纳。 令 \(A=\{k\in\N|\forall m,n\in \N,(m…

【光照】Unity[光照探针]的作用与工作原理

光照探针是Unity中解决动态物体间接光照的核心技术,通过预计算存储空间光照信息,使动态物体获得与静态环境一致的照明效果。UnityURP中的光照探针技术经历了从手动放置到自适应探针体积(APV)的演进,APV能自动根据场…

[数学 - 线性回归]

简单说就是方程曲线 您提到的回归方程(Regression Equation)是统计学中一个极其强大和基础的工具,特别是在金融和量化分析中,它几乎无处不在。 它的本质是为了解决一个核心问题:如何量化不同事物之间的关系?1. 回…

251007

目录JT-JY7T3S1-1JT-JY7T3S1-2FT-(TED&VOAs) JT-JY7T3S1-1Oh, good morning, Is this a room number 26? Yes, thats right. So is this the students job center? it certainly is, how can i help you? Well,…

Java 并发锁

1 为什么要加锁 所先JVM将内存划分成2个区域主内存:所有线程共享的内存区域,存储所有的共享变量 工作内存:每个线程独有的内存区域,存储该线程使用到的共享变量的副本线程对变量的操作(读取、赋值)必须在工作内存完…

做插画的网站网上购物哪个商城好

[导读]Kaggle 的房价预测竞赛从 2016 年 8 月开始,到 2017 年 2 月结束。这段时间内,超过 2000 多人参与比赛,选手采用高级回归技术,基于我们给出的 79 个特征,对房屋的售价进行了准确的预测。今…

实用指南:点评中是如何实现短信登录的

实用指南:点评中是如何实现短信登录的pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Mon…

[数学 - 方差 标准差 ]

假设和平均距离 比如两个人的射击成绩,我们要挑选一个“更加稳定”的选手:平均值相同时:假设样本数据是 \(x_1, x_2, \dots, x_n\) \(\bar{x}\) 表示这组数据的平均数。 所以,样本数据到 \(\bar{x}\) 的“平均距离…

黄南州wap网站建设公司代理ip大全

数据库请求接口封装 uniapp中提供了plus.sqlite接口,在这里我们对常用的数据库请求操作进行了二次封装 这里的dbName、dbPath、recordsTable 可以根据你的需求自己命名 module.exports {/** * type {String} 数据库名称*/dbName: salary,/*** 数据库地址* type {…

鄢陵县北京网站建设长沙网站制作工作室

需求&#xff1a;页面跳转到目标页面之后&#xff0c;对应的顶部路由高亮 上面的更多 跳转到 学情分析下面的学生分析 <template><div class"topBar" ref"topBar" v-loading.fullscreen.lock"fullscreenLoading"><div class&quo…