为适配开源pixhawk v2飞控(STM32F427VI、bootloader占16K),我修改了link.sct中的内容
使用制作BSP的教程,用CubeMX配置好芯片,做完必要修改后,启用内核调试的宏,烧入飞控后,main()函数并没有执行。调试信息和main函数内容如下
我加调试信息发现rtthread_startup中rt_system_scheduler_start之前的rt_kprintf函数都能打印出信息,但main()函数中的却不行。我感觉是在执行rt_system_scheduler_start中的rt_hw_context_switch_to函数出了问题。但有不知道是什么引起的。
我之前怀疑是LR_IROM1和ER_IROM1从0x08000000改为0x08004000造成中断向量表在flash中的位置错位了,但我看程序发现,中断向量表的地址是在STM32提供的库函数的定义的,LR_IROM1和ER_IROM1不会影响。
您好,怎么映射?刚接触RT-Thread,对这些还不是很熟悉
再添加一个函数,用于重映射中断向量表(重要,重要,重要)
我试了一下,可以了,谢谢您!
@breederbai 楼主~问题解决了的话,记得采纳答案哦~
@flyboy 已点,谢谢提醒。
@JQRR_7669 下次可以试试 Markdown 语法贴代码哈,这样格式更加好看了
点下
</>
就行了