2021-06-03

正点原子u-boot学习

1.shell常用命令

1.查看当前的存储设备
ll /dev/sd*

2.u-boot基本命令

1.帮助信息  help或?

2.查看板子信息 bdinfo
=> bdinfo
arch_number = 0x00000000
boot_params = 0x80000100
DRAM bank   = 0x00000000
-> start    = 0x80000000
-> size     = 0x20000000
eth0name    = FEC1
ethaddr     = (not set)
current eth = FEC1
ip_addr     = <NULL>
baudrate    = 115200 bps
TLB addr    = 0x9FFF0000
relocaddr   = 0x9FF51000
reloc off   = 0x18751000
irq_sp      = 0x9EF4EEA0
sp start    = 0x9EF4EE90
FB base     = 0x00000000

3.输出环境变量信息  printenv或print


4.查看u-boot版本号 version或v

=> v  

U-Boot 2016.03 (Jun 01 2021 - 11:30:50 -0400)
arm-linux-gnueabihf-gcc (Linaro GCC 4.9-2017.01) 4.9.4
GNU ld (Linaro_Binutils-2017.01) 2.24.0.20141017 Linaro 2014_11-3-git

5.修改环境变量  setenv + saveenv
eg.
=> setenv bootdelay 5
=> saveenv
Saving Environment to MMC...
Writing to MMC(0)... done

6.有时修改的环境变量值可能会有空格,比如 bootcmd、bootargs 等,
这个时候环境变量值就得用单引号括起来,
比如下面修改环境变量 bootargs 的值:
setenv bootargs 'console=ttymxc0,115200 root=/dev/mmcblk1p2 rootwait rw'
saveenv
上面命令设置 bootargs 的值为
“console=ttymxc0,115200 root=/dev/mmcblk1p2 rootwait rw”,
其中“console=ttymxc0,115200”、“root=/dev/mmcblk1p2”、“rootwait”和“rw”相当于四组“值”,
这四组“值”之间用空格隔开,所以需要使用单引号‘’将其括起来,表示这四组“值”都属
于环境变量 bootargs。

7.新建环境变量  setenv var value
setenv author xxx
saveenv

8.删除环境变量  setenv var

3.u-boot内存操作命令

1.读内存命令
md[.b, .w, .l] address [# of objects]
命令中的[.b .w .l]对应 byte、word 和 long,
也就是分别以 1 个字节、2 个字节、4 个字节来显示内存值
[# of objects]表示数据个数

2.写内存命令
nm [.b, .w, .l] address  不自增
mm [.b, .w, .l] address  自增
mw [.b, .w, .l] address value [count]  连续写多个相同的内容

3.数据拷贝
cp [.b, .w, .l] source target count
据从一段内存拷贝到另一段内存中,或者把 Nor 
Flash 中的数据拷贝到 DRAM 中

4.比较数据
cmp [.b, .w, .l] addr1 addr2 count

4.网络操作命令

1.配置网络
确保 Ubuntu 主机和开发板的 IP
地址在同一个网段
setenv ipaddr 192.168.0.50
setenv ethaddr 00:04:9f:04:d2:35
setenv gatewayip 192.168.0.1
setenv netmask 255.255.255.0
setenv serverip 192.168.0.103
saveenv


2.dhcp命令
dhcp 用于从路由器获取 IP 地址,前提得开发连接到路由器上的,如果开发板是和电脑直
连的,那么 dhcp 命令就会失效。直接输入 dhcp 命令即可通过路由器获取到 IP 地址

注意!只能在 uboot 中 ping 其他的机器,其他机器不能 ping uboot,因为 uboot 没有对 ping
命令做处理,如果用其他的机器 ping uboot 的话会失败!
(未完待续)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值