U-Boot是通用的BootLoader,但不是唯一的BootLoader,不仅可以启动Linux系统。Linux系统要启动需要通过BootLoader程序引导,芯片上电后会先运行一段BootLoader程序,这段BootLoader程序会先初始化DDR等外设,然后将Linux内核从flash拷贝到DDR中,最后启动Linux内核。uboot 使用命令例如:当整个uboot命令中只有printenv的前缀是“print”时,只输入“print”也是可以的1.可查询当前uboot所支持的命令:“help”或者"?"进去uboot的命令行模式以后输入“help”或者"?",按下回车键,可查询当前uboot所支持的命令,下图中只是一部分命令,具体要以实际为主2.查询命令的详细说明:“? 命令”或“help 命令”3、查询命令:bdinfo、printenv、versionbdinfo:一般用来查询开发板信息printenv:用来输出环境变量信息version:用于查看uboot的版本号4.设置环境变量;新建环境变量:setenv例如:我们将环境变量bootdelay改为0,可以使用这样输入命令:setenv bootdelay 5saveenv重启开发板后,uboot的倒计时就会变成0s命令 setenv 也可以用于新建命令,用法和修改环境变量一样,比如我们新建一个环境变量author,author 的值为‘console=ttySTM0,11520 root=/dev/mmcblk2p2 rootwait rw’,那么就可以使用如下命令:setenv author 'console=ttySTM0,11520 root=/dev/mmcblk2p2 rootwait rw ’saveenv上面命令设置 author 的值为“console=ttySTM0,11520 root=/dev/mmcblk2p2 rootwait rw”,其中“console=ttySTM0,115200”、“root=/dev/mmcblk2p2”、“rootwait”和“rw”相当于四组“值”,这四组“值”之间用空格隔开,所以需要使用单引号‘’将其括起来,表示这四组“值”都属于环境变量 author。5.删除环境变量使用setenv将环境变量置空:setenv 环境变量名saveenv6.显示内存值:md[.b, .w, .l] address [# of objects]命令中的b,w,l,对应的是byte(1字节),word(2字节),long(4字节)来显示存储值,address是要查看的内存起始地址,[# of objects]是查看数据的长度,但是这个长度单位不是字节,要看你前面选择的是那种显示类型,比如你设置的长度是20(0x14),如果显示格式为.b 的话那就表示 20 个字节;如果显示格式为.w 的话就表示 20 个 word,也就是 202=40 个字节;如果显示格式为.l 的话就表示 20 个 long,也就是204=80 个字节,比如你想查看 0XC0100000 开始的 20 个字节的内存值,显示格式为.b 的话,应该使用如下所示命令:md.b C0100000 14而不是:md.b C0100000 20另外要注意:uboot 命令中的数字都是十六进制的!不是十进制的,所以写不写0x都可以!7.修改指定地址的内存值:nm [.b, .w, .l] address(或者mm [.b, .w, .l] address)修改完成后可以用md命令查看是否修改成功,(md [.b, .w, .l] address length8.使用一个指定的数据填充一段内存:mw [.b, .w, .l] address value [count]例如:mw.l C0100000 0A0A0A0A 10,然后使用命令 md 来查看,如图所示:9.数据拷贝命令:cp [.b, .w, .l] source target countcp 命令同样以.b、.w 和.l 来指定操作格式,source 为源地址,target 为目的地址,count 为拷贝的长度。我们使用.l 格式将 0xC0100000 处的地址拷贝到 0xC0100100 处,长度为 0x10 个内存块(0x10 * 4=64 个字节),命令如下所示:cp.l c0100000 c0100100 1010.比较两段内存的数据是否相等:cmp [.b, .w, .l] addr1 addr2 count例如:cmp.l c0100000 c0100100 1011.网络操作命令setenv ipaddr 192.168.1.250 //开发板 ip 地址setenv ethaddr b8:ae:1d:01:01:00 //开发板的 MAC 地址,一定要设置。setenv gatewayip 192.168.1.1 //网关地址setenv netmask 255.255.255.0 //子网掩码setenv serverip 192.168.1.249 //服务器 IP 地址saveenvping 192.168.1.249 //查看网络是否可用