據我所知bin和精靈之間的基本區別在於elf文件如何加載正確的內存地址併成功執行?
.bin文件只包含位或字節的數據,你需要給的內存地址,當你在內存中加載它,
而在精靈之情況下,有符號查找和可重新定位的表格,所以在編程時無需給出地址。
現在看到attached image。我正在使用LPCexpresso在設備中編寫elf文件。如果你沒有給基地址,那麼默認情況下它將需要0x00000000。現在我第一次編程bootloader.elf
,然後main.elf
。在這兩種情況下,我都沒有給出基地址。
現在我的問題是,如果我不給地址,那麼elf
文件如何決定編程正確的位置,並編程一個圖像後,如果我編程另一個圖像,那麼不是它覆蓋第一個? (因爲在這兩種情況下我們都沒有給出地址,默認情況下它是0x00000000)