野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 17905|回复: 2

STM32的中断向量表的重映射问题

[复制链接]
发表于 2015-7-3 16:14:05 | 显示全部楼层 |阅读模式
网上看了很多关于STM32的中断向量表的帖子,估计也就那几个帖子抄来抄去的。但是始终有个问题:为什么要对中断向量表进行重新映射?
​           我看了宋岩的COREM3权威指南上讲“然而,为了动态重分发中断, CM3 允许向量表重定位——从其它地址处开始定位各异常向量。这些地址对应的区域可以是代码区,但也可以是 RAM 区。在 RAM区就可以修改向量的入口地址了。”。但是,感觉说了跟没说一样,没有回答问题的本质。
​           我的疑惑:
​                             1.如果不重新映射的话,中断向量表的地址应该是这样的:0X0000 0000是SP;0X0000 0004是复位向量;0X0000 0008是NMI;后面按照中断编号的顺序依次按4递增。这样的话,不也能存得下中断向量表吗?反正存的是一些函数指针,占不了多少空间,干嘛还要重新映射到其他的地方呢?
​                             2.如果重新映射的话,中断向量表的入口地址就变成0x0800 0000了。但是一开始已经开辟的那部分空间(0x0000 0000......)存放的中断向量表不是就​等于没用吗?
​                             请好心人帮我解答下,在下不甚感激!

回复

使用道具 举报

发表于 2015-7-4 09:18:13 | 显示全部楼层
我还没试过重映射中断向量表,都是用默认的。这么说来我也不知道为什么要重映射
回复 支持 反对

使用道具 举报

发表于 2015-7-4 09:19:56 | 显示全部楼层
它这里说的“为了动态重分发中断” ,那就是可能某些应用需要中断向量表是可变的,可是我还没遇到过这样的需求
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2025-1-9 17:10 , Processed in 0.031409 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表