STM32F103系列配置中断向量表偏移(Keil/STM32CubeIDE)

需要在flash中添加bootloader的话,需要对flash进行分区,即bootloader区和app区(程序运行区),主要记录在 Keil 平台和 STM32CubeIDE平台 上的中断向量表偏移配置,以偏移 0x2800 为例,即预留10k大小的空间给bootloader


Keil
修改flash起始地址

打开工程魔术棒,Target→IROM1,填入flash起始地址为 0x8000000 偏移 0x2800 后的 0x8002800 ,芯片flash大小是 256k(0x40000),需要减掉偏移量 0x2800 之后是 0x3D800
在这里插入图片描述

修改中断向量表偏移

打开 system_stm32f1xx.c 文件(注意该工程由 CubeMX 配置而来),在其96行左右的宏定义 USER_VECT_TAB_ADDRESS 默认是注释掉的,把注释删了,在98行有这个宏的定义判断
在这里插入图片描述如果程序要运行在SRAM则取消101行注释并修改SRAM的相关偏移量,否则则是使用下面flash相关的宏配置,110行中断向量的偏移量和Flash起始位置偏移量是一样的为 0x00002800U
在这里插入图片描述编译工程后进入Debug调试模式,打开内存监视器,在 0x8000000 地址开始都是

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GenCoder

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值