自編簡單bootloader完成

在《第一個ARM彙編程序》裏提到,自己要學習下ARM彙編,於是就寫了一個簡單的bootloader,流程是參照《bootloader技術內幕》而寫,彙編指令和C語言的使用以及編譯器、連接器都是參考《ARM體系結構與編程》(這是本非常好的書)。
本bootloader與網上盛傳的不同之處是:
1、加載分兩個階段第一個階段在NOR Flash裏,第二階段C語言在SDRAM裏運行,第一階段會把第二階段的代碼拷貝到SDRAM的0XC700000,中斷向量在0xC000000的SDRAM開始處。
2、中斷採用向量中斷方式,速度更快
3、有中斷服務程序的統一註冊登記方法,方便了中斷服務程序的編寫
4、提供了連接器使用的scatter腳本文件以及以及via文件
5、如果要添加功能可以在第二階段用C語言進行初始化用到的硬件,非常方便
本bootloader使用的編輯器是ADS1.2帶編輯器(因爲文件組織方便,但是我不會用它的集成環境),所有的源文件都是在命令行下編譯連接完成,通過AXD調試,總共耗費10天時間。嗯,明天六一,算是有個交代了,哈哈……本人會把代碼提供共享,大家轉載使用時註明出處就行了,好了,今天就到這,要回去休息,一天沒有給女朋友打電話了,回去陪她聊聊天。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章