[STM32F0] STM32F030K6 无 VTOR 寄存器如何重映射向量表

[复制链接]
90|0
梧桐uuu 发表于 2025-11-7 15:39 | 显示全部楼层 |阅读模式

MCU 型号为 STM32F030K6T, 因为这款 MCU 没有 向量表偏移寄存器VTOR。想请教如何将该 MCU 的向量表重映射到我的应用程序地址0x08001000 或 0x08004800。
我曾在 STM32G030F6P(G 系列 MCU)上成功实现过该操作,以下是 G 系列 MCU 的相关代码:
int main(void){

if (IMAGE_1 == *((__IO uint32_t*) SRAM_SELECT_ADDRESS)) {

uint32_t addressImage1 = imageAddress(CONFIG_ADDRESS, IMAGE_1);

SCB->VTOR = addressImage1 + 4;

}

if (IMAGE_2 == *((__IO uint32_t*) SRAM_SELECT_ADDRESS)) {

uint32_t addressImage2 = imageAddress(CONFIG_ADDRESS, IMAGE_2);

SCB->VTOR = addressImage2 + 4;

}

/* MCU Configuration--------------------------------------------------------*/

platform_start();

HAL_UART_Receive_IT(&huart2, uartRxbuffer, sizeof(uartRxbuffer));

while(1){

// waiting for an interrupt.

}

}

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

本版积分规则

68

主题

70

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部