基于DM642的FLASH分頁二級引導程序設計
(3)判斷是否到達頁末的代碼。頁地址控制寄存器的地址為0x90080011。在代碼拷貝的過程中,時刻判斷加載指針是否指向下一頁的開始,如果是,則返回到0x9000400,如果不是,則繼續拷貝。實現代碼如下:本文引用地址:http://www.104case.com/article/202586.htm
(4)執行跳轉。代碼拷貝完成后,引導結束,執行跳轉指令。代碼如下:
另外,必須編寫相應的命令文件以配合引導程序完成引導過程。在本例中,將二級引導程序放在.boat-load段中,并在命令文件中添加如下代碼:
4 實驗結果
將二級引導程序的匯編文件加入實際工程中,并且在命令文件中為二級引導程序申請相應的內存空間后,編譯、連接生成可執行文件(.out)。然后,通過hex6x轉換工具將可執行文件轉換為CCS可加載的數據文件。
建立CCS仿真環境與DM642開發板的連接,通過CCS仿真平臺,將數據文件燒寫到FLASH中。燒寫完成后,斷開開發板與CCS的連接,加電測試程序能夠正常運行。
5 結 語
本文介紹了DM642的FLASH分頁引導的二級引導程序的設計方法,并給出部分實現代碼。實踐證明,該方法是可行的。這為基于DM642的實際應用開發提供了一個途徑。
評論