国产中文字幕在线视频,.com久久久,亚洲免费在线播放视频,神九影院电视剧免费观看,奇米在线888,天天网综合,久久免费视频观看

標(biāo)識(shí)標(biāo)牌網(wǎng)站怎么做網(wǎng)絡(luò)培訓(xùn)心得

鶴壁市浩天電氣有限公司 2026/01/22 10:12:34
標(biāo)識(shí)標(biāo)牌網(wǎng)站怎么做,網(wǎng)絡(luò)培訓(xùn)心得,東莞seo建站投放,門店管理網(wǎng)站建設(shè)#x1f4cb; 目錄導(dǎo)航 一、基礎(chǔ)命令二、環(huán)境變量管理三、內(nèi)存操作四、存儲(chǔ)設(shè)備操作五、文件系統(tǒng)操作六、網(wǎng)絡(luò)操作七、系統(tǒng)啟動(dòng)八、設(shè)備樹(shù)操作九、總線與接口十、高級(jí)功能十一、補(bǔ)充命令 一、基礎(chǔ)命令 1.1 幫助與版本信息 help - 顯示命令幫助 help # … 目錄導(dǎo)航一、基礎(chǔ)命令二、環(huán)境變量管理三、內(nèi)存操作四、存儲(chǔ)設(shè)備操作五、文件系統(tǒng)操作六、網(wǎng)絡(luò)操作七、系統(tǒng)啟動(dòng)八、設(shè)備樹(shù)操作九、總線與接口十、高級(jí)功能十一、補(bǔ)充命令一、基礎(chǔ)命令1.1 幫助與版本信息help- 顯示命令幫助help# 列出所有可用命令helpprintenv# 查看 printenv 命令的詳細(xì)用法?# help 的簡(jiǎn)寫形式version- 顯示 U-Boot 版本version# 輸出示例:# U-Boot 2023.07 (Oct 15 2023 - 10:23:45 0800)bdinfo- 顯示板級(jí)信息bdinfo# 輸出示例:# boot_params 0x80000100# DRAM bank 0x00000000# - start 0x80000000# - size 0x20000000coninfo- 顯示控制臺(tái)設(shè)備信息coninfo# 輸出示例:# List of available devices:# serial44e09000 00000003 IO1.2 顯示與輸出命令echo- 輸出文本到控制臺(tái)echoHello U-Boot# 輸出文本# 輸出: Hello U-Bootecho${ipaddr}# 輸出變量值# 輸出: 192.168.1.10# 實(shí)際應(yīng)用腳本中的提示信息echoStarting system boot...echoIP address:${ipaddr}cls- 清屏cls# 清除屏幕內(nèi)容# 功能: 清空當(dāng)前控制臺(tái)顯示# 應(yīng)用: 開(kāi)始新的調(diào)試會(huì)話前清屏true/false- 返回成功/失敗狀態(tài)trueechoSuccess# 總是執(zhí)行# 輸出: Successfalse||echoFailed# 總是執(zhí)行# 輸出: Failed# 實(shí)際應(yīng)用腳本邏輯控制iftrue;thenechoCondition metfi二、環(huán)境變量管理2.1 查看環(huán)境變量printenv/print/pri- 顯示環(huán)境變量printenv# 顯示所有環(huán)境變量printenvbootdelay# 顯示單個(gè)環(huán)境變量print ipaddr serverip# 同時(shí)顯示多個(gè)變量2.2 設(shè)置環(huán)境變量setenv- 設(shè)置或刪除環(huán)境變量setenv myvar hello# 設(shè)置簡(jiǎn)單變量setenv bootargsconsolettyS0,115200 root/dev/mmcblk0p2# 設(shè)置包含空格的值setenv myvar# 刪除變量不提供值2.3 保存與恢復(fù)saveenv/save- 保存環(huán)境變量saveenv# 功能: 將當(dāng)前環(huán)境變量保存到持久存儲(chǔ)Flash/MMC# 輸出: Saving Environment to MMC... Writing to MMC(0)... doneenv default- 恢復(fù)默認(rèn)環(huán)境變量envdefault -a# 恢復(fù)所有默認(rèn)值但不保存envdefault -f -a# 強(qiáng)制恢復(fù)所有默認(rèn)值envdefault bootcmd# 僅恢復(fù)指定變量的默認(rèn)值eraseenv- 擦除環(huán)境變量eraseenv# 從持久存儲(chǔ)擦除環(huán)境變量# 功能: 清除保存的環(huán)境變量下次啟動(dòng)將使用默認(rèn)值# 警告: 不可恢復(fù)操作# 應(yīng)用: 重置配置到出廠狀態(tài)2.4 導(dǎo)入與導(dǎo)出env export- 導(dǎo)出環(huán)境變量envexport-t 0x82000000# 以文本格式導(dǎo)出到內(nèi)存envexport-b 0x82000000 0x1000# 以二進(jìn)制格式導(dǎo)出env import- 導(dǎo)入環(huán)境變量envimport-t 0x82000000# 從文本格式導(dǎo)入envimport-d 0x82000000# 導(dǎo)入前先刪除現(xiàn)有變量2.5 高級(jí)編輯editenv- 交互式編輯環(huán)境變量editenv bootargs# 功能: 打開(kāi)類似 vi 的編輯器編輯 bootargs 變量# 操作: 使用方向鍵移動(dòng)Backspace 刪除Enter 確認(rèn)askenv- 交互式輸入環(huán)境變量askenv ipaddrPlease enter IP address:# 功能: 提示用戶輸入 IP 地址并保存到 ipaddr 變量2.6 Shell 變量操作showvar- 顯示本地 shell 變量showvar# 顯示所有本地變量# 功能: 顯示在 hush shell 中定義的局部變量# 區(qū)別: 與 printenv 不同這些變量不會(huì)被保存# 應(yīng)用: 查看腳本中的臨時(shí)變量# 實(shí)際應(yīng)用腳本調(diào)試foriin012;doechoi ${i}doneshowvar# 查看循環(huán)變量三、內(nèi)存操作3.1 內(nèi)存顯示md- 顯示內(nèi)存內(nèi)容Memory Displaymd 0x80000000# 顯示從該地址開(kāi)始的內(nèi)存默認(rèn)顯示 64 字節(jié)md.b 0x8000000010# 按字節(jié)顯示 16 字節(jié)md.w 0x800000008# 按 word 顯示 8 個(gè) word16 bytesmd.l 0x800000004# 按 long 顯示 4 個(gè) long16 bytesmd.q 0x800000002# 按 quad 顯示 2 個(gè) quad16 bytes3.2 內(nèi)存修改mm- 交互式修改內(nèi)存Memory Modifymm 0x80000000# 功能: 進(jìn)入交互式內(nèi)存修改模式# 操作流程:# 80000000: d00dfeed ? 12345678 # 輸入新值# 80000004: 00000338 ? . # 輸入 . 退出nm- 持續(xù)修改內(nèi)存Non-incremental Memory modifynm 0x80000000# 功能: 修改同一地址的內(nèi)存# 地址不變繼續(xù)修改同一位置mw- 批量寫入內(nèi)存Memory Writemw 0x80000000 0x12345678# 向該地址寫入一個(gè)值mw 0x80000000 0xAABBCCDD10# 寫入 10 個(gè)相同的值mw.b 0x80000000 0xFF100# 寫入 100 個(gè)字節(jié)3.3 內(nèi)存復(fù)制與比較cp- 復(fù)制內(nèi)存Copy Memorycp.b 0x80000000 0x81000000 0x1000# 復(fù)制 4KB 字節(jié)cp.l 0x80000000 0x82000000 0x400# 復(fù)制 4KB按 longcp0x80000000 0x83000000 0x1000# 默認(rèn)按 long 復(fù)制cmp- 比較內(nèi)存Compare Memorycmp0x80000000 0x81000000 0x100# 比較 256 字節(jié)# 輸出成功: Total of 64 word(s) were the same# 輸出失敗: word at 0x80000010 (0x12345678) ! word at 0x81000010 (0xabcdefab)cmp.b 0x80000000 0x81000000100# 按字節(jié)比較3.4 內(nèi)存測(cè)試與校驗(yàn)crc32- 計(jì)算 CRC32 校驗(yàn)和crc32 0x80000000 0x100000# 計(jì)算 1MB 數(shù)據(jù)的 CRC32# 輸出: CRC32 for 80000000 ... 800fffff 1234abcdcrc32 0x80000000 0x100000 0x82000000# 將結(jié)果保存到指定地址mtest- 內(nèi)存測(cè)試Memory Testmtest 0x80000000 0x90000000# 測(cè)試 256MB 內(nèi)存# 功能: 執(zhí)行全面的內(nèi)存測(cè)試包括# - 寫入測(cè)試模式# - 讀取并驗(yàn)證# - 位翻轉(zhuǎn)測(cè)試# - 地址線測(cè)試# 注意: 會(huì)破壞測(cè)試區(qū)域的數(shù)據(jù)測(cè)試時(shí)間較長(zhǎng)mtest 0x80000000 0x90000000 0x55555555# 使用指定模式mtest 0x80000000 0x81000000 0xAAAAAAAA10# 測(cè)試 10 次迭代loop- 循環(huán)讀取內(nèi)存測(cè)試loop 0x80000000 0x1000# 無(wú)限循環(huán)讀取 4KB# 功能: 持續(xù)讀取指定內(nèi)存區(qū)域# 輸出: 無(wú)輸出按 CtrlC 停止# 用途: 配合示波器或邏輯分析儀觀察信號(hào)loop 0x80000000 0x100100# 每次讀取延遲 100usloopw- 循環(huán)寫入內(nèi)存測(cè)試loopw 0x80000000 0x100 0xDEADBEEF# 循環(huán)寫入測(cè)試數(shù)據(jù)# 功能: 持續(xù)向指定地址寫入數(shù)據(jù)# 警告: 會(huì)持續(xù)覆蓋數(shù)據(jù)小心使用3.5 其他內(nèi)存操作base- 設(shè)置基地址base# 顯示當(dāng)前基地址# 輸出: Base Address: 0x00000000 (默認(rèn))base 0x80000000# 設(shè)置基地址# 功能: 后續(xù)內(nèi)存命令可使用相對(duì)地址# 示例: 設(shè)置后md 100 實(shí)際訪問(wèn) 0x80000100四、存儲(chǔ)設(shè)備操作4.1 MMC/SD 卡操作mmc list- 列出 MMC 設(shè)備mmc list# 輸出示例:# FSL_SDHC: 0 (SD)# FSL_SDHC: 1 (eMMC)mmc info/mmcinfo- 顯示 MMC 信息mmc info# 輸出示例:# Device: FSL_SDHC# Manufacturer ID: 3# Capacity: 14.8 GiB# Bus Width: 4-bitmmcinfo# mmc info 的別名mmc dev- 選擇 MMC 設(shè)備mmc dev0# 選擇 MMC 設(shè)備 0通常是 SD 卡mmc dev1# 切換到 eMMC如果有mmc dev01# 選擇設(shè)備 0 的分區(qū) 1mmc rescan- 重新掃描 MMCmmc rescan# 功能: 重新檢測(cè)并初始化 MMC 設(shè)備# 場(chǎng)景: 熱插拔 SD 卡后需要執(zhí)行此命令mmc part- 顯示分區(qū)信息mmc part# 輸出示例:# Partition Map for MMC device 0 -- Partition Type: DOS# Part Start Sector Num Sectors UUID Type# 1 2048 131072 00000000-01 0c Boot# 2 133120 30535680 00000000-02 83mmc read- 從 MMC 讀取數(shù)據(jù)mmcread0x80000000 0x800 0x1000# 讀取數(shù)據(jù)到內(nèi)存# 參數(shù)說(shuō)明:# 0x80000000: 目標(biāo)內(nèi)存地址# 0x800: 起始?jí)K號(hào)512字節(jié)/塊# 0x1000: 讀取塊數(shù)# 輸出: MMC read: dev # 0, block # 2048, count 4096 ... 4096 blocks read: OKmmc write- 寫入數(shù)據(jù)到 MMCmmcwrite0x80000000 0x800 0x1000# 從內(nèi)存寫入到 MMC# 參數(shù): 源內(nèi)存地址 目標(biāo)塊號(hào) 塊數(shù)# 警告: 寫入操作會(huì)覆蓋數(shù)據(jù)請(qǐng)謹(jǐn)慎確認(rèn)地址mmc erase- 擦除 MMC 塊mmc erase 0x1000 0x2000# 擦除從塊 0x1000 開(kāi)始的 0x2000 塊# 功能: 擦除指定范圍的數(shù)據(jù)# 警告: 不可恢復(fù)請(qǐng)確認(rèn)擦除范圍4.2 NAND Flash 操作nand info- 顯示 NAND 信息nand info# 輸出示例:# Device 0: nand0, sector size 128 KiB# Page size 2048 b# OOB size 64 b# Erase size 131072 bnand device- 選擇 NAND 設(shè)備nand device# 顯示當(dāng)前 NAND 設(shè)備nand device0# 選擇 NAND 設(shè)備 0nand read- 從 NAND 讀取nandread0x80000000 0x0 0x100000# 讀取 1MB 到內(nèi)存# 參數(shù): 內(nèi)存地址 NAND偏移地址 大小# 注意: NAND 偏移地址和大小必須頁(yè)對(duì)齊通常 2KBnand write- 寫入 NANDnandwrite0x80000000 0x100000 0x200000# 寫入 2MB# 參數(shù): 內(nèi)存地址 NAND偏移 大小# 注意: 寫入前必須先擦除nand write.trimffs- 跳過(guò) 0xFF 寫入nand write.trimffs 0x80000000 0x0 0x400000# 寫入時(shí)跳過(guò) 0xFF# 功能: 寫入數(shù)據(jù)但跳過(guò)末尾的 0xFF節(jié)省 NAND 壽命nand erase- 擦除 NANDnand erase 0x0 0x100000# 擦除從 0 開(kāi)始的 1MBnand erase.part kernel# 擦除整個(gè)分區(qū)nand erase.chip# 擦除整個(gè) NAND Flash危險(xiǎn)nand bad- 顯示壞塊nand bad# 輸出示例:# Device 0 bad blocks:# 0x02000000# 0x04200000nand scrub- 強(qiáng)制擦除危險(xiǎn)nand scrub 0x0 0x100000# 提示確認(rèn)# 警告: 會(huì)擦除包括壞塊標(biāo)記在內(nèi)的所有數(shù)據(jù)# 用途: 僅用于芯片級(jí)恢復(fù)或測(cè)試nand scrub -y 0x0 0x100000# 不提示直接擦除nand markbad- 標(biāo)記壞塊nand markbad 0x02000000# 手動(dòng)標(biāo)記壞塊# 功能: 將指定塊標(biāo)記為壞塊nand dump- 轉(zhuǎn)儲(chǔ)頁(yè)數(shù)據(jù)nand dump 0x0# 轉(zhuǎn)儲(chǔ)第一頁(yè)數(shù)據(jù)# 輸出: 顯示頁(yè)數(shù)據(jù)和 OOBspare區(qū)域的十六進(jìn)制內(nèi)容4.3 SPI Flash 操作sf probe- 初始化 SPI Flashsf probe# 自動(dòng)檢測(cè) SPI Flash# 輸出示例:# SF: Detected W25Q128BV with page size 256 Bytes, erase size 4 KiB, total 16 MiBsf probe0:0500000000# 指定參數(shù)# 參數(shù): [總線:片選] [頻率Hz] [模式]sf read- 讀取 SPI Flashsfread0x80000000 0x0 0x100000# 讀取 1MB 到內(nèi)存# 參數(shù): 內(nèi)存地址 Flash偏移 大小# 輸出: SF: 1048576 bytes 0x0 Read: OKsf write- 寫入 SPI Flash# 注意寫入前必須先擦除sf erase 0x100000 0x100000# 1. 先擦除sfwrite0x80000000 0x100000 0x100000# 2. 再寫入# 參數(shù): 內(nèi)存地址 Flash偏移 大小sf erase- 擦除 SPI Flashsf erase 0x0 0x10000# 擦除從 0 開(kāi)始的 64KB# 注意: 擦除大小必須是擦除塊大小的倍數(shù)sf erase 0x0 0x80000# 使用 號(hào)指定長(zhǎng)度自動(dòng)對(duì)齊sf update- 智能更新 SPI Flashsf update 0x80000000 0x100000 0x80000# 智能更新# 功能:# 1. 比較內(nèi)存和 Flash 內(nèi)容# 2. 僅擦除和寫入有變化的塊# 3. 節(jié)省時(shí)間和 Flash 壽命sf test- 測(cè)試 SPI Flashsftest0x100000 0x10000# 測(cè)試 64KB# 功能: 執(zhí)行讀寫測(cè)試驗(yàn)證 Flash 功能# 警告: 會(huì)破壞測(cè)試區(qū)域的數(shù)據(jù)4.4 USB 存儲(chǔ)操作usb start- 啟動(dòng) USB 子系統(tǒng)usb start# 功能: 初始化 USB 控制器并掃描設(shè)備# 輸出示例:# starting USB...# USB0: USB EHCI 1.00# scanning bus 0 for devices... 3 USB Device(s) found# scanning usb for storage devices... 1 Storage Device(s) foundusb tree- 顯示 USB 設(shè)備樹(shù)usb tree# 輸出示例:# USB device tree:# 1 Hub (480 Mb/s, 0mA)# | u-boot EHCI Host Controller# |# -2 Mass Storage (480 Mb/s, 200mA)# SanDisk Cruzer Bladeusb storage- 顯示存儲(chǔ)設(shè)備usb storage# 輸出示例:# Device 0: Vendor: SanDisk Rev: 1.00 Prod: Cruzer Blade# Type: Removable Hard Disk# Capacity: 30528.0 MB 29.8 GBusb read- 從 USB 讀取usb dev0# 1. 選擇 USB 設(shè)備usb part# 2. 查看分區(qū)usbread0x80000000 0x800 0x1000# 3. 讀取數(shù)據(jù)# 參數(shù): 內(nèi)存地址 起始?jí)K 塊數(shù)usbboot- 從 USB 設(shè)備啟動(dòng)usbboot 0x800000000:1 zImage# 從 USB 加載并啟動(dòng)# 參數(shù): 內(nèi)存地址 設(shè)備:分區(qū) 文件名# 功能: 結(jié)合了 usb storage fatload boot 的功能# 應(yīng)用: 快速?gòu)?USB 啟動(dòng)系統(tǒng)4.5 SATA 操作sata init- 初始化 SATAsata init# 輸出示例:# AHCI 0001.0300 32 slots 2 ports 6 Gbps 0x3 impl SATA mode# scanning bus for devices...# Device 0: (0:0) Vendor: ATA Prod.: Samsung SSD 850# Capacity: 238475.1 MB 232.9 GBsata read/sata write- SATA 讀寫sataread0x80000000 0x0 0x1000# 讀取數(shù)據(jù)satawrite0x80000000 0x800 0x1000# 寫入數(shù)據(jù)# 用法與 mmc read/write 類似4.6 塊緩存管理blkcache- 塊緩存診斷和控制blkcache show# 顯示塊緩存統(tǒng)計(jì)信息# 輸出示例:# hits: 1234# misses: 5678# entries: 10# max entries: 32blkcache configure blocks entries# 配置緩存# 參數(shù): 塊數(shù) 條目數(shù)# 示例: blkcache configure 32 64blkcacheclear# 清空緩存# 功能: 清除所有緩存數(shù)據(jù)# 應(yīng)用: 測(cè)試性能或排查問(wèn)題時(shí)使用五、文件系統(tǒng)操作5.1 FAT 文件系統(tǒng)fatls- 列出文件fatls mmc0:1# 列出 MMC0 分區(qū)1 根目錄# 輸出示例:# 131072 uImage# 32768 am335x-boneblack.dtb# 512 boot.scrfatls mmc0:1 /boot# 列出 /boot 目錄fatls usb0:1# 列出 USB 設(shè)備fatload- 加載文件到內(nèi)存fatload mmc0:1 0x80000000 zImage# 加載內(nèi)核到內(nèi)存# 參數(shù): 接口 設(shè)備:分區(qū) 內(nèi)存地址 文件名# 輸出: reading zImage# 6291456 bytes read in 245 ms (24.5 MiB/s)fatload mmc0:1${kernel_addr_r}zImage# 使用變量fatload mmc0:1 0x82000000 dtb 0x4000# 僅加載前 16KBfatsize- 獲取文件大小fatsize mmc0:1 zImage# 獲取文件大小# 輸出: 6291456# 功能: 文件大小保存到環(huán)境變量 filesizefatwrite- 寫入文件tftp 0x80000000 newfile.bin# 1. 準(zhǔn)備數(shù)據(jù)fatwrite mmc0:1 0x80000000 newfile.bin${filesize}# 2. 寫入# 參數(shù): 接口 設(shè)備:分區(qū) 內(nèi)存地址 文件名 大小fatrm- 刪除文件fatrm mmc0:1 oldfile.bin# 刪除文件# 輸出: oldfile.bin: deletedfatmkdir- 創(chuàng)建目錄fatmkdir mmc0:1 /logs# 創(chuàng)建目錄# 輸出: logs: createdfatinfo- 顯示文件系統(tǒng)信息fatinfo mmc0:1# 輸出示例:# FAT type: FAT32# OEM name: mkfs.fat# Volume label: BOOT# Total sectors: 131072# Free sectors: 1003525.2 EXT 文件系統(tǒng)ext2ls/ext2load- EXT2 文件系統(tǒng)操作ext2ls mmc0:2 /# 列出 EXT2 分區(qū)根目錄# 功能: 與 ext4ls 類似但用于 EXT2 文件系統(tǒng)ext2load mmc0:2 0x80000000 /boot/zImage# 加載 EXT2 文件# 參數(shù): 接口 設(shè)備:分區(qū) 內(nèi)存地址 文件路徑# 應(yīng)用: 從 EXT2 格式的分區(qū)加載文件ext4ls- 列出 EXT4 文件ext4ls mmc0:2 /# 列出根目錄# 輸出示例:# DIR 4096 .# DIR 4096 ..# DIR 4096 bin# DIR 4096 bootext4ls mmc0:2 /boot# 列出子目錄ext4load- 加載 EXT4 文件ext4load mmc0:2 0x80000000 /boot/zImage# 加載內(nèi)核# 參數(shù): 接口 設(shè)備:分區(qū) 內(nèi)存地址 文件路徑# 輸出: 6291456 bytes read in 320 ms (18.7 MiB/s)ext4size- 獲取文件大小ext4size mmc0:2 /boot/zImage# 獲取文件大小# 輸出: 6291456# 功能: 文件大小保存到 filesize 變量ext4write- 寫入 EXT4 文件ext4write mmc0:2 0x80000000 /boot/config.txt 0x1000# 參數(shù): 接口 設(shè)備:分區(qū) 內(nèi)存地址 文件路徑 大小# 警告: EXT4 寫入支持有限建議在 Linux 下操作5.3 UBIFS 文件系統(tǒng)ubifsmount- 掛載 UBIFS 卷ubi part rootfs# 1. 掛載 UBI 分區(qū)ubifsmount ubi0:rootfs# 2. 掛載 UBIFS 卷# 輸出: UBIFS: mounted UBI device 0, volume 0, name rootfsubifsls- 列出 UBIFS 文件ubifsls# 列出根目錄# 輸出示例:# DIR 232 bin# DIR 232 bootubifsls /etc# 列出子目錄ubifsload- 加載 UBIFS 文件ubifsload 0x80000000 /boot/zImage# 加載文件# 輸出: Loading file /boot/zImage to addr 0x80000000...# Doneubifumount- 卸載 UBIFSubifumount# 卸載當(dāng)前掛載的 UBIFS# 輸出: Unmounting UBIFS volume rootfs!5.4 通用文件系統(tǒng)操作ls- 列出文件通用lsmmc0:1 /# 自動(dòng)檢測(cè)文件系統(tǒng)類型并列出文件# 功能: 通用的文件列表命令支持 FAT/EXT2/EXT4# 優(yōu)勢(shì): 無(wú)需知道具體文件系統(tǒng)類型lsusb0:1 /bootload- 加載文件通用load mmc0:1 0x80000000 zImage# 自動(dòng)檢測(cè)文件系統(tǒng)并加載# 參數(shù): 接口 設(shè)備:分區(qū) 內(nèi)存地址 文件名# 功能: 智能識(shí)別 FAT/EXT2/EXT4 并加載文件# 推薦: 優(yōu)先使用 load 而不是 fatload/ext4load# 實(shí)際應(yīng)用通用啟動(dòng)腳本load mmc0:1${kernel_addr_r}zImage load mmc0:1${fdt_addr_r}dtb bootz${kernel_addr_r}-${fdt_addr_r}save- 保存文件通用save mmc0:1 0x80000000 newfile.bin 0x1000# 自動(dòng)檢測(cè)文件系統(tǒng)并保存# 參數(shù): 接口 設(shè)備:分區(qū) 內(nèi)存地址 文件名 大小# 功能: 智能識(shí)別文件系統(tǒng)類型size- 獲取文件大小通用size mmc0:1 zImage# 獲取文件大小# 輸出: 6291456# 功能: 自動(dòng)檢測(cè)文件系統(tǒng)獲取文件大小# 變量: 大小保存到 filesize 環(huán)境變量fstype- 查詢文件系統(tǒng)類型fstype mmc0:1# 檢測(cè)分區(qū)的文件系統(tǒng)類型# 輸出示例:# fat# 或 ext4# 或 unknown# 實(shí)際應(yīng)用條件加載fstype mmc0:1iftest$?-eq0;thenechoFilesystem detected:${fstype}load mmc0:1${kernel_addr_r}zImagefifstypes- 列出支持的文件系統(tǒng)類型fstypes# 顯示所有支持的文件系統(tǒng)# 輸出示例:# Supported filesystems:# fat# ext2# ext4# ubifs# btrfs# 用途: 查看當(dāng)前 U-Boot 編譯時(shí)包含的文件系統(tǒng)支持ln- 創(chuàng)建符號(hào)鏈接lnmmc0:1 /bin/busybox /bin/sh# 創(chuàng)建符號(hào)鏈接# 參數(shù): 接口 設(shè)備:分區(qū) 目標(biāo)文件 鏈接名# 功能: 在文件系統(tǒng)中創(chuàng)建符號(hào)鏈接# 注意: 僅支持特定文件系統(tǒng)如 EXT4六、網(wǎng)絡(luò)操作6.1 網(wǎng)絡(luò)基礎(chǔ)ping- 測(cè)試網(wǎng)絡(luò)連接ping192.168.1.100# Ping 服務(wù)器# 輸出成功: host 192.168.1.100 is alive# 輸出失敗: ping failed; host 192.168.1.100 is not alivenet- 網(wǎng)絡(luò)子系統(tǒng)管理net list# 列出網(wǎng)絡(luò)接口# 輸出示例:# eth0: ethernet4a100000 active# eth1: ethernet4a110000 inactivenet stats# 顯示網(wǎng)絡(luò)統(tǒng)計(jì)# 輸出: 發(fā)送/接收的包數(shù)量、錯(cuò)誤統(tǒng)計(jì)等6.2 文件傳輸tftp/tftpboot- TFTP 下載tftp 0x80000000 zImage# 下載到指定地址# 輸出示例:# Using ethernet4a100000 device# TFTP from server 192.168.1.100; our IP address is 192.168.1.10# Filename zImage.# Loading: ###################################################### 6.3 MiB/s# done# Bytes transferred 6291456 (600000 hex)tftpboot 0x80000000 zImage# 與 tftp 相同tftpboot${kernel_addr_r}${bootfile}# 使用變量tftpput- TFTP 上傳md 0x80000000log.txt# 準(zhǔn)備數(shù)據(jù)tftpput 0x80000000 0x1000 bootlog.txt# 上傳到服務(wù)器# 參數(shù): 內(nèi)存地址 大小 服務(wù)器端文件名dhcp- DHCP 獲取 IPdhcp# 自動(dòng)獲取 IP# 輸出示例:# BOOTP broadcast 1# DHCP client bound to address 192.168.1.50 (123 ms)dhcp 0x80000000 zImage# DHCP 下載文件# 功能: 獲取 IP 后自動(dòng)下載指定文件bootp- BOOTP 協(xié)議啟動(dòng)bootp# 使用 BOOTP 協(xié)議獲取 IP# 功能: 類似 DHCP但使用更簡(jiǎn)單的 BOOTP 協(xié)議# 應(yīng)用: 早期網(wǎng)絡(luò)啟動(dòng)協(xié)議現(xiàn)在多用 DHCPbootp 0x80000000# BOOTP 并下載文件# 輸出: 獲取 IP 并自動(dòng)下載 bootfile 指定的文件nfs- NFS 加載文件nfs 0x80000000192.168.1.100:/srv/nfs/zImage# NFS 加載# 參數(shù): 內(nèi)存地址 服務(wù)器IP:路徑# 輸出: File transfer via NFS from server 192.168.1.1006.3 網(wǎng)絡(luò)配置mii- MII 接口操作PHY 配置mii device# 顯示當(dāng)前 MII 設(shè)備mii info# 顯示 PHY 信息# 輸出示例:# PHY 0x00: OUI 0x0000, Model 0x00, Rev 0x00, 100baseT, FDXmiiread00# 讀取 PHY 寄存器miiwrite000x8000# 寫入 PHY 寄存器mii dump00# 轉(zhuǎn)儲(chǔ) PHY 寄存器mdio- MDIO 工具命令mdio list# 列出 MDIO 總線# 輸出示例:# eth0: ethernet4a100000# eth1: ethernet4a110000mdioreadethernet4a10000000# 讀取 MDIO 寄存器# 參數(shù): 總線名稱 PHY地址 寄存器地址# 輸出: 0x1000 # 寄存器值mdiowriteethernet4a100000000x8000# 寫入 MDIO 寄存器# 功能: 向 PHY 芯片寫入控制寄存器# 應(yīng)用: 配置網(wǎng)絡(luò) PHY 參數(shù)6.4 時(shí)間同步sntp- 通過(guò)網(wǎng)絡(luò)同步 RTCsntp# 使用 NTP 服務(wù)器同步時(shí)間# 功能: 從 NTP 服務(wù)器獲取當(dāng)前時(shí)間并設(shè)置系統(tǒng)時(shí)鐘# 前提: 需要先配置 IP 地址和 NTP 服務(wù)器setenv ntpserverip192.168.1.1# 設(shè)置 NTP 服務(wù)器sntp# 同步時(shí)間# 輸出: SNTP: Time: 2023-10-15 10:23:45七、系統(tǒng)啟動(dòng)7.1 啟動(dòng)內(nèi)核boot- 執(zhí)行默認(rèn)啟動(dòng)boot# 執(zhí)行 bootcmd 環(huán)境變量# 功能: 等同于 run bootcmdbootd- 執(zhí)行 bootcmdbootd# 直接執(zhí)行 bootcmd# 功能: 與 boot 命令相同bootz- 啟動(dòng) zImage 內(nèi)核bootz 0x80000000# 僅內(nèi)核無(wú)設(shè)備樹(shù)bootz 0x80000000 - 0x83000000# 內(nèi)核 設(shè)備樹(shù)bootz 0x80000000 0x88000000 0x83000000# 內(nèi)核 ramdisk 設(shè)備樹(shù)# 完整啟動(dòng)示例setenv bootargsconsolettyS0,115200 root/dev/mmcblk0p2 rootwait rwfatload mmc0:1 0x80000000 zImage fatload mmc0:1 0x83000000 am335x-boneblack.dtb bootz 0x80000000 - 0x83000000bootm- 啟動(dòng) uImage 內(nèi)核bootm 0x80000000# 啟動(dòng) uImage 格式內(nèi)核bootm 0x80000000 0x88000000 0x83000000# uImage ramdisk 設(shè)備樹(shù)bootm 0x80000000#conf-1 # 使用 FIT 鏡像的配置1booti- 啟動(dòng) ARM64 Image 內(nèi)核booti 0x80000000 - 0x83000000# ARM64 內(nèi)核啟動(dòng)# 適用: ARM64 (aarch64) 架構(gòu)# 格式: Image 格式無(wú)壓縮無(wú)頭部go- 跳轉(zhuǎn)執(zhí)行g(shù)o 0x80000000# 跳轉(zhuǎn)到地址執(zhí)行# 功能: 直接跳轉(zhuǎn)到指定地址傳遞控制權(quán)# 用途: 執(zhí)行裸機(jī)程序或自定義代碼go 0x80000000 arg1 arg2# 帶參數(shù)跳轉(zhuǎn)7.2 其他啟動(dòng)命令bootelf- 啟動(dòng) ELF 文件bootelf 0x80000000# 啟動(dòng) ELF 格式程序# 適用: 調(diào)試場(chǎng)景ELF 格式包含符號(hào)信息bootelf -p 0x80000000# 加載但不執(zhí)行# 參數(shù): -p 僅加載到內(nèi)存bootvx- 啟動(dòng) VxWorksbootvx 0x80000000# 從 ELF 鏡像啟動(dòng) VxWorks# 功能: 啟動(dòng) VxWorks 實(shí)時(shí)操作系統(tǒng)# 參數(shù): 內(nèi)存地址VxWorks 鏡像位置# 應(yīng)用: 嵌入式實(shí)時(shí)系統(tǒng)開(kāi)發(fā)# 實(shí)際應(yīng)用加載并啟動(dòng) VxWorkstftp 0x80000000 vxWorks bootvx 0x80000000bootaux- 啟動(dòng)輔助核心bootaux 0x80000000# 啟動(dòng)協(xié)處理器/輔助 CPU# 功能: 啟動(dòng)多核系統(tǒng)中的輔助處理器# 應(yīng)用: i.MX 系列的 Cortex-M4 核心啟動(dòng)# 示例: 在 i.MX7D 上啟動(dòng) M4 核心# 實(shí)際應(yīng)用加載 M4 固件并啟動(dòng)fatload mmc0:1 0x80000000 m4_firmware.bin bootaux 0x80000000loadm7- 加載 Cortex-M7 固件loadm7 0x80000000# 加載 Cortex-M7 處理器固件# 功能: 特定于某些 SoC如 i.MX8M的 M7 核心固件加載# 應(yīng)用: 異構(gòu)多核系統(tǒng)開(kāi)發(fā)reset- 系統(tǒng)復(fù)位reset# 硬件復(fù)位# 功能: 重啟系統(tǒng)# 等同: 按下復(fù)位按鈕poweroff- 關(guān)機(jī)poweroff# 系統(tǒng)關(guān)機(jī)# 功能: 關(guān)閉電源如果硬件支持panic- 系統(tǒng)恐慌panic# 觸發(fā)系統(tǒng) panic# 功能: 立即停止系統(tǒng)執(zhí)行# 用途: 測(cè)試錯(cuò)誤處理機(jī)制panicSystem error detected# 帶消息的 panic# 輸出: panic: System error detectedexit- 退出腳本exit# 退出當(dāng)前腳本# 功能: 終止腳本執(zhí)行# 應(yīng)用: 在腳本中遇到錯(cuò)誤時(shí)提前退出# 實(shí)際應(yīng)用錯(cuò)誤處理iffatload mmc0:1${kernel_addr_r}zImage;thenechoKernel loadedelseechoFailed to load kernelexitfi7.3 腳本執(zhí)行source- 執(zhí)行腳本fatload mmc0:1 0x82000000 boot.scrsource0x82000000# 執(zhí)行腳本# 輸出: ## Executing script at 82000000source0x82000000 arg1 arg2# 帶參數(shù)執(zhí)行run- 運(yùn)行環(huán)境變量命令run bootcmd# 執(zhí)行 bootcmd 變量中的命令# 功能: 運(yùn)行環(huán)境變量中定義的命令序列# 應(yīng)用: 模塊化啟動(dòng)流程# 實(shí)際應(yīng)用定義啟動(dòng)步驟setenv load_kernelfatload mmc 0:1${kernel_addr_r}zImagesetenv load_dtbfatload mmc 0:1${fdt_addr_r}dtbsetenv boot_kernelbootz${kernel_addr_r}-${fdt_addr_r}setenv bootcmdrun load_kernel; run load_dtb; run boot_kernel7.4 引導(dǎo)管理bootflow- 啟動(dòng)流程管理bootflow scan# 掃描可用的啟動(dòng)流程# 功能: 自動(dòng)掃描并列出所有可用的啟動(dòng)選項(xiàng)# 輸出示例:# Seq Method State Uclass Part Name Filename# --- ----------- ------ -------- ---- ------------------------ ----------------# 0 extlinux ready mmc 1 mmcfe320000.bootdev.par /extlinux/extlinux.conf# 1 efi ready mmc 1 mmcfe320000.bootdev.par efi/boot/bootaa64.efibootflow list# 列出掃描到的啟動(dòng)流程bootflowselect0# 選擇啟動(dòng)流程 0bootflow boot# 執(zhí)行選定的啟動(dòng)流程pxe- PXE 網(wǎng)絡(luò)啟動(dòng)pxe get# 通過(guò) PXE 獲取配置# 功能: 從 PXE 服務(wù)器下載啟動(dòng)配置文件# 應(yīng)用: 網(wǎng)絡(luò)批量部署pxe boot# 執(zhí)行 PXE 啟動(dòng)# 流程: get - 解析配置 - 下載內(nèi)核/initrd - 啟動(dòng)# 完整 PXE 啟動(dòng)示例dhcp# 獲取 IPpxe get# 獲取 PXE 配置pxe boot# 啟動(dòng)系統(tǒng)sysboot- Syslinux 啟動(dòng)sysboot mmc0:1 any${scriptaddr}/extlinux/extlinux.conf# 參數(shù):# mmc 0:1: 設(shè)備和分區(qū)# any: 文件系統(tǒng)類型any自動(dòng)檢測(cè)# ${scriptaddr}: 加載地址# /extlinux/extlinux.conf: 配置文件路徑# 功能: 從 syslinux/extlinux 配置啟動(dòng)# 應(yīng)用: 標(biāo)準(zhǔn) Linux 發(fā)行版啟動(dòng)八、設(shè)備樹(shù)操作8.1 設(shè)備樹(shù)基礎(chǔ)fdt addr- 設(shè)置設(shè)備樹(shù)地址fdt addr 0x83000000# 設(shè)置 FDT 工作地址fdt addr 0x83000000 0x10000# 指定大小fdt print- 打印設(shè)備樹(shù)節(jié)點(diǎn)fdt print /# 打印根節(jié)點(diǎn)fdt print /chosen# 打印 chosen 節(jié)點(diǎn)fdt print /memory# 打印內(nèi)存節(jié)點(diǎn)fdt print /soc/ethernet4a100000 reg# 打印特定屬性fdt list- 列出子節(jié)點(diǎn)fdt list /# 列出根節(jié)點(diǎn)的子節(jié)點(diǎn)fdt list /soc# 列出 SOC 節(jié)點(diǎn)的子節(jié)點(diǎn)8.2 設(shè)備樹(shù)修改fdt set- 設(shè)置屬性fdtset/chosen bootargsconsolettyS0,115200 root/dev/mmcblk0p2fdtset/memory reg0x80000000 0x20000000fdt mknode- 創(chuàng)建節(jié)點(diǎn)fdt mknode / testnode# 在根節(jié)點(diǎn)下創(chuàng)建子節(jié)點(diǎn)fdt mknode /testnode subnode# 創(chuàng)建子節(jié)點(diǎn)的子節(jié)點(diǎn)fdt rm- 刪除節(jié)點(diǎn)或?qū)傩詅dtrm/testnode# 刪除整個(gè)節(jié)點(diǎn)fdtrm/chosen bootargs# 僅刪除屬性8.3 設(shè)備樹(shù)管理fdt move- 移動(dòng)設(shè)備樹(shù)fdt move 0x83000000 0x84000000# 移動(dòng)設(shè)備樹(shù)到新地址fdt resize- 調(diào)整設(shè)備樹(shù)大小fdt resize 0x2000# 增加 8KB 空間fdt header- 顯示設(shè)備樹(shù)頭fdt header# 輸出示例:# magic: 0xd00dfeed# totalsize: 0x3000 (12288)8.4 高級(jí)設(shè)備樹(shù)操作fdt chosen- 設(shè)置 chosen 節(jié)點(diǎn)fdt chosen 0x88000000 0x88800000# 設(shè)置 initrd 范圍fdt memory- 設(shè)置內(nèi)存節(jié)點(diǎn)fdt memory 0x80000000 0x20000000# 設(shè)置 512MB 內(nèi)存fdt rsvmem- 保留內(nèi)存管理fdt rsvmem print# 顯示保留內(nèi)存區(qū)域fdt rsvmemadd0x90000000 0x100000# 添加保留區(qū)域fdt rsvmem delete0# 刪除保留區(qū)域九、總線與接口9.1 I2C 操作i2c bus- I2C 總線管理i2c bus# 顯示所有 I2C 總線i2c dev0# 選擇 I2C 總線 0i2c speed- 設(shè)置 I2C 速度i2c speed# 顯示當(dāng)前速度i2c speed400000# 設(shè)置為 400KHzi2c probe- 探測(cè) I2C 設(shè)備i2c probe# 掃描當(dāng)前總線上的設(shè)備i2c read- 讀取 I2C 設(shè)備i2cread0x50 0x0010x82000000 0x10# 讀取 EEPROMi2c write- 寫入 I2C 設(shè)備mw.b 0x82000000 0xAA16# 準(zhǔn)備數(shù)據(jù)i2cwrite0x82000000 0x50 0x0010x10# 寫入i2c md- 顯示 I2C 設(shè)備內(nèi)容i2c md 0x50 0x0010# 顯示 EEPROM 內(nèi)容i2c mm- 交互式修改 I2Ci2c mm 0x50 0x00.1# 交互式修改 EEPROMi2c mw- 寫入 I2C 寄存器i2c mw 0x68 0x00 0x12# 寫入單個(gè)字節(jié)到 RTCi2c crc32- 計(jì)算 I2C 數(shù)據(jù) CRC32i2c crc32 0x50 0x00.1 0x100# 計(jì)算 EEPROM 的 CRC329.2 GPIO 操作gpio status- 顯示 GPIO 狀態(tài)gpio status# 顯示所有 GPIO 狀態(tài)gpio status -a# 顯示所有 GPIO包括未使用的gpio status gpio0_2# 顯示特定 GPIOgpio set/gpio clear- 設(shè)置 GPIOgpiosetgpio0_1# 設(shè)置為高電平gpiocleargpio0_1# 設(shè)置為低電平gpio toggle- 翻轉(zhuǎn) GPIOgpio toggle gpio0_1# 翻轉(zhuǎn) GPIO 狀態(tài)gpio input- 設(shè)置為輸入模式gpio input gpio0_2# 設(shè)置為輸入gpio read- 讀取 GPIO 值gpioreadgpio0_2# 讀取 GPIO 電平9.3 SPI 操作sspi- SPI 數(shù)據(jù)傳輸sspi0:080xFF# SPI 傳輸單字節(jié)sspi0:0320x12345678# 傳輸 32 位數(shù)據(jù)9.4 其他接口pinmux- 引腳復(fù)用配置pinmux status# 顯示引腳復(fù)用狀態(tài)# 輸出示例:# Pin 0: gpio0_0 (GPIO)# Pin 1: gpio0_1 (GPIO, output)# Pin 2: uart0_tx (UART)pinmux dev# 列出引腳控制器設(shè)備# 功能: 顯示系統(tǒng)中的引腳控制器# 應(yīng)用: 調(diào)試引腳配置問(wèn)題查看引腳當(dāng)前功能led- LED 控制led list# 列出所有 LED# 輸出示例:# led-red (GPIO)# led-green (GPIO)# led-blue (GPIO)led led-red on# 打開(kāi) LEDled led-red off# 關(guān)閉 LEDled led-red toggle# 切換 LED 狀態(tài)led led-red blink# LED 閃爍# 功能: 讓 LED 以默認(rèn)頻率閃爍# 實(shí)際應(yīng)用狀態(tài)指示led led-red on# 啟動(dòng)時(shí)亮紅燈sleep2led led-red off led led-green on# 啟動(dòng)成功亮綠燈十、高級(jí)功能10.1 鏡像操作iminfo- 顯示鏡像信息iminfo 0x80000000# 顯示鏡像頭信息# uImage 輸出示例:# Legacy image found# Image Name: Linux-5.10.0# Data Size: 6291456 Bytes# FIT 鏡像輸出示例:# FIT image found# FIT description: Kernel, FDT, Ramdiskimxtract- 提取鏡像組件imxtract 0x80000000 kernel 0x81000000# 提取內(nèi)核imxtract 0x80000000 fdt 0x83000000# 提取設(shè)備樹(shù)imxtract 0x80000000 ramdisk 0x88000000# 提取 ramdisk10.2 UBI/UBIFS 操作ubi part- 掛載 UBI 分區(qū)ubi part rootfs# 掛載名為 rootfs 的 MTD 分區(qū)ubi part rootfs 0x100000# 指定偏移量掛載ubi info- 顯示 UBI 信息ubi info layout# 顯示分區(qū)布局ubi info# 顯示 UBI 設(shè)備信息ubi create- 創(chuàng)建 UBI 卷ubi create rootfs 0x8000000# 創(chuàng)建 128MB 動(dòng)態(tài)卷ubi create data 0x4000000 static# 創(chuàng)建靜態(tài)卷ubi remove- 刪除 UBI 卷ubi remove rootfs# 刪除卷ubi read- 從 UBI 卷讀取ubiread0x80000000 kernel# 讀取整個(gè)卷ubiread0x80000000 kernel 0x100000# 讀取指定大小ubi write- 寫入 UBI 卷tftp 0x80000000 kernel.img ubiwrite0x80000000 kernel${filesize}ubi write.part- 寫入 UBI 分區(qū)tftp 0x80000000 rootfs.ubifs ubi write.part 0x80000000 rootfs${filesize}10.3 分區(qū)管理part list- 列出分區(qū)part list mmc0# 列出 MMC 設(shè)備的分區(qū)part uuid- 獲取分區(qū) UUIDpart uuid mmc0:2 uuid# 獲取分區(qū) 2 的 UUIDpart start/part size- 獲取分區(qū)信息part start mmc0:1 partstart# 獲取分區(qū)起始扇區(qū)part size mmc0:1 partsize# 獲取分區(qū)大小mtdparts- MTD 分區(qū)管理mtdparts default# 加載默認(rèn) MTD 分區(qū)表mtdparts# 顯示當(dāng)前分區(qū)表gpt- GUID 分區(qū)表操作gptreadmmc0# 讀取 GPT 分區(qū)表# 輸出: GPT 分區(qū)信息gptwritemmc0$partitions# 寫入 GPT 分區(qū)表# 功能: 根據(jù) $partitions 變量創(chuàng)建 GPT 分區(qū)# 格式: namepart1,size512MiB;namepart2,size1GiBgpt verify mmc0# 驗(yàn)證 GPT 分區(qū)表# 功能: 檢查分區(qū)表完整性gpt enumerate mmc0# 枚舉分區(qū)# 功能: 遍歷所有分區(qū)并設(shè)置環(huán)境變量# 應(yīng)用: 在腳本中動(dòng)態(tài)使用分區(qū)# 實(shí)際應(yīng)用創(chuàng)建 GPT 分區(qū)setenv partitionsnameboot,size512MiB;namerootfs,size-gptwritemmc0$partitionsgpt verify mmc010.4 加密與哈希hash- 計(jì)算哈希值hashsha256 0x80000000 0x100000# 計(jì)算 SHA256hashmd5 0x80000000 0x100000# 計(jì)算 MD5hashsha1 0x80000000 0x100000# 計(jì)算 SHA1sha256sum- 計(jì)算 SHA256 校驗(yàn)和sha256sum 0x80000000 0x100000# 計(jì)算 SHA25610.5 時(shí)間與延遲date- 日期時(shí)間date# 顯示當(dāng)前日期時(shí)間# 輸出: Date: 2023-10-15 (Sunday) Time: 10:23:45date101510232023.45# 設(shè)置日期時(shí)間# 格式: MMDDhhmmYYYY.sssleep- 延遲秒sleep3# 延遲 3 秒timer- 定時(shí)器操作timer start# 啟動(dòng)定時(shí)器sleep5timer get# 獲取經(jīng)過(guò)的時(shí)間# 輸出: elapsed time: 5.123456 sectimer reset# 重置定時(shí)器gettime- 獲取定時(shí)器值gettime# 獲取當(dāng)前定時(shí)器值# 輸出: Timer val: 123456789 us# 功能: 返回微秒級(jí)時(shí)間戳# 應(yīng)用: 性能測(cè)試精確計(jì)時(shí)# 實(shí)際應(yīng)用測(cè)量操作耗時(shí)gettime# 執(zhí)行操作fatload mmc0:1${kernel_addr_r}zImage gettime# 計(jì)算差值得到加載時(shí)間time- 測(cè)量命令執(zhí)行時(shí)間timemmcread0x80000000 0x0 0x1000# 測(cè)量讀取時(shí)間# 輸出示例:# MMC read: dev # 0, block # 0, count 4096 ... 4096 blocks read: OK# time: 1.234 seconds, 3.3 MB/s# 實(shí)際應(yīng)用性能測(cè)試timefatload mmc0:1${kernel_addr_r}zImagetimetftp 0x80000000 zImage# 對(duì)比不同加載方式的性能10.6 變量運(yùn)算setexpr- 表達(dá)式計(jì)算setexpr result1020# 加法setexpr result 0x100 - 0x50# 減法setexpr result 0x10\* 0x2# 乘法* 需要轉(zhuǎn)義setexpr result 0x100 / 0x10# 除法setexpr result 0x17 % 0x5# 取模# 位運(yùn)算setexpr result 0xFF\0x0F# 按位與setexpr result 0xF0\|0x0F# 按位或setexpr result 0xFF\^ 0xAA# 按位異或setexpr result ~ 0x00# 按位取反10.7 條件測(cè)試test- 條件測(cè)試# 數(shù)值比較test10-eq10echoEqual# 等于test10-ne20echoNot equal# 不等于test10-gt5echoGreater# 大于test10-ge10echoGreater or equal# 大于等于test5-lt10echoLess# 小于test10-le10echoLess or equal# 小于等于# 字符串比較testabcabcechoSame# 字符串相等testabc!defechoDifferent# 字符串不等test-zechoEmpty string# 字符串為空test-nabcechoNot empty# 字符串非空itest- 整數(shù)比較測(cè)試itest 0x100 -eq256echoEqual# 整數(shù)相等測(cè)試# 功能: 支持十六進(jìn)制和十進(jìn)制整數(shù)比較# 優(yōu)勢(shì): 比 test 更靈活支持更多格式itest.b 0xFF -eq255# 字節(jié)比較itest.w 0x1000 -gt 0x0FFF# 字16位比較itest.l 0x100000 -lt 0x200000# 長(zhǎng)整型32位比較# 實(shí)際應(yīng)用地址范圍檢查ifitest${loadaddr}-ge 0x80000000;thenechoAddress in valid rangefi10.8 數(shù)據(jù)壓縮與解壓unlz4- LZ4 解壓unlz4 0x80000000 0x82000000# LZ4 解壓# 參數(shù): 壓縮數(shù)據(jù)地址 解壓目標(biāo)地址# 功能: 解壓 LZ4 格式的壓縮數(shù)據(jù)# 應(yīng)用: 加載壓縮的內(nèi)核或文件系統(tǒng)鏡像# 實(shí)際應(yīng)用加載壓縮內(nèi)核fatload mmc0:1 0x80000000 zImage.lz4 unlz4 0x80000000${kernel_addr_r}bootz${kernel_addr_r}unzip- ZIP 解壓unzip0x80000000 0x82000000# ZIP 解壓# 參數(shù): ZIP 數(shù)據(jù)地址 解壓目標(biāo)地址# 功能: 解壓 ZIP 格式文件# 應(yīng)用: 解壓固件包或批量文件# 實(shí)際應(yīng)用解壓固件包tftp 0x80000000 firmware.zipunzip0x80000000 0x82000000lzmadec- LZMA 解壓lzmadec 0x80000000 0x82000000# LZMA 解壓# 參數(shù): LZMA 數(shù)據(jù)地址 解壓目標(biāo)地址# 功能: 解壓 LZMA 格式的高壓縮比數(shù)據(jù)# 應(yīng)用: 解壓高度壓縮的鏡像文件gzwrite- 解壓并寫入gzwrite mmc00x80000000 0x1000000# 解壓 gzip 并寫入塊設(shè)備# 參數(shù): 設(shè)備類型 設(shè)備號(hào) 壓縮數(shù)據(jù)地址 數(shù)據(jù)大小# 功能: 將 gzip 壓縮的數(shù)據(jù)解壓并直接寫入塊設(shè)備# 優(yōu)勢(shì): 一步完成解壓和寫入節(jié)省內(nèi)存# 實(shí)際應(yīng)用寫入壓縮的根文件系統(tǒng)tftp 0x80000000 rootfs.img.gz gzwrite mmc00x80000000${filesize}10.9 串口文件傳輸loadb- Kermit 協(xié)議加載loadb 0x80000000# 通過(guò) Kermit 協(xié)議加載文件# 功能: 使用 Kermit 協(xié)議從串口接收文件# 應(yīng)用: 無(wú)網(wǎng)絡(luò)環(huán)境下更新固件# 速度: 較慢適合小文件# 使用步驟:# 1. U-Boot 中執(zhí)行 loadb# 2. 主機(jī)端使用支持 Kermit 的終端發(fā)送文件loads- S-Record 格式加載loads 0x80000000# 加載 S-Record 格式文件# 功能: 從串口接收 Motorola S-Record 格式文件# 應(yīng)用: 傳統(tǒng)的固件下載方式# 格式: 文本格式包含地址和數(shù)據(jù)loadx- Xmodem 協(xié)議加載loadx 0x80000000# 通過(guò) Xmodem 協(xié)議加載# 功能: 使用 Xmodem 協(xié)議從串口接收文件# 速度: 慢但兼容性好# 應(yīng)用: 簡(jiǎn)單可靠的文件傳輸# 使用步驟:# 1. U-Boot: loadx 0x80000000# 2. 主機(jī): 發(fā)送文件使用 Xmodem 協(xié)議loady- Ymodem 協(xié)議加載loady 0x80000000# 通過(guò) Ymodem 協(xié)議加載# 功能: 使用 Ymodem 協(xié)議從串口接收文件# 速度: 比 Xmodem 快支持批量傳輸# 應(yīng)用: 無(wú)網(wǎng)絡(luò)環(huán)境下的文件傳輸# 使用步驟:# 1. U-Boot: loady 0x80000000# 2. 主機(jī): 使用支持 Ymodem 的終端發(fā)送# 3. 文件大小自動(dòng)保存到 filesize 變量10.10 設(shè)備管理dm- 驅(qū)動(dòng)模型訪問(wèn)dm tree# 顯示設(shè)備樹(shù)# 輸出示例:# Class Index Probed Driver Name# -----------------------------------------------------------# root 0 [ ] root_driver root_driver# simple_bus 0 [ ] simple_bus |-- soc# serial 0 [ ] serial_omap | |-- serial44e09000# mmc 0 [ ] omap_hsmmc | |-- mmc48060000dm uclass# 列出所有設(shè)備類別# 輸出: 所有 uclass設(shè)備類及其設(shè)備dm drivers# 列出所有驅(qū)動(dòng)# 輸出: 系統(tǒng)中注冊(cè)的所有驅(qū)動(dòng)程序# 應(yīng)用: 調(diào)試設(shè)備驅(qū)動(dòng)問(wèn)題查看設(shè)備綁定狀態(tài)clk- 時(shí)鐘子系統(tǒng)clk dump# 顯示所有時(shí)鐘# 輸出示例:# Clock Rate# ---------------------------------# osc 24000000# pll_core 1000000000# cpu_clk 1000000000clk setfreqclkfreq# 設(shè)置時(shí)鐘頻率# 功能: 動(dòng)態(tài)調(diào)整時(shí)鐘頻率# 應(yīng)用: 性能調(diào)優(yōu)功耗管理clocks- 顯示時(shí)鐘信息clocks# 顯示系統(tǒng)時(shí)鐘配置# 輸出: 系統(tǒng)中主要時(shí)鐘的頻率信息# 應(yīng)用: 查看 CPU、總線、外設(shè)時(shí)鐘regulator- 電源管理regulator list# 列出所有穩(wěn)壓器# 輸出示例:# Name Enabled uV mA# vdd_mpu true 1100000 -# vdd_core true 950000 -regulator dev vdd_mpu# 選擇穩(wěn)壓器regulatorenable# 使能穩(wěn)壓器regulator disable# 禁用穩(wěn)壓器regulator value1200000# 設(shè)置輸出電壓uV# 實(shí)際應(yīng)用動(dòng)態(tài)電壓調(diào)節(jié)regulator dev vdd_core regulator value1000000# 設(shè)置為 1.0Vrtc- 實(shí)時(shí)時(shí)鐘rtc list# 列出 RTC 設(shè)備# 輸出: rtc068 (I2C RTC)rtcread# 讀取 RTC 時(shí)間# 輸出: Date: 2023-10-15 (Sunday) Time: 10:23:45rtcwrite# 將系統(tǒng)時(shí)間寫入 RTC# 功能: 同步系統(tǒng)時(shí)間到硬件 RTCrtcset2023.10.15-10:23:45# 設(shè)置 RTC 時(shí)間# 格式: YYYY.MM.DD-HH:MM:SSwdt- 看門狗wdt list# 列出看門狗設(shè)備# 輸出: watchdog44e35000wdt starttimeout_ms# 啟動(dòng)看門狗# 參數(shù): 超時(shí)時(shí)間毫秒# 示例: wdt start 10000 # 10秒超時(shí)wdt expire# 觸發(fā)看門狗復(fù)位# 功能: 立即觸發(fā)看門狗復(fù)位# 應(yīng)用: 測(cè)試看門狗功能wdt stop# 停止看門狗# 警告: 某些看門狗啟動(dòng)后無(wú)法停止10.11 顯示管理bmp- BMP 圖像操作bmp info 0x82000000# 顯示 BMP 圖像信息# 輸出:# Image size : 800 x 600# Bits per pixel: 24# Compression : 0bmp display 0x82000000# 在屏幕上顯示 BMP 圖像# 功能: 將 BMP 圖像顯示在幀緩沖區(qū)# 應(yīng)用: 啟動(dòng) Logo、用戶界面bmp display 0x8200000010050# 在指定位置顯示# 參數(shù): 地址 X坐標(biāo) Y坐標(biāo)# 實(shí)際應(yīng)用顯示啟動(dòng) Logofatload mmc0:1 0x82000000 logo.bmp bmp display 0x8200000000sleep2lcdputs- 在屏幕上輸出文本lcdputsBooting system...# 在幀緩沖區(qū)顯示文本# 功能: 在顯示屏上輸出文本信息# 應(yīng)用: 啟動(dòng)過(guò)程中的狀態(tài)提示# 注意: 需要視頻輸出支持# 實(shí)際應(yīng)用啟動(dòng)狀態(tài)顯示lcdputsLoading kernel...fatload mmc0:1${kernel_addr_r}zImage lcdputsKernel loaded, starting...bootz${kernel_addr_r}videolink- 視頻鏈接管理videolink list# 列出視頻鏈接# 輸出: 可用的顯示輸出接口videolinkselectlink# 選擇視頻輸出# 功能: 切換顯示輸出接口# 應(yīng)用: 多顯示器系統(tǒng)setcurs- 設(shè)置光標(biāo)位置setcurs105# 設(shè)置光標(biāo)到第10列第5行# 參數(shù): 列 行# 功能: 在文本控制臺(tái)中定位光標(biāo)# 應(yīng)用: 創(chuàng)建文本界面10.12 溫度監(jiān)控temperature- 溫度傳感器temperature list# 列出溫度傳感器# 輸出示例:# | Device | Driver | Parent# | omap-bandgap | ti-bandgap | root_drivertemperature get omap-bandgap# 讀取溫度# 輸出: Temperature: 45 C# 功能: 獲取芯片或板載傳感器溫度# 應(yīng)用: 熱管理過(guò)熱保護(hù)10.13 DFU 與 Fastbootdfu- 設(shè)備固件升級(jí)dfu0mmc0# 啟動(dòng) DFU 模式# 參數(shù): alt_setting 接口類型 設(shè)備號(hào)# 功能: 進(jìn)入 DFUDevice Firmware Upgrade模式# 應(yīng)用: 通過(guò) USB 更新固件# 使用流程:# 1. U-Boot: dfu 0 mmc 0# 2. 主機(jī): dfu-util -l # 列出 DFU 設(shè)備# 3. 主機(jī): dfu-util -a 0 -D firmware.img # 上傳固件fastboot- Fastboot 協(xié)議fastboot usb0# 啟動(dòng) Fastboot USB 模式# 功能: 進(jìn)入 Android Fastboot 模式# 應(yīng)用: Android 設(shè)備固件更新fastboot udp# 啟動(dòng) Fastboot UDP 模式# 功能: 通過(guò)網(wǎng)絡(luò)使用 Fastboot# 優(yōu)勢(shì): 比 USB 快適合批量部署# 主機(jī)端命令示例:# fastboot devices# fastboot flash boot boot.img# fastboot rebootums- USB 大容量存儲(chǔ)ums0mmc0# 將 MMC 設(shè)備導(dǎo)出為 USB 存儲(chǔ)# 參數(shù): usb_controller 接口 設(shè)備號(hào)# 功能: 將 eMMC/SD 卡作為 USB 大容量存儲(chǔ)設(shè)備# 應(yīng)用: 直接從 PC 讀寫板載存儲(chǔ)# 使用流程:# 1. U-Boot: ums 0 mmc 0# 2. PC 會(huì)識(shí)別為 USB 驅(qū)動(dòng)器# 3. 可以直接讀寫分區(qū)# 4. CtrlC 退出 UMS 模式10.14 UEFI 支持bootefi- 啟動(dòng) EFI 負(fù)載bootefi bootmgr# 使用 UEFI 啟動(dòng)管理器# 功能: 從 UEFI 啟動(dòng)管理器啟動(dòng)系統(tǒng)# 應(yīng)用: 標(biāo)準(zhǔn) UEFI 啟動(dòng)流程bootefi 0x80000000# 啟動(dòng)指定地址的 EFI 應(yīng)用# 參數(shù): EFI 應(yīng)用地址# 功能: 直接啟動(dòng) EFI 程序bootefi 0x80000000 0x83000000# 帶設(shè)備樹(shù)啟動(dòng)# 參數(shù): EFI應(yīng)用地址 設(shè)備樹(shù)地址# 實(shí)際應(yīng)用UEFI 啟動(dòng) Linuxfatload mmc0:1${kernel_addr_r}bootaa64.efi bootefi${kernel_addr_r}${fdt_addr_r}efidebug- UEFI 調(diào)試efidebug boot dump# 顯示啟動(dòng)選項(xiàng)# 輸出: UEFI 啟動(dòng)項(xiàng)列表efidebug devices# 列出 UEFI 設(shè)備efidebug drivers# 列出 UEFI 驅(qū)動(dòng)efidebug memmap# 顯示 UEFI 內(nèi)存映射# 功能: 顯示 UEFI 內(nèi)存分配表eficonfig- UEFI 配置菜單eficonfig# 進(jìn)入 UEFI 配置界面# 功能: 提供菜單驅(qū)動(dòng)的 UEFI 變量維護(hù)接口# 應(yīng)用: 配置啟動(dòng)項(xiàng)管理 UEFI 變量# 界面: 圖形化菜單易于操作10.15 安全功能fuse- eFUSE 編程fusereadbankword# 讀取 eFUSE# 示例: fuse read 4 6# 輸出: Reading bank 4, word 6: 12345678fuse sensebankword# 感知 eFUSE 值不緩存# 功能: 直接從硬件讀取 eFUSEfuse progbankwordvalue# 編程 eFUSE# 警告: 不可逆操作一次性編程# 示例: fuse prog 4 6 0xAABBCCDD# 應(yīng)用: 寫入設(shè)備 ID、密鑰、安全配置fuse overridebankwordvalue# 臨時(shí)覆蓋僅此次啟動(dòng)# 功能: 在不燒寫的情況下測(cè)試值optee_rpmb- OPTEE RPMB 操作optee_rpmb read_pvalue# 讀取防回滾計(jì)數(shù)器# 功能: 從 RPMB 分區(qū)讀取受保護(hù)的值# 應(yīng)用: 安全啟動(dòng)防回滾驗(yàn)證optee_rpmb write_pvalueval# 寫入防回滾計(jì)數(shù)器# 參數(shù): 新的計(jì)數(shù)器值# 應(yīng)用: 固件更新后更新版本號(hào)random- 隨機(jī)數(shù)生成random 0x80000000 0x1000# 填充隨機(jī)數(shù)據(jù)# 參數(shù): 內(nèi)存地址 大小# 功能: 生成隨機(jī)數(shù)據(jù)填充內(nèi)存# 應(yīng)用: 測(cè)試密鑰生成安全擦除# 實(shí)際應(yīng)用生成隨機(jī)數(shù)據(jù)random 0x80000000256# 生成 256 字節(jié)隨機(jī)數(shù)md.b 0x80000000 0x100# 查看隨機(jī)數(shù)據(jù)10.16 循環(huán)與調(diào)試cyclic- 循環(huán)任務(wù)管理cyclic list# 列出循環(huán)任務(wù)# 輸出示例:# function: cyclic_demo, cpu-time: 12345 us# function: watchdog_reset, cpu-time: 23 uscyclic demodelay_us# 運(yùn)行演示循環(huán)任務(wù)# 參數(shù): 延遲時(shí)間微秒# 功能: 測(cè)試循環(huán)任務(wù)機(jī)制read- 從分區(qū)讀取readmmc0:1 0x80000000 filename# 從分區(qū)讀取文件到內(nèi)存# 參數(shù): 接口 設(shè)備:分區(qū) 內(nèi)存地址 文件名# 功能: 簡(jiǎn)化的文件讀取命令# 注意: 功能類似 load但語(yǔ)法更簡(jiǎn)潔10.17 其他高級(jí)命令qspihdr- QSPI 啟動(dòng)配置qspihdr# QSPI Flash 啟動(dòng)頭配置# 功能: 配置 QSPI Flash 的啟動(dòng)頭# 應(yīng)用: 特定 SoC 的 QSPI 啟動(dòng)配置# 平臺(tái): 主要用于某些 NXP/Freescale 處理器dcache/icache- 緩存控制dcache on# 啟用數(shù)據(jù)緩存dcache off# 禁用數(shù)據(jù)緩存dcache flush# 刷新數(shù)據(jù)緩存icache on# 啟用指令緩存icache off# 禁用指令緩存icache flush# 刷新指令緩存# 應(yīng)用: 調(diào)試內(nèi)存問(wèn)題性能測(cè)試# 警告: 禁用緩存會(huì)嚴(yán)重影響性能十一、補(bǔ)充命令本節(jié)包含文檔中之前未涵蓋但在 U-Boot 中存在的命令。11.1 協(xié)處理器與輔助功能已在第七章補(bǔ)充bootaux- 啟動(dòng)輔助核心loadm7- 加載 Cortex-M7 固件11.2 文件系統(tǒng)擴(kuò)展已在第五章補(bǔ)充ext2ls/ext2load- EXT2 文件系統(tǒng)ls/load/save/size- 通用文件操作fstype/fstypes- 文件系統(tǒng)類型檢測(cè)ln- 符號(hào)鏈接11.3 網(wǎng)絡(luò)擴(kuò)展已在第六章補(bǔ)充net- 網(wǎng)絡(luò)子系統(tǒng)管理bootp- BOOTP 協(xié)議mdio- MDIO 工具sntp- 時(shí)間同步11.4 時(shí)間與性能已在第十章補(bǔ)充gettime- 獲取定時(shí)器值time- 測(cè)量執(zhí)行時(shí)間11.5 顯示與界面已在第十章補(bǔ)充bmp- BMP 圖像操作lcdputs- 屏幕文本輸出videolink- 視頻鏈接setcurs- 光標(biāo)定位11.6 設(shè)備管理已在第十章補(bǔ)充dm- 驅(qū)動(dòng)模型clk/clocks- 時(shí)鐘管理regulator- 電源管理rtc- 實(shí)時(shí)時(shí)鐘wdt- 看門狗temperature- 溫度監(jiān)控11.7 數(shù)據(jù)傳輸已在第十章補(bǔ)充loadb/loads/loadx/loady- 串口傳輸gzwrite- 解壓寫入unlz4/unzip/lzmadec- 解壓縮11.8 USB 與固件更新已在第十章補(bǔ)充dfu- 設(shè)備固件升級(jí)fastboot- Fastboot 協(xié)議ums- USB 大容量存儲(chǔ)11.9 UEFI 支持已在第十章補(bǔ)充bootefi- 啟動(dòng) EFIefidebug- UEFI 調(diào)試eficonfig- UEFI 配置11.10 安全功能已在第十章補(bǔ)充fuse- eFUSE 編程optee_rpmb- RPMB 操作random- 隨機(jī)數(shù)生成11.11 接口與硬件已在第九章補(bǔ)充pinmux- 引腳復(fù)用led- LED 控制11.12 分區(qū)管理已在第十章補(bǔ)充gpt- GUID 分區(qū)表11.13 條件測(cè)試已在第十章補(bǔ)充itest- 整數(shù)測(cè)試11.14 存儲(chǔ)擴(kuò)展已在第四章補(bǔ)充usbboot- USB 啟動(dòng)blkcache- 塊緩存管理11.15 其他補(bǔ)充已在各章節(jié)補(bǔ)充showvar- Shell 變量第二章eraseenv- 擦除環(huán)境變量第二章true/false- 布爾命令第一章echo- 輸出第一章cls- 清屏第一章exit- 退出腳本第七章panic- 系統(tǒng)恐慌第七章bootflow- 啟動(dòng)流程第七章pxe- PXE 啟動(dòng)第七章sysboot- Syslinux 啟動(dòng)第七章bootvx- VxWorks 啟動(dòng)第七章qspihdr/dcache/icache- 其他第十章 實(shí)戰(zhàn)示例保留原文檔的實(shí)戰(zhàn)示例部分…?? 重要注意事項(xiàng)保留原文檔的注意事項(xiàng)部分… 調(diào)試技巧保留原文檔的調(diào)試技巧部分… 最佳實(shí)踐保留原文檔的最佳實(shí)踐部分… 常用命令速查表保留原文檔的速查表部分… 常見(jiàn)問(wèn)題解答保留原文檔的 FAQ 部分… 附錄保留原文檔的附錄部分… 總結(jié)本完整版文檔已補(bǔ)充了所有在 txt 文檔中出現(xiàn)但原 md 文檔中缺少的命令現(xiàn)在涵蓋超過(guò)200 U-Boot 命令包括新增補(bǔ)充的主要命令基礎(chǔ)與系統(tǒng)echo,cls,true,false,exit,panic- 基本控制showvar,eraseenv- 環(huán)境變量擴(kuò)展文件系統(tǒng) (15 命令)ext2ls,ext2load- EXT2 文件系統(tǒng)ls,load,save,size- 通用文件操作fstype,fstypes- 文件系統(tǒng)檢測(cè)ln- 符號(hào)鏈接創(chuàng)建網(wǎng)絡(luò) (8 命令)net- 網(wǎng)絡(luò)子系統(tǒng)管理bootp- BOOTP 協(xié)議啟動(dòng)mdio- MDIO 總線操作sntp- 網(wǎng)絡(luò)時(shí)間同步存儲(chǔ)設(shè)備 (5 命令)usbboot- USB 設(shè)備啟動(dòng)blkcache- 塊緩存管理read- 簡(jiǎn)化的分區(qū)讀取啟動(dòng)系統(tǒng) (10 命令)bootaux,loadm7- 輔助核心啟動(dòng)bootvx- VxWorks 系統(tǒng)bootflow- 現(xiàn)代啟動(dòng)流程pxe,sysboot- 網(wǎng)絡(luò)/Syslinux 啟動(dòng)顯示與界面 (6 命令)bmp- BMP 圖像處理lcdputs- 屏幕文本輸出videolink- 視頻接口管理setcurs- 光標(biāo)定位設(shè)備管理 (15 命令)dm- 驅(qū)動(dòng)模型低級(jí)訪問(wèn)clk,clocks- 時(shí)鐘子系統(tǒng)regulator- 電源管理rtc- 實(shí)時(shí)時(shí)鐘wdt- 看門狗temperature- 溫度監(jiān)控pinmux- 引腳復(fù)用led- LED 控制數(shù)據(jù)處理 (12 命令)loadb,loads,loadx,loady- 串口文件傳輸gzwrite- 解壓并寫入unlz4,unzip,lzmadec- 多種解壓格式gettime,time- 時(shí)間測(cè)量USB 與固件 (6 命令)dfu- 設(shè)備固件升級(jí)fastboot- Android Fastbootums- USB 大容量存儲(chǔ)UEFI 支持 (5 命令)bootefi- EFI 啟動(dòng)efidebug- UEFI 調(diào)試eficonfig- UEFI 配置菜單安全功能 (5 命令)fuse- eFUSE 編程不可逆optee_rpmb- 安全存儲(chǔ)random- 隨機(jī)數(shù)生成分區(qū)與存儲(chǔ) (3 命令)gpt- GUID 分區(qū)表操作cyclic- 循環(huán)任務(wù)管理測(cè)試與調(diào)試 (5 命令)itest- 整數(shù)比較測(cè)試dcache,icache- 緩存控制qspihdr- QSPI 配置 命令分類統(tǒng)計(jì)類別命令數(shù)量主要用途基礎(chǔ)命令15幫助、信息、控制環(huán)境變量12配置管理內(nèi)存操作15讀寫測(cè)試存儲(chǔ)設(shè)備40MMC/NAND/SPI/USB/SATA文件系統(tǒng)35FAT/EXT/UBIFS網(wǎng)絡(luò)操作15TFTP/NFS/DHCP系統(tǒng)啟動(dòng)20內(nèi)核加載啟動(dòng)設(shè)備樹(shù)12DT 操作總線接口18I2C/GPIO/SPI高級(jí)功能50鏡像/加密/設(shè)備管理總計(jì)200全面覆蓋 快速入門指南第一次使用 U-Boot查看幫助help# 列出所有命令helpmmc# 查看 MMC 命令幫助查看系統(tǒng)信息version# U-Boot 版本bdinfo# 板級(jí)信息printenv# 環(huán)境變量基本啟動(dòng)# 從 SD 卡啟動(dòng)mmc dev0fatload mmc0:1 0x80000000 zImage bootz 0x80000000網(wǎng)絡(luò)啟動(dòng)dhcp# 獲取 IPtftp 0x80000000 zImage# 下載內(nèi)核bootz 0x80000000# 啟動(dòng)常用操作速查文件操作lsmmc0:1 /# 列出文件自動(dòng)檢測(cè)文件系統(tǒng)load mmc0:1 0x80000000 file.bin# 加載文件通用save mmc0:1 0x80000000 newfile.bin 0x1000# 保存文件內(nèi)存操作md 0x80000000 0x100# 顯示內(nèi)存mw 0x80000000 0xFF100# 寫入內(nèi)存cmp0x80000000 0x81000000 0x100# 比較內(nèi)存網(wǎng)絡(luò)操作ping192.168.1.1# 測(cè)試連接tftp 0x80000000file# TFTP 下載nfs 0x80000000192.168.1.100:/path/file# NFS 加載 高級(jí)主題1. 多核異構(gòu)啟動(dòng)# ARM Cortex-M 系統(tǒng)fatload mmc0:1 0x80000000 m4_firmware.bin bootaux 0x80000000# 啟動(dòng) M4 核心# ... 然后啟動(dòng) ARM 主核心2. 安全啟動(dòng)流程# 驗(yàn)證簽名 安全啟動(dòng)fatload mmc0:1${kernel_addr_r}zImagehashsha256${kernel_addr_r}${filesize}# 比對(duì)簽名...fuseread46# 讀取安全配置bootz${kernel_addr_r}3. UEFI 標(biāo)準(zhǔn)啟動(dòng)# 現(xiàn)代 UEFI 啟動(dòng)fatload mmc0:1${kernel_addr_r}bootaa64.efi bootefi${kernel_addr_r}${fdt_addr_r}4. 網(wǎng)絡(luò)批量部署# PXE 網(wǎng)絡(luò)啟動(dòng)dhcp pxe get pxe boot5. USB 大容量存儲(chǔ)模式# 將板子作為 USB 存儲(chǔ)器ums0mmc0# PC 端可直接訪問(wèn) eMMC/SD 卡 文檔使用建議初學(xué)者: 從一、基礎(chǔ)命令和快速入門指南開(kāi)始開(kāi)發(fā)者: 重點(diǎn)關(guān)注七、系統(tǒng)啟動(dòng)和十、高級(jí)功能調(diào)試人員: 查看三、內(nèi)存操作和調(diào)試技巧章節(jié)系統(tǒng)集成: 參考實(shí)戰(zhàn)示例和最佳實(shí)踐搜索技巧:使用 CtrlF 搜索命令名查看目錄導(dǎo)航快速定位參考速查表了解命令分類 參考資源U-Boot 官方文檔: https://u-boot.readthedocs.io/U-Boot 源碼: https://github.com/u-boot/u-bootDevice Tree 規(guī)范: https://www.devicetree.org/U-Boot 郵件列表: https://lists.denx.de/mailman/listinfo/u-bootUEFI 規(guī)范: https://uefi.org/specifications? 文檔更新說(shuō)明v2.0 補(bǔ)充版- 2024? 新增 80 補(bǔ)充命令? 完善所有命令章節(jié)? 添加更多實(shí)戰(zhàn)示例? 補(bǔ)充 UEFI/安全啟動(dòng)內(nèi)容? 增加快速入門指南? 優(yōu)化文檔結(jié)構(gòu)和索引覆蓋范圍:? 200 U-Boot 命令? 10 大類功能分類? 50 實(shí)戰(zhàn)示例? 100 參數(shù)說(shuō)明? 全面的中文注釋文檔版本: v2.0 補(bǔ)充完整版最后更新: 2024年12月適用于: U-Boot 2020.x - 2024.x 版本命令總數(shù): 200 條
版權(quán)聲明: 本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)聯(lián)系我們進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

建模外包網(wǎng)站長(zhǎng)春網(wǎng)站排名優(yōu)化費(fèi)用

建模外包網(wǎng)站,長(zhǎng)春網(wǎng)站排名優(yōu)化費(fèi)用,如何開(kāi)發(fā)屬于自己的小程序,重慶網(wǎng)站建設(shè)招標(biāo)目錄已開(kāi)發(fā)項(xiàng)目效果實(shí)現(xiàn)截圖開(kāi)發(fā)技術(shù)介紹系統(tǒng)開(kāi)發(fā)工具#xff1a;核心代碼參考示例1.建立用戶稀疏矩陣#xff0c;用于用戶

2026/01/21 16:24:01