问题遇到的现象和发生背景
请问如何在Clion里编写运行在外部flash里的代码,mcu是stm32h750vbt6,除了修改system_stm32h7xx.c中的SCB->VTOR,还有其他需要修改的吗
我在编写一个测试程序后在system_stm32h7xx.c中的SCB->VTOR修改了中断向量表的位置,但是跳转到flash的0x90000000的位置后没有运行反应
我想要达到的结果
程序正确运行
程序正确运行
你说的是跳转,那也就是说是从片内flash启动,然后再运行外部flash的程序。
你是把片内flash作为bootloader,片外flash作为app,还是把片内片外作为一个程序的两部分。
无论哪种方式,你都需要先在片内flash的代码种初始化外部flash总线。
如果是bootloader方式,你需要在bootloader修改向量表,关掉中断,清空cache再跳转;在app的项目里,按片外flash的地址设置好代码地址范围;
如果是两段式,没有必要修改中断向量,在编译器选项里,需要设置好两段flash的范围。