STM32F10X--中断

news2024/11/15 17:24:38

中断

中断优先级数值越小,中断优先级越高

中断编程的顺序

1、使能的是外设,配置外设寄存器

2、配置中断优先级分组,在msic.h里面有中断优先级组分组函数

这个函数里面配置了SCB->AIRCR寄存器

3、配置NVIC寄存器,初始化NVIC_InitTypeDef;

这个结构体也在msic.h里面有定义了。

第一个成员的值根据自己的芯片容量以及外设从下面取

第二个成员抢占级优先级,抢占级优先级的值要根据分组来定义

第三个成员是子优先级,

第四个成员是势能或者失能

接下来调用NVIC_Init函数,就会将结构体里面的成员全部写到相应的寄存器中

中断初始化完成后,编写中断服务函数

那么问题来了

接触过启动文件的小伙伴可能就要说了,启动文件有个作用就是初始化中断向量表,中断向量表里面,每一个中断类型都对应一个函数名称,在启动文件里面已经把这些函数的名称已经全部初始化好了。接触过c语言的伙伴都知道哈,一个函数的名称就是一个函数的地址,那么我们启动文件在启动的时候,中断向量表已经规定好了全部这些中断函数的地址。并且对这些每个函数这些名称都有一个关键字【WEAK】,叫弱定义。意思就是说这些中断服务函数你可以在其他文件处定义,如果你在其他文件处定义了,就会被优先执行。如果软件里面写错了,它就会执行启动文件里面的空的服务函数。如下图所示。所以中断服务函数的名称一定要跟中断向量表里面的名称一致。

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

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

相关文章

可视化和回归分析星巴克咖啡在中国的定价建议

可视化和回归分析星巴克咖啡在中国的定价建议。星巴克的拿铁大杯Tall 在各国的价格。 Claude AI | 代码自动生成的数据可视化代码 选择Claude AI 而非 ChatGPT的理由是前者更懂中文​!具体可以参见我前面的两篇文章对比两者的中英文翻译的表现及使用安装等难易程度​…

2.SpringBoot运维实用篇

SpringBoot运维实用篇 ​ 基础篇发布以后,看到了很多小伙伴在网上的留言,也帮助超过100位小伙伴解决了一些遇到的问题,并且已经发现了部分问题具有典型性,预计将有些问题在后面篇章的合适位置添加到本套课程中,作为解…

做公有云服务,为什么对象存储不可或缺?

试问:公有云的竞争, 你觉得从什么时候开始白热化了? 【全球云观察 | 热点关注】对于这个问题,可谓仁者见仁智者见智。 在我看来,火山引擎还未推出全面的云服务之前,在国内的公有云领域&#x…

KingbaseES V8R6运维案例之---MySQL和KingbaseES字符串排序规则对比

案例说明: 相同数据排序后查询,在MySQL和KingbaseES下得到的排序顺序不一致,本案例从MySQL和KingbaseES的排序规则分析,两种数据库排序的异同点。适用版本: KingbaseES V8R6、MySQL 8.0 一、MySQL的排序规则1、排序规则…

各种预训练模型的理论和调用方式大全

诸神缄默不语-个人CSDN博文目录 本文主要以模型被提出的时间为顺序,系统性介绍各种预训练模型的理论(尤其是相比之前工作的创新点)、调用方法和表现效果。 最近更新时间:2023.5.10 最早更新时间:2023.5.10 BertRobe…

上海亚商投顾:沪指缩量调整跌超1% 新能源车产业链掀涨停潮

上海亚商投顾前言:无惧大盘涨跌,解密龙虎榜资金,跟踪一线游资和机构资金动向,识别短期热点和强势个股。 市场情绪 大小指数今日再度分化,沪指低开低走,午后一度跌超1.5%,创业板指则拉升涨超1%&a…

nodejs安装和环境配置-Windows

0.安装过程中遇到的常见问题 访问:https://blog.csdn.net/weixin_52799373/article/details/125718587?spm1001.2014.3001.5502 1.下载node.js 下载地址: https://nodejs.org/en/ 2.安装 2.1 安装 其实就是无脑下一步,第三步的时候可以选择自定义目…

springboot配置文件加载顺序, java启动参数优先级

