拿到一块开发板,首先就要找到它的资料,当然了,开发板的厂商或者代理商会提供资料,资料里会有你需要的。

比如我的这块mini2440,在友善之臂代理商提供的资料里面,就有我们这篇所需要的

U-boot新手入门,烧写进mini2440-LMLPHP

U-boot新手入门,烧写进mini2440-LMLPHP

把这个文件夹下的这个这个文件通过samba拷贝到linux文件夹下

用tar xvzf bootloader.tgz解压,解压之后找到配置文件vim Makefile

U-boot新手入门,烧写进mini2440-LMLPHP

找到开发板对应的配置文件之后,直接命令行 make mini2440_config,配置好之后再编译,直接命令行make ARCH=arm CROSS_COMPILE=arm-linux-

编译大概两分钟之后就会生成uboot.bin文件,再通过norflash里的ViVi和dnw下载进开发板就行

help帮助命令

printenv查看环境变量,print ipaddr查看某个环境变量

setenv filename test.txt 添加环境变量

setenv filename hello.txt 修改环境变量

setenv filename 删除环境变量

这些环境变量都是在内存里面的

saveenv保存环境变量,将这些环境变量存入flash

tftp通过网络下载文件:使用tftp,需要配置好网络

  首先得配置好两个,设置ipaddr和serveraddr,severaddr就是linux虚拟机的地址192.168.1.108,ipaddr就是设置成一个网段内的地址,比如192.168.1.109

  在redhat enterprise 6里面,tftp配置文件在/etc/xinetd.d/tftp里面U-boot新手入门,烧写进mini2440-LMLPHP

按这样设置,/etc/init.d/xinetd restart重新启动tftp就行了

netstat -a |grep tftp查看tftp是否启动

下载测试程序uImage到开发板

tftp 0xc0008000 uImage

bootm  0xc0008000 执行固定格式的2进制程序(固定格式:OS,压缩等)

内存操作

md:显示内存区域(md.b)

mm(memory modify):修改内存区域

nand erase 0x400000 0x500000  从4M开始擦出5M区域

nand write c0008000 400000 500000   从c0008000起始地址开始,长度为500000的数据,写入flash起始地址为400000处

nand read c0008000 400000 500000  将400000flash起始地址处,长度为500000的数据,读到内存起始处0xc0008000处

设置从nand flash自动启动

setenv bootcmd nand read c0008000 400000 500000 \; bootm c0008000

设置自动下载内核到内存后启动

setenv bootcmd tftp c0008000 uImage \; bootm c0008000

05-11 22:55