uboot 常用指令集

查看和修改環境變量指令

常用環境變量列表
bootdelay 執行自動啓動(bootcmd中的命令)的等候秒數 
baudrate 串口控制檯的波特率 
bootfile 默認的下載文件名 
bootargs 傳遞給Linux內核的啓動參數 
bootcmd 自動啓動時執行命令 
stdin 標準輸入設備, 一般是串口  
stdout 標準輸出, 一般是串口,也可是LCD(VGA)
stderr   標準出錯, 一般是串口,也可是LCD(VGA)
serverip TFTP服務器端的IP地址 
ipaddr 本地的IP地址  
ethaddr 以太網的MAC地址 
netmask 以太網的網絡掩碼 
gatewayip 以太網的網關

指令: setenv name value
第1個參數是環境變量的名稱。  
第2個參數是要設置的值,如果沒有第2個參數,表示刪除這個環境變量
例:
setenv serverip 192.168.1.12 //添加環境變量serverip 其值爲 192.168.1.12
setenv serverip 192.168.1.20 //在上一行的基礎上把環境變量serverip 值重新賦爲 192.168.1.20
setenv serverip //把 serverip 變量刪除


指令: saveenv 保存環境變量


指令: printenv 查看環境變量
使用該命令返回:
bootdelay=1
baudrate=115200
bootfile="uImage"
filesize=6600EC
fileaddr=82000000
bootargs=mem=64M console=ttyAMA0,115200 root=/dev/mtdblock2 rootfstype=jffs2 mtdparts=hi_sfc:1M(boot),4M(kernel),27M(rootfs)
bootcmd=sf probe 0;sf read 0x82000000 0x100000 0x400000;bootm 0x82000000
stdin=serial
stdout=serial
stderr=serial
verify=n
ver=U-Boot 2010.06 (Jan 20 2015 - 15:46:38)
serverip=192.168.1.12
ipaddr=192.168.1.129
ethaddr=00:01:02:11:88:91
netmask=255.255.255.0
gatewayip=192.168.1.1


0x400 1KB
0x10_0000 1MB
0x100_0000 16MB
0x200_0000 32MB
0x1000_0000 256MB
0x2000_0000 512MB
0x4000_0000 1GB


查看和修改內存值指令


查看內存命令 md
修改內存命令 mm
填充內存命令 mw
複製內存命令 cp
這些命令都可以帶上後綴 “.b”(字節 byte),  ”.w”(字 word),  ”.l”(4字節 long)  爲單位進行操作




指令: mw 填充內存命令
mw[.b,.w,.l] address value [count]
表示以[.b,.w,.l]爲單位往開始地址爲address的內存填充count 個值爲 value 的數據
例:
mw.b 82000000 ff 100000 從地址0x82000000地址開始填充0x100000(1M字節)個值爲0xff的數據


指令: md 查看內存命令
md[.b,.w,.l] address [count]
表示以[.b,.w,.l]爲單位顯示從地址address開始的內存數據,顯示的數據個數爲count
例:
md.b 82000000  10 顯示從地址0x82000000地址開始的0x10個字節的數據
返回信息:
82000000: d3 2c b4 4b 2c d3 4b b4 d3 d3 b4 b4 d3 2c b4 4b    .,.K,.K......,.K


指令: mm 修改內存命令
mm[.b,.w,.l] address
表示以[.b,.w,.l]爲單位從地址address開始修改內存數據,執行mm命令後,輸入新數據後回車,地址會自動增加,按“CTRL + c”退出;
例: 把第一個字節數據0xd3修改爲0xd4
mm.b 82000000
返回:
82000000: d3 ? d4
82000001: 2c ? 


指令: cp 複製內存命令
cp[.b,.w,.l] source target [count]
表示以[.b,.w,.l]爲單位從源地址source的內存複製count個數據到 目的地址 target的內存中去;


下載的指令
指令: tftp 通過網口下載文件到設備
tftp  address  filename 把文件filename下載到地址address
例:
下載
tftp 0x82000000 u-boot-hi3520d.bin 把TFTP目錄下名爲u-boot-hi3520d.bin的文件拷貝到SDRAM的 82000000 地址

上傳
tftp 0x82000000 flash 2000000 把SDRAM的 82000000 地址開始的 0x2000000(32M)字節的拷貝到把TFTP目錄下命名爲flash(flash名字是否可變)

Flash操作的指令(不同的Flash不同)
指令: erase Flash擦除命令 
erase  start  end 擦除的範圍爲 start – end
erase  start+len 擦除的範圍爲 start – (start+len-1)
erase  all 擦除所有
例:
對於SPI NOR FLASH
sf erase 0 100000 擦除flash 0 - 0x100000 的數據


指令: write Flash燒寫命令
write addr off size 將SDRAM的 addr 地址處的 size 字節的數據燒寫到 flash 的 off 偏移地址
例:
對於SPI NOR FLASH
sf write 82000000 0 100000 把SDRAM地址 0x82000000 處 0x100000(1M字節)的數據燒寫到 flash 的 0 偏移地址

指令: read Flash讀取命令
read addr off size 從 Flash 的 off 偏移地址處讀取 size 字節的數據到SDRAM的 addr地址
例:
對於SPI NOR FLASH
sf read 82000000 0 2000000 從 flash 的 0 偏移地址出讀取 0x2000000(32M)字節的數據到 SDRAM的 82000000 地址











發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章