当前位置:   article > 正文

如何修改stm32起始执行地址_stm32修改启动地址

stm32修改启动地址

实例更改stm32起始执行地址为0x08010000,使用cubemx 生成工程,配置好串口1和时钟,

修改要点:

1,将icf文件中的__ICFEDIT_intvec_start__从默认的0x08000000改为0x08010000

 

2,VECT_TAB_OFFSET改为0x10000

全局查找VECT_TAB_OFFSET,或者从启动s文件中的Reset_Handler找到SystemInit,VECT_TAB_OFFSET就在SystemInit函数的末尾如图

找到定义,然后修改值,

如果是RO文件不可修改的话,在工程目录中选择该文件右键打开菜单选择file properties...,然后去掉只读的勾选。之后就可以修改了。

 

main函数如下,使用iar进行download and debug,

  1. /* USER CODE BEGIN 2 */
  2. printf("diy8 demo\r\n");
  3. /* USER CODE END 2 */
  4. /* Infinite loop */
  5. /* USER CODE BEGIN WHILE */
  6. while (1)
  7. {
  8. HAL_Delay(1000);
  9. printf("uart test\r\n");
  10. /* USER CODE END WHILE */
  11. /* USER CODE BEGIN 3 */
  12. }
  13. /* USER CODE END 3 */

串口的打印信息如图可以看到0x8010000处已经正常烧写了内容,而0x8000000处依旧是空的

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/article/detail/56597
推荐阅读
相关标签
  

闽ICP备14008679号