STM32 中断流程介绍

    STM32可以产生中断的事件多种多样,比如:定时器时间结束、串口接收到数据、某个GPIO检测到电平变化等等等等。

1、STM32 gpio 中断处理流程介绍

    1、从引脚进入的高低电平首先由输入驱动器处理,如下图
在这里插入图片描述
    2、经过输入驱动器处理后的信号会进入边沿检测电路

在这里插入图片描述
    3、边沿检测电路会按照我们配置的上升沿还是下降沿,满足之后会输入1给请求挂起寄存器。
    4、请求挂起寄存器会经过一个与门,如果我们开启了此中断,信号1就会传送给NVIC中断控制器。
    5、最后会进入中断向量表,查找对应的中断函数,执行。执行完后记得清除请求中断挂起寄存器(这一步CubeMX已经帮我们做好了),防止NVIC误导再次执行相关函数。
在这里插入图片描述

2、优先级

    1、stm32为每个中断向量准备了4个二进制位来存储中断优先级信息。可以自由分配几位用来设置抢占优先级,几位用来设置响应优先级。CubeIDE在如下位置配置。
在这里插入图片描述
    2、优先级数字越小,代表越优先。
    3、当两中断同时发生时,先比较抢占优先级相同的话再比较响应优先级。如果还相同,就按照中断向量表中的顺序执行。

3、测试中断

    将按键引脚设置为中断模式,当按键按下中断触发,执行中断函数,完成小灯亮灭。
在这里插入图片描述

在这里插入图片描述

3.1、按键中断配置

在这里插入图片描述
    点击左侧NVIC,勾选上EXTI 15:10中断向量。
在这里插入图片描述

3.2、coding编写中断服务函数

    中断函数进入,延时10ms,再次确认按键是否按下,如果按下则翻转小灯电平。
目的是为了消抖。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/714744.shtml

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

相关文章

大数据数据平台的数仓体系分类有哪些?

大数据平台的数仓体系最初由数据库发展而来,主要分为三类架构,分别是Shared-Nothing、Shared-Data、Shared-Everything。 Shared-Nothing(也称 MPP)架构在 很长一段时间成为主流。 随云原生能力增强,Snowflake 为代表…

c++基础知识补充4

