基于USB的便攜式設(shè)備固件升級程序的設(shè)計
6 固件升級
在完成設(shè)備路徑獲取,并將二級引導(dǎo)代碼下載至設(shè)備IRAM后,設(shè)備控制權(quán)交給這段應(yīng)用代碼。代碼主要負(fù)責(zé)Nand Flash的驅(qū)動和USB命令解析。至此,固件升級前的所有工作已準(zhǔn)備就緒。固件升級的核心任務(wù)是將固件文件無差錯寫入NAND Flash。由于NAND Flash存在壞塊,故必須先對其進(jìn)行壞塊檢測,然后形成壞塊信息表。根據(jù)需要寫入的固件各部分文件大小,結(jié)合壞塊信息表,則生成固件各文件在Flash中的存放位置,進(jìn)而將固件下載至Flash。最后填充ID Block,這樣就完成了固件升級。圖4為固件升級流程。
7 系統(tǒng)測試
系統(tǒng)測試采用自行開發(fā)的便攜式的網(wǎng)絡(luò)通信平臺。固件升級前需的準(zhǔn)備:(1)保證設(shè)備電池充足,防止升級過程因電池不足而中斷;(2)備份設(shè)備原有固件;(3)確保設(shè)備有足夠存儲容量;(4)檢查IJSB接口可靠性。圖5是固件生成及其下載演示。從圖5中看出,升級過程向設(shè)備寫入的菜單、圖像等資源顯示成功。
8 結(jié)束語
隨著嵌入式技術(shù)的發(fā)展,便攜式設(shè)備已普及日常生活中。隨著用戶不斷提出新功能要求,廠商通過更新固件使其產(chǎn)品增值。因此,該設(shè)計固件升級工具的設(shè)計方法可廣泛應(yīng)用于MP3、電子詞典等便攜式設(shè)備。測試結(jié)果表明,升級程序界面簡潔友好,只需幾個簡單操作就能完成系統(tǒng)固件升級。
評論