iTop-4412 刷機方式詳解(1)
阿新 • • 發佈:2019-01-07
注: 本文針對使用 ARM 嵌入式開發板—訊為 iTop-4412 開發板的學習者, 其他讀者也可參考本文的刷機過程, 因為大部分 ARM (Cortex-A系列核心)的刷機過程都是相同或者類似的。
本篇博文以燒寫 Android4.0.4 系統為例, 使用 Mirco-USB 燒寫和 TF 卡燒寫的方式將作業系統燒錄到開發板的eMMC 和 TF 卡中。其餘作業系統例如 QT、Ubuntu 等由於燒寫過程相同, 而僅在燒寫的映象上有區別, 所以不加贅述。
首先說明一下為什麼要進行出廠燒寫:由於在出廠時,開發板內部是沒有 U-boot 的。 在學習過程中,
又可能出現 U-boot 損壞的問題。 所以如何燒寫 U-boot 還是很重要的, U-boot 程式設計的相關內容以後我會寫一系列的部落格, 我先挖個坑, 填不填看我心情, 嘿嘿。
1.出廠燒寫U-boot
U-boot 即 Universal Boot Loader(通用引導載入程式), 它的目的是將 Flash 中的作業系統拷貝到 SDRAM 中, 作業系統開始工作後就無用了。 我們可以把它類比為 PC 機中的 BIOS(基本輸入輸出系統), 缺少了 U-boot 系統是無法啟動的。 學刷機只要知道這個和 U-boot 的一些簡單命令就足夠了。 至於 U-boot 的一些初始化工作, 如何初始化系統硬體以及一些高階命令, 可以去深入學習 U-boot。1.1 準備工作
1) 硬體準備 開發板、5V / 2A直流電源、 USB 轉串列埠線、 TF 卡 2) 軟體準備 串列埠驅動、 SecureCRT (或者超級終端,我個人喜歡 SecureCRT ) 3) 燒錄映象(壓縮包) u-boot-iTOP-4412.bin (必須對應你的硬體版本)、 iTop4412_uboot_20151119.tar.gz1.2 燒寫過程
1)燒寫U-boot到 TF 卡中(開發板無 U-boot 情況下不能直接訪問開發板的 eMMC,所以需要藉助 TF 卡) 燒寫方式有兩種: ①使用 Windows 下的燒寫工具 找了很久,找到了九鼎創展的 SDMMC_Fusing_Tool.exe, 網盤地址如下: ②使用原始碼在 Ubuntu 下進行燒寫 a) 拷貝 iTop4412_uboot_20151119.tar.gz 到 Ubuntu, 目錄自定。 拷貝方式很多: ssh、 共享資料夾等。 我比較喜歡使用共享資料夾。 b) 解壓縮到當前目錄(檔名長可以使用 TAB 鍵補全)得到 iTop4412_uboot 資料夾 c) 使用讀卡器連線 TF 卡到 Ubuntu 系統 使用前最好將 TF 卡格式化。如果 TF 卡提前分割槽過, Windows下式看不出來, 右鍵格式化也沒用, 所以需要藉助工具, 我使用的 SDFormatter。網盤地址如下: 使用 df -l 命令(或者 ls /dev/sd*)檢視碟符,確認 TF 卡碟符編號。執行命令燒寫 U-boot 到 TF 卡。$cp /mnt/hgfs/share/iTop4412_uboot_20151119.tar.gz . $tar -zvxf iTop4412_uboot_20151119.tar.gz
$./mkuboot /dev/sdb
碟符名有可能是 sdc 或者其它,注意不帶 sdb 後不帶數字
d) 拷貝 u-boot-iTOP-4412.bin 到 iTop4412_uboot 資料夾下
e) 檢查燒寫的 TF 卡是否製作成功。
f) 拷貝 u-boot-iTOP-4412.bin 到 TF 卡
在 Windows 下進入剛才的 TF 卡,新建資料夾 sdupdate (只能使用該名字), 拷貝 u-boot-iTOP-4412.bin 到sdupdate。
注:實際上可以將其他映象都拷入該目錄, 燒寫時一併燒到 eMMC 中, 可以直接完成系統燒寫, 但是本篇博文只講解燒寫 U-boot 的方法, 使用 TF 卡燒寫系統會在下一篇博文中講到。
2) 連線電源、 串列埠線
3) 開啟 SecureCRT, 連線開發板
4) 將開發板切換到 TF 卡啟動模式.
將撥碼開關 1 和 2 分別撥到 1 和 0 (靠數字一側是 0,靠 ON 一側是 1 )
5) 燒寫 U-boot 到開發板的 eMMC 中
$sdfuse flash bootloader u-boot-iTOP-4412.bin
6) 從 eMMC 啟動
將撥碼開關 1 和 2 分別撥到 0 和 1 ,開機, 看是否能夠進入 U-boot, 出廠刷寫 U-boot 成功
PS: 燒寫系統會在《iTop-4412刷機方式詳解(2)》一文中詳解
2017 年 2 月 28日
Kilento