单独使用词汇 using std::cout; 隐式类型转换型初始化:如A a1,,此时可以形象地理解为int i1;double ji;,此时1可以认为创建了一个值为1的临时对象,然后对目标对象进行赋值,当对象为多参数时,使用(1&#xf…

c1-周考2

c1-第二周 9月-技能1.一个岛上有两种神奇动物,其中神奇鸟类2个头3只脚,神奇兽类3个头8只脚。游客在浓雾中看到一群动物,共看到35个头和110只脚,求可能的鸟类和兽类的只数2.构建一个长度为5的数组,并且实现下列要求3.构…

鬼屋游戏c++

c #include <iostream> #include <string> #include <vector> #include <cstdlib> // 用于随机数生成 #include <ctime> // 用于随机数种子using namespace std;// 定义房间结构体 struct Room {string description;bool hasKey;bool hasClue…

babylonjs入门-自由相机 FreeCamera

基于babylonjs封装的一些功能和插件 &#xff0c;希望有更多的小伙伴一起玩babylonjs&#xff1b; 欢迎加群&#xff08;点击群号传送&#xff09;&#xff1a;464146715 官方文档 中文文档 案例传送门 懒得打字 粘贴复制 一气呵成 ​

计算机网络——22TCP拥塞

TCP拥塞 TCP拥塞控制机制 端到端的拥塞控制机制 路由器不向主机有关拥塞的反馈信息 路由器的负担较轻符合网络核心简单的TCP/IP架构原则 端系统根据自身得到的信息&#xff0c;判断是否发生拥塞&#xff0c;从而采取动作 拥塞控制的几个问题 如何检测拥塞 轻微拥塞拥塞 控…

javascript在现实中的应用

JavaScript是一种非常强大的编程语言&#xff0c;在现实世界中有广泛的应用。它最初被设计用于网页交互&#xff0c;但随着时间的发展&#xff0c;其用途已经大大扩展。以下是JavaScript在现实中的一些主要应用&#xff1a; 1. **网页开发**: - **前端开发**: JavaScript是…

Http基础之http协议、无状态协议、状态码、http报文、跨域-cors

Http基础 HTTP基础HTTP协议请求方法持久连接管线化 无状态协议使用Cookie状态管理 状态码1XX2XX OK200 OK204 NO Content206 Content-Range 3XX 重定向301302304307 4XX400401403404 5XX500503 HTTP报文请求报文响应报文通用首部字段Cache-ControlConnectionDate请求首部字段Ac…

智能时代的领航者:人工智能的前沿探索

智能时代的领航者&#xff1a;人工智能的前沿探索 人工智能的定义与发展历程 人工智能&#xff08;Artificial Intelligence&#xff0c;AI&#xff09;是指通过模拟、延伸人类智能的理论、方法、技术及应用系统&#xff0c;以实现智能化的机器或软件。人工智能的发展经历了符…

Linux系统中已经可用的重要的网络和故障排除命令

在Linux系统中&#xff0c;网络设置、问题查找和故障修复是系统管理的重要技能&#xff0c;对于开发人员来说&#xff0c;了解Linux故障排除命令对于日常任务十分有帮助。 本文将介绍在Linux系统中已经可用的重要的网络和故障排除命令。 以下是已经存在于Linux机器上的故障排…

2024可以实现月入过万的抖店,适合新手做吗?

我是电商珠珠 过完年了&#xff0c;一些新手都在找项目&#xff0c;觉得自己能做的项目很少。每个人身边或多或少都有做电商的人&#xff0c;都说做电商可以年入百万什么的&#xff0c;于是找到了抖店&#xff0c;但是对于抖店并不了解&#xff0c;不知道抖店适不适合自己。 …

JVM 第四部分—垃圾回收相关概念 2

System.gc() 在默认情况下&#xff0c;通过System.gc()或者Runtime.getRuntime().gc()的调用&#xff0c;会显式触发Full GC&#xff0c;同时对老年代和新生代进行回收&#xff0c;尝试释放被丢弃对象占用的内存 然而System.gc()调用附带一个免责声明&#xff0c;无法保证对垃…

博途PLC 面向对象系列之“双通气缸功能块“(SCL代码)

1、面向对象系列之找对象 https://rxxw-control.blog.csdn.net/article/details/136150027https://rxxw-control.blog.csdn.net/article/details/1361500272、博途PLC 面向对象系列之"单通气缸功能块" https://rxxw-control.blog.csdn.net/article/details/1363399…

如何使用pip安装和生成requirements.txt

使用 pip freeze 命令可以列出当前环境中已安装的所有 Python 包及其版本信息&#xff0c;并将其输出保存到 requirements.txt 文件中。可以使用重定向 (>) 将命令的输出写入文件中 pip freeze > requirements.txt使用 pip install 命令可以从 requirements.txt 文件中安…

Spark(1)-wordCount入门

1. 创建Maven项目 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/P…

JavaScript继承 寄生组合式继承 extends

JavaScript继承 1、JS 的继承到底有多少种实现方式呢? 2、ES6 的 extends 关键字是用哪种继承方式实现的呢? 继承种类 原型链继承 function Parent1() {this.name parentlthis.play [1, 2, 3] }function Child1() {this.type child2 }Child1.prototype new Parent1(…

三天学会阿里分布式事务框架Seata-seata事务日志mysql持久化配置

锋哥原创的分布式事务框架Seata视频教程&#xff1a; 实战阿里分布式事务框架Seata视频教程&#xff08;无废话&#xff0c;通俗易懂版&#xff09;_哔哩哔哩_bilibili实战阿里分布式事务框架Seata视频教程&#xff08;无废话&#xff0c;通俗易懂版&#xff09;共计10条视频&…

navicat16

Navicat16: 链接: https://pan.baidu.com/s/1vIfX0qEEL4mhBrsEzD_-lw?pwdy3fi 提取码: y3fi 破解教程视频&#xff1a;2023年Navicat16破解教程(小白教程)_哔哩哔哩_bilibili

1、云原生安全之K8S的部署与常用命令

文章目录 1、常用命令1.1、基本信息查看1.2、日志查看与问题排查1.3、进入pod与pod内部文件导出1.4、环境搭建相关1.5、镜像相关1.6、电脑重启后,重启k8s服务1.7、关于k8s的持久卷二、k8s的部署2.1、配置环境2.1.1、安装所需工具2.1.2、修改主机名2.1.3、编辑hosts2.1.4、其他…

第13集《灵峰宗论导读》

《灵峰宗论》导读。诸位法师&#xff0c;诸位同学&#xff0c;阿弥陀佛&#xff01;&#xff08;阿弥陀佛&#xff01;&#xff09; 请大家打开讲义第38面。 丙三、结示 这一科是《正见篇》的结示。《正见篇》主要的是要引导我们能够正确地观察生命的真相。生命的真相就是说…