一. 前言
世平集團 ATU 伊布小編 (一部) 團隊針對 i.MX 相關技術整理了一系列博文,希望能夠透過這些博文協助大家更了解 i.MX 的相關技術,未來 ATU 伊布小編 (一部) 團隊也會持續更新此系列的相關博文還懇請支持!這篇文章主要是延續【ATU Book-i.MX9系列】OP-Gyro ( NXP i.MX93 ) Linux 開發環境架設這篇文章做更多資料的分享,再來本篇文章將會針對如何對 OP-Gyro ( i.MX93 ) 做燒錄與開機做說明與介紹。
二、 OP-Gyro ( i.MX93 ) 燒錄介紹
在開始燒錄之前請先準備好【ATU Book-i.MX9系列】OP-Gyro ( NXP i.MX93 ) Linux 開發環境架設這篇文章提到的 imx-boot-opgyro-sd.bin-flash_singleboot、imx-image-full-opgyro.wic 等檔案。
ATU 伊布小編 (一部) 團隊開發製作的 OP-Gyro ( i.MX93 ) 有 2 種開機方式,分別為 SD Card 開機 與 eMMC 開機,後續章節會針對開機做更多說明。
以下為 OP-Gyro ( i.MX93 ) 開發板示意圖。
接著,將會介紹如何把 OP-Gyro ( i.MX93 ) 的燒錄映像檔 ( Image ) 燒錄到 SD Card 與 eMMC 裝置。
補充:燒錄 Image 至 NXP 嵌入式的平台方法有很多種,若想了解更多燒錄細節也可參閱"【ATU Book - i.MX8系列 - OS】NXP i.MX Linux BSP 開發環境架設" 的第二章節。
SD Card 燒錄
ATU 伊布小編 (一部) 團隊建議 SD Card 的容量要 > 16GB。
再來,請各位讀者參考以下步驟燒錄:
1. 下載 Rufs 燒錄軟體來燒錄 OP-Gyro ( i.MX93 ) 的 Image。
2. 先執行 Rufs 程式,接著請點進「選擇」後,選取「所有檔案」再選擇 imx-image-full-opgyro.wic 檔案即可按下「執行」。
補充:Rufs 程式會提醒 SD Card 上的資料將會清除,讀者只需要點選確定即可,也請記得別選錯 Disk。
以下為 Rufs 程式燒錄過程的截圖。
以下為 Rufs 程式燒錄完成的截圖。
做到這個步驟以後,這張 SD Card 就可以參考後續的第三章節拿到 OP-Gyro ( i.MX93 ) 開發板上面開機囉。
eMMC 燒錄
燒錄 eMMC 會需要使用 imx-boot-opgyro-sd.bin-flash_singleboot、imx-image-full-opgyro.wic 、uuu.exe、uuu_emmc.auto 等檔案。
請各位讀者參考以下敘述做相關檔案的收集:
a. imx-boot-opgyro-sd.bin-flash_singleboot 與 imx-image-full-opgyro.wic
請在 tmp/deploy/images/opgyro 取得,細節可參考【ATU Book-i.MX9系列】OP-Gyro ( NXP i.MX93 ) Linux 開發環境架設這篇文章。
b. uuu.exe
請先至 NXP GitHub 下載最新的 uuu.exe 工具。
補充:uuu.exe 是給 Windows 系統使用,而 uuu 則是給 Linux 系統使用。
c. uuu_emmc.auto
請將以下內容另外存成 uuu_emmc.auto,或是點選此 Link 下載。
uuu_version 1.2.39
# This command will be run when i.MX6/7 i.MX8MM, i.MX8MQ
SDP: boot -f imx-boot-opgyro-sd.bin-flash_singleboot
# This command will be run when ROM support stream mode
# i.MX8QXP, i.MX8QM
SDPS: boot -f imx-boot-opgyro-sd.bin-flash_singleboot
# These commands will be run when use SPL and will be skipped if no spl
# SDPU will be deprecated. please use SDPV instead of SDPU
# {
SDPU: delay 1000
SDPU: write -f imx-boot-opgyro-sd.bin-flash_singleboot -offset 0x57c00
SDPU: jump
# }
# These commands will be run when use SPL and will be skipped if no spl
# if (SPL support SDPV)
# {
SDPV: delay 1000
SDPV: write -f imx-boot-opgyro-sd.bin-flash_singleboot -skipspl
SDPV: jump
# }
FB: ucmd setenv fastboot_dev mmc
FB: ucmd setenv mmcdev ${emmc_dev}
FB: ucmd mmc dev ${emmc_dev}
FB: flash -raw2sparse all imx-image-full-opgyro.wic
FB: flash bootloader imx-boot-opgyro-sd.bin-flash_singleboot
FB: ucmd if env exists emmc_ack; then ; else setenv emmc_ack 0; fi;
FB: ucmd mmc partconf ${emmc_dev} ${emmc_ack} 1 0
FB: done
確認收集好上述檔案後,請將所有檔案放到相同的目錄下。( 如下圖所示 )
接著,參考以下步驟做燒錄:
1. 將 OP-Gyro ( i.MX93 ) 的 UART Debug 與 PC 做連接。
OP-Gyro ( i.MX93 ) 針對 USB 燒錄有做一個設計,當 SD Card 未使用並且 UART Debug 先插再上電,這樣可以將 Boot Mode 設置為 Serial Download。
這裡可以先不需要設置 UART Debug 的 Baud Rate。
2. 將 OP-Gyro ( i.MX93 ) 上電
3. 將 OP-Gyro ( i.MX93 ) 上的 Download Port ( USB1 ) 連接到 PC 端。
以下為 OP-Gyro ( i.MX93 ) 板子的 USB 位置俯視圖。
以下為 OP-Gyro ( i.MX93 ) 板子的 Download Port ( USB1 ) 位置侧視圖。
補充:OP-Gyro ( i.MX93 ) 只有 USB1 才有 Download Firmware 的功能。
以下為 OP-Gyro ( i.MX93 ) 板子與 PC 連接的示意圖。
4. 執行燒錄命令。
.\uuu.exe .\uuu_emmc.auto
以下為 OP-Gyro ( i.MX93 ) eMMC 燒錄完畢的示意圖。
補充:如果讀者們在燒錄 eMMC 的時候有遇到執行燒錄命令後沒反應的問題,可以參閱 ATU 伊布小編 (一部) 團隊的 【ATU Book-i.MX9系列】OP-Gyro ( i.MX93 ) eMMC 燒錄之疑難排解這篇博文來排除問題。
完成這個步驟以後就可以參考後續的第三章節在 OP-Gyro ( i.MX93 ) 開發板上面開機囉。
三、 OP-Gyro ( i.MX93 ) 開機步驟
稍早有提到 OP-Gyro ( i.MX93 ) 有 2 種開機方式,分別為 SD Card 開機 與 eMMC 開機,預設的情況下 OP-Gyro 一上電都是從 eMMC 做開機;如果要從 SD Card 開機則需要長按 SD Boot 按鈕再開機,後續會有更詳細說明。
再來,請各位讀者依照以下步驟開機囉。
eMMC 開機步驟
下圖敘述了 OP-Gyro ( i.MX93 ) 的 DC Jack 與 Debug Port ( A53 Debug ) 以及 eMMC 的位置,請讀者們參照以下 2 個步驟就可以讓 OP-Gyro 順利從 eMMC 開機囉。
1. OP-Gyro ( i.MX93 ) 的電源使採用 DC 12V,請各位讀者先上電 ( 先不插 UART Debug )。
由於 OP-Gyro ( i.MX93 ) 針對 USB 燒錄有做一個設計,當 SD Card 未使用並且 UART Debug 先插再上電,這樣可以將 Boot Mode 設置為 Serial Download,所以 eMMC Boot 的時候需要注意上電步驟。
2. 插上 UART Debug 並設置 UART Debug Baud Rate。
OP-Gyro ( i.MX93 ) 的 UART Debug Port Baud Rate 為 115200,請確認 A53 的 Debug Port 有跟 PC 連接,並設置正確 Baud Rate 速度。接著就可以透過 UART Debug Port 在 Terminal 看到 OP-Gyro 的開機 Log 囉!
NXP i.MX 的 Debug 方式有很多種,最常見的就是透過 UART 來做 Debug,讀者可以選擇自己慣用的 Terminal 軟體來做使用。
當 OP-Gyro ( i.MX93 ) 的 UART Debug Port 跟 PC 連接後,可以從裝置管理員看到 COM Port,那 COM Port 號碼會隨著 PC 環境的不一樣不盡相同,
以下為筆者的裝置管理員 COM Port 示意圖。
下圖是筆者透過 Tera Term 軟體設置 Baud Rate 為 115200 的示意圖。
SD Card 開機步驟
下圖敘述了 OP-Gyro ( i.MX93 ) 的 DC Jack、Debug Port ( A53 Debug )、SD Card 插槽、SD Boot 按鈕的位置,請讀者們使用以下 3 個步驟讓 OP-Gyro 從 SD Card 開機囉。
1. 請確認 A53 的 Debug Port 有跟 PC 連接,並設置 Baud Rate 速度為 115200。( 細節可翻閱 eMMC 開機步驟小章節,這裡不再多做說明 )
2. 確保 SD Card 已經放入 SD Card 插槽,也請注意 SD Card 裡面需要先燒錄 OP-Gyro 的 Image ( 細節請參閱第二章節,這裡不再多做說明 )。
3. 長按 SD Boot 按鈕並上電,再來就可以透過 UART Debug Port 在 Terminal 看到 OP-Gyro 的開機 Log 囉。
由於 OP-Gyro ( i.MX93 ) 有 2 種開機方式,分別有 SD Boot、eMMC Boot 這 2 種,這裡針對操作步驟製作了一張表格來幫助各位讀者理解。
Boot Mode | 解釋 |
---|---|
SD Boot | 上電前按下 SD Boot 按鈕 ( UART Debug 可接著 ) |
eMMC Boot | 上電前不插 UART Debug |
再來,不管是 eMMC 開機或是 SD Card 開機都可以看到下圖的成功開機畫面;如果讀者們在開機的時候有遇到問題,可以參閱 ATU 伊布小編 (一部) 團隊的 【ATU Book-i.MX9系列】OP-Gyro ( i.MX93 ) SD Card 與 eMMC 開機疑難排解這篇博文來排除問題。
最後,讀者們就可以開始透過 UART Debug Port 在 Terminal 操作 OP-Gyro ( i.MX93 ) 囉。
四、 結論
本篇文章介紹了如何對 OP-Gyro ( i.MX93 ) 做燒錄與開機,後續也會有別篇文章繼續介紹如何在 OP-Gyro ( i.MX93 ) 上使用周邊 IO 及相關驗證等,懇請各位讀者多多支持 【ATU Book-i.MX9系列】OP-Gyro ( i.MX93 ) 的系列博文。若未來讀者們有 i.MX 的相關問題歡迎隨時與世平集團做討論。
五、 參考文件
[1] https://rufus.ie/zh_TW/#google_vignette
[2] https://github.com/nxp-imx/mfgtools/releases
[3] https://www.nxp.com/docs/en/user-guide/IMX_YOCTO_PROJECT_USERS_GUIDE.pdf
[4] https://www.wpgdadatong.com/blog/detail/74338
[5] https://www.nxp.com/webapp/Download?colCode=L6.1.55_2.2.0_MX93&appType=license
評論