【STM32】中断向量表

2023-11-14

我是通过这个进行学习的,我觉得讲的很好,这里我稍加修改,作为自己的学习笔记: 嵌入式杂谈之中断向量表

前言

STM32根据boot引脚的配置方式有3种启动方式,但是无论哪一种方式,对于STM32来说都是从0x0000 0000启动

STM32单片机启动第一件事就是取得中断向量表

中断向量表是一个4byte的数组,每个成员都是一个地址,指向相应的中断处理函数,当芯片处于不同的状态时,就会根据这段内容跳转到对应的地址去执行对应的程序。特别的第一个成员是栈顶地址,第二个成员是复位函数Reset_Handler

向量表

根据Arm的规定,cortex3 cortex4启动都是从0x0000 0000开始,

量表是一个WORD( 32 位整数,4byte)数组,每个下标对应一种异常,该下标元素的值则是该 ESR 的入口地址。向量表在地址空间中的位置是可以设置的,通过 NVIC 中的一个重定位寄存器来指出向量表的地址。在复位后,该寄存器的值为 0。因此,在地址 0 (即 FLASH 地址 0)处必须包含一张向量表,用于初始时的异常分配。

值得注意的是这里有个另类: 0 号类型并不是什么入口地址,而是给出了复位后 MSP 的初值(栈顶地址),后面会具体讲解。
在这里插入图片描述

启动文件

我们看一下STM32的启动文件,这边可以方便的看到中断向量表的内容。
在这里插入图片描述
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【STM32】中断向量表 的相关文章

随机推荐

  • Linux上安装和使用Wireshark

    CentOS下安装Wireshark相当简单 两条命令就够了 这里 主要是记录写使用方面的东西 安装 1 yum install wireshark 注意这样并无法使用wireshark命令和图形界面 但提供了抓包基本功能 2 yum in
  • Dlib库中实现正脸人脸关键点(landmark)检测的测试代码

    Dlib库中提供了正脸人脸关键点检测的接口 这里参考dlib examples face landmark detection ex cpp中的代码 通过调用Dlib中的接口 实现正脸人脸关键点检测的测试代码 测试代码如下 referenc
  • 2014年1月14日星期二(DEMO7-2,加载3D线框立方体物体模型)

    上个DEMO 是渲染列表 这个DEMO 进行了加载PLG模型 仍然是一步步地进行 PLG模型首行包含了物体名称 顶点数和多边形数3部分组成 加载模型时可以每次读取一行 并对其中的数字进行分析 现在开始进行代码 先设置摄像机坐标和位置 朝向
  • 利用cin和cout完成信息的输入输出(TOZJ练习5681)

    项目场景 问题描述 在dev c 上运行正确 在TZOJ出现Presentation Error 答案和标准结果非常接近 在输出结果中 多了或少了不必要的空格或者回车或者其他 的代码 include
  • Java集合排序

    一 概述 1 集合排序概述 数组排序 int arr 1 2 3 Arrays sort arr 集合排序 使用Collections类中 sort 方法对List集合进行排序 sort List list 根据元素的自然顺序对指定列表按升
  • 基于内容的图像检索(CBIR) ——以图搜图

    文章目录 一 实现原理 二 基于内容的图像检索的特征提取 三 代码实现 打赏 在CBIR中 图像通过其视觉内容 例如颜色 纹理 形状 来索引 一 实现原理 首先从图像数据库中提取特征并存储它 然后我们计算与查询图像相关的特征 最后 我们检索
  • use MinGW compile googletest on windows

    table of contents enviornments brief description of software installation MinGW installation cmake installation googlete
  • word文档墨迹工具的笔不能用_CourseMaker微课制作教程43:手写设备在Word、PPT、PDF里的使用方法大全...

    首先我们要有个概念 手写设备 数位板 纸笔手写板 数位屏 在各个软件里能否书写 跟这些设备硬件本身并没有什么关系 不是说这个牌子的手写板在A软件里能用 那个牌子的手写板在A软件里不能用 能否在软件里手写 主要还是看软件里的手写功能组件是否完
  • linux驱动12:主设备号和次设备号

    dev目录下执行ls l 设备文件项的最后修改日期前的用逗号分割的两个数 对设备文件来说就是相应的主设备号和次设备号 第一个字符c表示字符设备 b表示块设备 主设备号标识设备对应的驱动程序 次设备号由内核使用 用于正确确定设备文件所指的设备
  • [答疑]《软件方法》自测题为什么不直接给出答案?

    软件方法 下 分析和设计第8章连载 20210518更新 gt gt 问题 很多同学说 软件方法 各章的自测题要扫码到全对才知道答案 比较费劲 能不能直接给出答案 统一回答如下 这是有意为之的 这些题是多年积累下来 围绕着书中的知识点精心准
  • 普通光照模型:unityshader

    我们都知道物体表面的光照是由 自发光 镜面光 高光 环境光 漫反射得出来的 环境光 光照系数 环境光颜色 Ambient K GlobalAmbient 漫反射 Diffuse K LightColor max dot N L 0 反射光线
  • 【linux系统安装nvm】

    linux系统安装nvm 直接用脚本一键安装 sudo apt install curl curl https raw githubusercontent com creationix nvm master install sh bash
  • React Antd HelloWorld

    react antdesign helloworld 安装antd 第一个示例HelloWorld 报错解决 快速解决 安装antd 使用 npm 或 yarn 安装 我们推荐使用 npm 或 yarn 的方式进行开发 不仅可在开发环境轻松
  • visio 2010激活教程

    一 下载office2010toolkit zip 若下载链接失效 手动搜索office2010toolkit http ys c ys168 com 605279628 o4W138W45JIPI5SiuWf5 office2010too
  • NLP 做词频矩阵时,遇到特大矩阵触发memoryerror的处理方式

    昨天做NLP词频矩阵处理时候 遇到内存不足的问题 遇到memoryerror的情况 查了不少资料 都让我在大的机器上跑 但是有时候资源有限 由于我的句子中的每个词语都是重要的 所以不设置停用词 也就是countvectoirze才符合我的需
  • ffmpeg--使用命令+EasyDarwin推流笔记本摄像头

    手头没有网络摄像头 采用ffmpeg EasyDarwin 笔记本摄像头模拟一个网络摄像头用来开发程序 有一些小细节记录一下 EasyDarwin安装使用 流媒体服务器easydarwin的安装还是非常方便的 参考官方给的readme 几分
  • 三层架构实现增删改查操作封装

    文章目录 概要 整体架构流程 技术名词解释 技术细节 小结 概要 三层架构 三层架构分为 数据 dao 层 业务 service 层 控制 controller 层 1 表示层 USL 即User Show Layer 视图层 a 前台 对
  • 学习材料收集

    记一个好帖子 http www wowotech net
  • 一个例子让你看清线程调度的随机性

    粉丝提问 c语言 如何定义一个和库函数名一样的函数 并在函数中调用该库函数 一个端口号可以同时被两个进程绑定吗 两个线程 两个互斥锁 怎么形成一个死循环 一个例子让你看清线程调度的随机性 线程调度的几个基本知识点 多线程并发执行时有很多同学
  • 【STM32】中断向量表

    我是通过这个进行学习的 我觉得讲的很好 这里我稍加修改 作为自己的学习笔记 嵌入式杂谈之中断向量表 前言 STM32根据boot引脚的配置方式有3种启动方式 但是无论哪一种方式 对于STM32来说都是从0x0000 0000启动 STM32