1)读0地址和读4地址这两件事情应该也是两条指令驱动的,这两条指令存放在哪里呢?
2)reset handler程序一般存放在哪里呢?
3)reset handler执行完之后,经过怎样的经过最终到了Mbed OS或者其他操作系统的引导呢?
1)读0地址和读4地址这两件事情应该也是两条指令驱动的,这两条指令存放在哪里呢?
2)reset handler程序一般存放在哪里呢?
3)reset handler执行完之后,经过怎样的经过最终到了Mbed OS或者其他操作系统的引导呢?
1、复位启动是硬件驱动,不是软件驱动,也就是说读取0和4是不需要指令的
2、reset handler放在startup.s里面,接在vector table后,你可以反汇编你的.axf文件,会发现reset handler这个函数在地址空间里面也是接在vector table之后的
3、如楼上的代码,通过 LDR 和 BX跳转
放在启动文件里例如
Reset_Handler PROC
GLOBAL Reset_Handler
ENTRY
IMPORT __main
LDR R0, =__main
MOV R8, R0
MOV R9, R8
BX R0
ENDP