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