硬件:米爾i.MX6UL開發板MYD-Y6ULX 簡介:MYD-Y6ULX開發板(i.MX6UL開發板)由MYC-Y6ULX核心板和底板組成,基于NXP i.MX6UL處理器或i.MX6ULL處理器可選,MYD-Y6ULX開發板(i.MX6ULL開發板)提供豐富外設硬件,板載了Mini PCIE接口(用于4G模塊)及SIM卡槽、WIFI芯片及天線接口、雙百兆網口、LCD液晶接口、音頻接口、帶隔離的CAN,RS485,RS232等。 系統更新 MYD-Y6ULX系列開發板提供了兩種更新Linux系統的方法,USB更新和SD卡更新。 USB更新: 將芯片找切換至Download模式,使用NXP MfgTool工具燒寫文件到板載的Flash內。 SD卡更新: 使用可啟動的SD更新卡,啟動后從SD卡燒寫文件到板載Flash。 USB更新 USB更新方法的燒寫工具是由NXP公司提供的MfgTool 2.7.0版本,文件包名為MYD-Y6ULX-mfgtools-20171012.zip,光盤中路徑"03- Tools/ManufactoryTool"目錄下,支持Windows和Linux操作系統。 解壓后的目錄中有vbs文件,這些是配置好的燒寫腳本。 執行后即可啟動MfgTool 程序。 更新步驟如下(順序不可顛倒): 切換啟動撥碼開關(SW1)的第3位為OFF,第4位為ON。 使用USB轉接線(Type-A轉Micro-B)連接PC機USB端口與開發板Micro USB OTG端口(J26)。 使用DC 12V電源適配器連接至開發板的電源座(J22)。 雙擊MfgTool目錄下的"core-image-base-myd-y6ulx-nand.vbs"文件,此時可以看到MfgTool界面已識別到開發板。 點擊MfgTool界面上的"Start"按鈕,MfgTool就開始自動更新系統至板載NAND存儲芯片。 更新成功后底部的總進度條會顯示為綠色。 若失敗則為紅色時,可以查看"MfgTool.log"文件的錯誤提示信息。 或者使用USB轉TTL串口線連接至 JP1,再重新更新系統,就可以從串口查看更新過程并分析失敗的原因。 更新MfgTool的文件 如果需要將自己編譯的系統鏡像文件更新到開發板上時,需要替換MfgTool里面對應的文件。 MfgTool的文件更新有兩個部分,firmware和files。 files 目錄下為燒寫的目標鏡像文件,路徑為"MYD-Y6ULX-mfgtools/Profiles/Linux/OS Firmware/files/"。 firmware是燒寫系統的鏡像文件,路徑為"MYDY6ULX-mfgtools/Profiles/Linux/OS Firmware/firmware/"。 當更新系統的分區大小或燒寫方式時才需要更新firmware中的文件。 files目錄下的文件說明:
切換為NAND啟動方式 更新完成后斷電,配置啟動位撥碼開關為NAND啟動方式,如下:
重新連接電源,開發板即可以從NAND啟動系統了。 SD卡更新 MYD-Y6ULX開發板提供了一個使用SD卡更新系統鏡像的文件,sdcard鏡像文件。 sdcard鏡像文件需要使用特殊的磁盤操作工具才可以寫入Micro SD 卡內,Linux系統用戶可以直接使用dd命令,Windows系統用戶使用Win32ImageWriter工具。 MYD-Y6ULX的開發資源包內已包含兩個sdcard文件,位置為02-Images。
注意:rootfs.sdcard前面的時間為生成文件時的日期時間,請以實際文件為主。 制做SD更新的鏡像 如果對Linux kernel,U-Boot或者文件系統有修改,可以自行打包制做sdcard文件,將系統燒寫在開發板上。 MYD-Y6ULX開發板提供了一個可以制做 SD更新鏡像的工具MYD-6ULX-mkupdate-sdcard,存放在04-Tools/ManufactoryTool目錄。 build-sdcard.sh腳本用于制做從SD卡更新系統的鏡像,分為兩個部分:更新系統和目標文件。 firmware目錄下是更新系統,一般情況下不需要修 改。 'mfgimages-*'是目標文件,里面的文件最終會燒寫進板載的NAND或者eMMC存儲芯片內。 如果修改u-boot, kernel后,需要把相應的文件替換 到目標文件內即可。 'mfgimage-*'目錄內的文件名遵循以下方式命名,錯誤的文件名稱在更新系統時不會被識別,會出現升級失敗。 這些文件的名稱被定義在Manifest 文件內,命名規則如下: ubootfile="u-boot.imx" kernelfile="zImage" dtbfile="myd-y6ull-gpmi-weim.dtb" rootfsfile="core-image-base.rootfs.tar.xz" 更新程序啟動后會根據Manifest文件加載需要的文件,以將它們寫入到目標NAND Flash存儲芯片。 解壓后就可以開始制做鏡像了。 sudo ./build-sdcard.sh -p myd-y6ull -n -d mfgimages-myd-y6ull-ddr256m-nand256m build-sdcard.sh提供了四種參數: '-p' 表示平臺,可用參數為"myd-y6ull"代表MYD-Y6ULL '-n' 表示板上存儲芯片是NAND '-e' 表示板上存儲芯片是eMMC '-d' 表示更新文件的目錄 '-t' 表示添加文件名標識 注意:'-n'和'-e'不能同時使用,只能使用一種。 運行結束后會生成一個sdcard后綴的文件,如'myd-y6ull-update-nand-20170825150819.rootfs.sdcard'。 制做可更新系統的SD卡 MYD-Y6ULX資源包內提供了用于更新系統的sdcard鏡像文件,可以直接使用,也可以使用上一步制做的sdcard文件。 MYD-Y6ULX提供好的sdcard文 件存放在02-Images目錄內。 有了用于更新的SD卡鏡像文件,就可以把鏡像文件寫入到SD卡。 為了方便使用,建議把Micro SD插入USB讀卡器,再 插入電腦USB端口。 注意: 02-Images目錄內的文件名的時間標識部分可能與如下示例文件有差異,請以實際為主。 Linux系統 通常Linux下的存儲設備名為"sd[x][n]"形式,x表示第幾個存儲設備,一般使用字母a~z表示。 n表示存儲設備的分區,一般使用數字,從1開始。 插 入后可以使用"dmesg | tail"命令查看新設備的設備名稱。 這里以"/dev/sdb"設備為例,sdb后面不寫任務分區數字。 sudo dd if=myd-y6ull-update-nand-base-20170919090957.rootfs.sdcard of=/dev/sdb conv=fsync 寫入的速度與USB和Micro SD卡的速率有關,如果對速度有要求,建議選用更高速度等級的Micro SD存儲卡。 Windows系統 Windows用戶可以使用Win32DiskImager工具把sdcard鏡像寫入Micro SD里。 工具在"03-Tools"目錄下,解壓后,雙擊"Win32DskImager.exe"應用程 序。 啟動后的界面中,右側的"Device"是選擇要寫入的設備盤符。 左側的"Image File"是選擇將要寫的鏡像文件,點擊旁邊的文件夾圖標,選中要寫 入的文件即可(注意:文件選擇對話框中默認是過濾".img"文件,切換成".*",就可以顯示到sdcard后綴的文件)。 寫入前請再次確認目標磁盤和文件是否正確,避免寫入到系統磁盤,損壞Windows系統分區。 ![]() 等待進度條結束后,就可以拔出USB讀卡器。 把制做好的Micro SD卡插入開發板的卡槽(J8),配置啟動位撥碼開關(SW1)為SDCARD啟動方式,如下:
連接USB轉TTL串口線至調試串口(JP1),配置好電腦端的串口終端軟件。 使用DC 12V電源適配器連接至開發板的電源接口(J22)。 通過串口可以看到 系統從Micro SD卡啟動,并執行更新腳本,把Linux系統鏡像文件寫入NAND存儲芯片內。 也可以通過用戶LED燈(D30)來判斷當前更新狀態,更新中為閃爍狀態,更新成功后會常亮,失敗則會熄滅。 切換為NAND啟動方式 更新完成后斷電,配置啟動位撥碼開關為NAND啟動方式,如下:
重新連接電源,開發板就可以從NAND啟動系統了。 |