Uboot的使用

 

6、uboot的使用教程-风君雪科技博客

解压uboot的压缩包得到uboot的工程文件uboot,进入uboot,打开Makefile文件,搜索自己的开发板的类型。我的是OK6410 256的。

6、uboot的使用教程-风君雪科技博客

然后执行配置文件:

接着执行一下的命令进行编译:

 

 

 

编译完成的截图:

6、uboot的使用教程-风君雪科技博客

完成之后,我们会在我们的uboot的目录看待生成uboot.bin文件,这就是要烧写到开发板的映像文件。

烧写uboot.bin 到OK6410开发板

首先烧写我们的辅助安装程序mmc_256.bin到SD卡。设置开发板从SD卡启动。在启动的瞬间按住空格进入选择菜单。

6、uboot的使用教程-风君雪科技博客

 

首先是选择1,格式化我们的Nand flash。

 

6、uboot的使用教程-风君雪科技博客

接着选3,Burn image from USB.

6、uboot的使用教程-风君雪科技博客

接着选择1,我们现在烧写的是uboot:

由于我的usb驱动有点问题,改成SD烧写:

6、uboot的使用教程-风君雪科技博客

烧写完成,设置开发板从nand flash启动,重启开发板:

6、uboot的使用教程-风君雪科技博客

如上面的显示,我们的uboot可以工作了。Uboot通常会有上面的选择菜单。但是,我们现在是要看uboot下的命令。所以选择的是6,进入命令行:

6、uboot的使用教程-风君雪科技博客

接下来就是uboot下的命令详解:

6、uboot的使用教程-风君雪科技博客

6、uboot的使用教程-风君雪科技博客

Uboot的命令是很丰富的,是在开发阶段实现的。现在我们是使用,所以没有涉及到如何增加命令的知识,我们只管用就好了。

我们可以使用help来查看所支持的命令:

6、uboot的使用教程-风君雪科技博客

6、uboot的使用教程-风君雪科技博客

上面可以看到uboot支持的命令是很丰富的。前面是命令,后面是解释命令。

6、uboot的使用教程-风君雪科技博客

6、uboot的使用教程-风君雪科技博客

6、uboot的使用教程-风君雪科技博客

现在我们执行setenv Myboard OK6410去增加一个环境变量:

6、uboot的使用教程-风君雪科技博客

看到,我们的环境变量添加成功了。至于修改,跟增加一样的。例如我们可以setenv Myboard 6410.这样就修改了Myboard的值了。

最后是删除环境变量:命令:setenv Myboard。后面不要跟参数,就会删除掉该环境变量。

6、uboot的使用教程-风君雪科技博客

6、uboot的使用教程-风君雪科技博客

 

我们前面的操作的结果是保存在内存的,一断电就会消失,如果想要重启后还能保留,必须使用saveenv命令,将在内存的环境变量保存到我们的flash里面去。开发板上电回去flash里面读取环境变量。

6、uboot的使用教程-风君雪科技博客

首先是设置开发板和主机虚拟机的ip地址:

6、uboot的使用教程-风君雪科技博客

Saveenv保存之后,记得重启,才能够ping通:

6、uboot的使用教程-风君雪科技博客

从上面的显示知道已经ping通的。

接着使用tftp来下载我们的uImage:

6、uboot的使用教程-风君雪科技博客

6、uboot的使用教程-风君雪科技博客

执行了上面的命令之后,我们的内核就启动起来了:

6、uboot的使用教程-风君雪科技博客

6、uboot的使用教程-风君雪科技博客

我们可以看到上面就是我们熟悉的linux的目录了。

设置自启动linux内核:

6、uboot的使用教程-风君雪科技博客

然后重启:

Tftp的配置文件:/etc/xinetd.d/tftp:

6、uboot的使用教程-风君雪科技博客

Server_args是tftp服务器文件夹。

Tftp的设置:重启服务:

6、uboot的使用教程-风君雪科技博客

6、uboot的使用教程-风君雪科技博客

 

所谓固定格式的2进制程序是指系统的类型,例如wince等。

6、uboot的使用教程-风君雪科技博客

6、uboot的使用教程-风君雪科技博客

 

6、uboot的使用教程-风君雪科技博客

6、uboot的使用教程-风君雪科技博客

 

 

 

 

 

6、uboot的使用教程-风君雪科技博客

如果你不想修改了,就空格回车,就会退出了的。

 

6、uboot的使用教程-风君雪科技博客

 

 

下面就是执行的效果。

 

6、uboot的使用教程-风君雪科技博客

6、uboot的使用教程-风君雪科技博客

下面通过tftp传入linux内核,再把它写入:

6、uboot的使用教程-风君雪科技博客

 

上面,我们写入了一个linux内核,现在我们来把它读出来,如果读得出来,就是写入成功了。进行验证。

下面是读的操作:

6、uboot的使用教程-风君雪科技博客

因为前面是烧写一个内核,现在已经读到内存当中。现在检验能不能启动它。Bootm c0008000

 

6、uboot的使用教程-风君雪科技博客6、uboot的使用教程-风君雪科技博客

可以看到我们可以去启动它,说明前面的操作是正确的。

 

 

最后介绍一个小技巧:

6、uboot的使用教程-风君雪科技博客

是出厂的产品,实现的自启动的命令。记得设置完后要saveenv,再重启。

是我们在调试内核的时候的命令。记得设置完后要saveenv,再重启。