我有用於AT91sam9 ARM控制器的AT91Bootloader。我需要添加一些額外的硬件初始化,但我只編譯了.bin文件。 我裝bin文件到內存,並試圖把它叫做:arm(裸機):調用二進制文件作爲函數
((void (*)())0x00005000)();
但是,沒有任何結果。儘可能少使用匯編程序。我之前被介紹過彙編程序,但由於它的共謀性,無法理解ARM彙編程序。我怎麼能從bootloader中間調用,執行bin文件(它會在某個內存扇區中,例如0x00005000),然後返回到bootloader並繼續執行它自己的代碼?
給出的信息太少。順便說一句,如果你正在調用的函數沒有被編譯和鏈接在地址0x5000處執行,上述可能不起作用(我不認爲這個二進制文件只包含位置無關的代碼)。 – 2013-03-01 10:44:55