我有用于AT91sam9 ARM控制器的AT91Bootloader。我需要添加一些额外的硬件初始化,但我只编译了.bin文件。 我装bin文件到内存,并试图把它叫做:arm(裸机):调用二进制文件作为函数
((void (*)())0x00005000)();
但是,没有任何结果。尽可能少使用汇编程序。我之前被介绍过汇编程序,但由于它的共谋性,无法理解ARM汇编程序。我怎么能从bootloader中间调用,执行bin文件(它会在某个内存扇区中,例如0x00005000),然后返回到bootloader并继续执行它自己的代码?
给出的信息太少。顺便说一句,如果你正在调用的函数没有被编译和链接在地址0x5000处执行,上述可能不起作用(我不认为这个二进制文件只包含位置无关的代码)。 – 2013-03-01 10:44:55