搜索: "spring boot 外化配置" Spring Boot Reference Guide Spring Boot 中文文档 参考手册 中文版 SpringBoot中配置文件加载位置与优先级_apllication 配置文件项目启动时加载参数_流烟默的博客-CSDN博客 SpringBoot的外部化配置最全解析!_广州建站小戴BOTAO博…

k8s之HPA(Pod水平自动伸缩)

1.hpa介绍 HPA是根据指标来进行自动伸缩的,目前HPA有两个版本–v1和v2beta HPA的API有三个版本,通过kubectl api-versions | grep autoscal可看到 kubectl api-versions | grep autosca autoscaling/v1 autoscaling/v2beta1 autoscaling/v2beta2 查看使…

Uboot源码目录分析

在分析uboot源码之前一定要在Ubuntu中编译一下uboot源码,因为编译过程会生成一些文件,而生成的这些恰恰是分析uboot源码不可或缺的文件。 arch文件夹 存放和架构有关的文件,我们现在用的是ARM芯片,所以只需要关系arm文件夹即可 …

2.是人就能学会的Spring源码教学-Spring的简单使用

是人就能学会的Spring源码教学-Spring的简单使用 Spring的最简单入门使用第一步 创建项目第二步 配置项目第三步 启动项目 Spring的最简单入门使用 各位道友且跟我一道来学习Spring的最简单的入门使用,为了方便和简单,我使用了Spring Boot项目&#xff…

linux CentOs 安装 mysql8.0.30

心酸历程。。。 网上的各种教程都有各种bug,安了三个小时终于安好。现在奉上我的宝典秘籍。 第一步,去mysql官网下载,然后将下载的tar包放到linux里面,最好专门创建一个目录来存放,我放到了/usr/local/src的mysql目录下…

基于51单片机的简易电子秤

首先看看题目要求: 1.方案论证 (1)压力传感器的论证与选择 方案一:采用惠更斯电桥,当电阻应变片承受载荷产生变形时,其阻值将发生变化。从而使电桥失去平衡,产生相应的差动信号,但…

Jenkins入门系列之Gitlab账号登录

目录 背景步骤1. 安装插件2. Gitlab 配置3. Jenkins 配置4. 验证 背景 版本 Jenkins Version:Jenkins 2.403Gitlab Version: Gitlab 15.6部署环境:群晖NAS Docker 部署JenkinsGitlab Jenkins 默认使用的是自带的数据库,支持LDAP&#xff0…

【C++】-类和对象之初始化列表(explicit的简单介绍)(下)

💖作者:小树苗渴望变成参天大树 ❤️‍🩹作者宣言:认真写好每一篇博客 💨作者gitee:gitee 💞作者专栏:C语言,数据结构初阶,Linux,C 文章目录 前言 前言 经过前面的好几篇博客,大家应…

SpringSecurity自定义实现手机短信登录

SpringSecurity自定义登录验证-手机验证码登录 其实实现原理上跟账号密码登录一样的 1、自定义短信验证Token 定义一个仅使用手机号验证权限的鉴权Token,SpringSecurity原生的UsernamePasswordAuthenticationToken是使用username和password,如下图 pr…

向量时钟算法

向量时钟不仅同步本进程的时钟值,而且还同步已知的其他进程时钟值 分布式系统中每个进程Pi保存一个本地逻辑时钟向量值VCi,VCi(j)代表进程Pi知道的进程Pj的本地逻辑时钟值 初始化VCi向量为[0,…]进程Pi每发生一次事件,VCi[i]加一进程Pi给进…

应付模块无法关账问题 APP-AR-11332 您必须在关闭此期之前过账其中的所有事务处理

问题描述 AR关账时遇到了这个问题,根本原因是,因为用户录入另一个贷项的发票,做过核销,后来又取消了核销,未创建会计分类,未传送总,不想要这个贷项发票了,前台删除不了,…

经验分享,api 接口设计原则有这几条

结合我多年在 API 行业摸爬滚打的经验,我总结了一下,API 接口设计原则有这几条: 接口设计应该简单易用,易于理解和使用; 接口设计应该支持多种格式,如JSON、XML等; 接口设计应该支持多种请求方…

渲染速度慢,使用云渲染会快多少?

设计师在使用软件制作效果图和动画师在制作动画时,其中有一个比较关键的环节就是渲染成像,渲染的效率主要跟使用的电脑显卡或CPU性能有关,如果性能太低,渲染的速度会很慢,拉长了项目整体的交付周期,云渲染速…