簡(jiǎn)而言之,HAB Toolkit是Freescale提供的用于把代碼下載到SDRAM中運(yùn)行或是燒寫(xiě)到Flash的工具軟件。下面以i.MX21處理器為例,講講HAB的工作原理。
MX21帶著一個(gè)內(nèi)部ROM,出廠時(shí)在其中內(nèi)置了一段叫做Bootstrap的程序。板子上電后,通過(guò)檢查BOOT[3:0]的設(shè)置決定啟動(dòng)位置:
Bootstrap只負(fù)責(zé)初始化板子上的 UART和USB接口,所以在下載代碼之前,要通過(guò)meminit.txt這個(gè)文件來(lái)設(shè)置內(nèi)存控制器。
Flash Loader提供將RAM 中的代碼燒寫(xiě)到flash 的功能, 所以當(dāng)板子更換了 flash,就必須重寫(xiě)此文件,并包裝成bin格式的文件后給HAB Toolkit 使用。
總結(jié)HAB燒寫(xiě)流程如下:
設(shè)置跳線---上電---Bootstrap運(yùn)行---meminit.txt---Flash Loader和Image都下載到RAM中---Flash Loader把Image燒寫(xiě)到Flash