今天下午准备烧写一下u_boot还有linux系统,因为是笔记本电脑,吐槽一下,笔记本电脑的usb转串口不是怎么稳定,dnw下对应的驱动也不怎么好用,导致在笔记本电脑上烧写系统的成功率比较低,本来三点钟烧写好了,我想在练一下手,又把烧写好的系统擦除了,结果虚拟机VMware出现了问题,导致又重新在网站上下载最新的版本,今天看来烧系统就像爬了一次高山,在但是忙活了一下午终于还是烧写成功了,这里我要感谢网站上愿意分享的大神,谢谢你们提供的帮主,废话少说,进入今天的正题。

烧写系统前的材料:linux_imge 和对应的板子上的驱动

linux_image下载地址http://pan.baidu.com/share/link?shareid=954895128&uk=1194036641

驱动下载地址:http://pan.baidu.com/share/link?shareid=949036429&uk=1194036641

系统要求ubuntu上安装有tftp的服务,关于tftp协议的搭建,下面我也给出具体的实践步骤

1、安装软件包:sudo apt-get install tftpd tftp xinetd

2、建立配置文件

在/etc/xinetd.d/下建立一个配置文件tftp 命令:sudo vi /etc/xinetd.d/tftp

内容如下:

service tftp

{

socket_type = dgram

protocol = udp

wait = yes

user = root

server = /usr/sbin/in.tftpd

server_args = -s /tftpboot

disable = no

per_source = 11

cps = 100 2

flags = IPv4

}

3、建立tftp服务文件目录,在上面的配置中有server_args = -s /tftpboot,其中/tftpboot这个目录就是上传文件与下载文件的位置。

命令:sudo mkdir /tftpboot          --创建/tftpboot目录

命令:sudo chmod 777 /tftpboot -R   --设置权限为777

4、重新启动tftp服务

sudo /etc/init.d/xinetd restart  --重启tftp服务器

5、测试

sudo netstat -a | grep tftp      --查看是否启动成功,可以看到udp 0 0 *:tftp *:*

tftp 192.168.0.200 –g –r xxx

弄好tftp协议之后,接下来就可以烧写系统了

记住两个下载地址 0xd0020010,0x23e00000

0xd0020010为gec210_usb.bin文件的下载地址

0x23e00000为uboot,内核文件系统等文件的烧写地址

步骤一:打开dnw,配置configuration中的option选项,将baudrate改为115200,com口改为对应设备管理器中显示的com口,将下载地址改为0xd0020010,打开开发板的电源j2(打上去)改为nandflash启动

这时dnw会弹出安装驱动,这时找到对应的驱动,安装即可

点击serial port->connect,usb:ok表示usb线已经和板子正常连接之后点击usb port->transmit,选择linux_image下的gec210_usb.bin文件

下载时,dnw标题栏的usb状态会有usb:0k变成usb:X,然后迅速变回usb:ok,表示gec_210_usb.bin下载成功,这时210的相关寄存器初始化完毕,然后设置dnw的参数,DOwn更改为0x23e00000接下来下载u-boot-yaffs-7Inch.bin点击usb port->transmit

下载完成后,按下回车,串口输出信息:

表示烧写系统已经成功了一半了,但是这里的uboot并没有固化到nand flash中,因此下面要对ubbot进行固化

在dnw中设置参数

通过setenv 命令设置相关参数
# setenv baudrate 115200
# setenv bootdelay 3
# setenv ethact dm9000
# setenv ipaddr 192.168.1.11
# setenv serverip 192.168.1.22
# setenv gatewayip 192.168.1.1
# saveenv

烧写u-boot,打开虚拟机,将要下载的文件复制到tftpboot文件夹中,这时要下载的是u-boot-yaffs-7Inch.bin

# tftp 0x40000000u-boot-yaffs-7Inch.bin

# nand erase 0x0 0x600000

# nand write 0x40000000 0x0 0x600000
nand boot启动方式启动

重启开发板;

烧写kernel
# tftp 0x40000000 uImage-VGA800X600

# nand erase 0x600000 0x500000

# nand write 0x40000000 0x600000 0x500000

# setenv bootcmd nand read 0x30008000 0x600000 0x500000 \;bootm 0x30008000

# saveenv
重新启动开发板。

烧写fs

# tftp 0x40000000 gec-qt4-rootfs-7.img

# nand erase 0xe00000 0xf200000 //擦除可以擦大点

# nand write.yaffs 0x40000000 0xe00000 0xxxxx(根据下载大小确定)

重新启动开发板即可

烧写流程和使用tftp协议是一样的,这里要注意的是,主机和主板之间必须要拼通,通常要在虚拟机中设置网关,用ifconfig将eth0设置为192.168.1.22,命令为sudo ifconfig eth0 192.168.1.22,在dnw上输入ping 192.168.1.22,这时看主机是否存在,这里有一个小问题,就是你的电脑的无线网卡一定要关闭,否则,将不会拼通,要注意的就是这些,祝大家烧写愉快

版权所有,转载请注明链接地址http://www.cnblogs.com/fengdashen/p/3296615.html

烧写u_boot系统和linux系统的更多相关文章

  1. Nginx在Windows系统和Linux系统下的重启

    一.Windows系统下重启nginx 1.杀掉nginx进程 tskill nginx echo 已终止所有ginx进程      2.启动nginx cd f:\nginx-  nginx.exe ...

  2. 使用Xshell在Windows系统和Linux系统之间进行文件传输

    版权声明:本文为转载内容. 原博客内容https://blog.csdn.net/love666666shen/article/details/75742077 Windows系统在安装虚拟机cent ...

  3. 转载:Linux系统和Linux系统之间如何实现文件传输

    两台Linux系统之间传输文件 听语音 | 浏览:13183 | 更新:2014-07-15 15:22 | 标签:linux 1 2 3 4 5 6 分步阅读 如何在Linux系统之间传输文件及文件 ...

  4. 安装JDK+Eclipse+Maven+Git/Gitee(windows系统和linux系统)

    1. 安装JDK 官网下载 下载java SE 下载 Java SE 7 1.1 windows配置jdk windows配置jdk 1.2 Ubuntu配置jdk Ubuntu 安装 JDK 7 / ...

  5. 在windows系统和linux系统中查询IP地址命令的不同

    在linux和windows系统上查询IP地址的命令是不一样的.         在linux中的命令行模式下,输入ifconfig即可查询到IP.而在windows系统下要查询IP地址需要先打开do ...

  6. 安装Tomcat(windows系统和linux系统)

    Tomcat不管是windows还是Linux版本,都是解压后就再配置一下就可以使用.安装Tomcat前必须先安装JDK,一般我们可以在eclipse中加入Tomcat来开发. 什么是Tomcat? ...

  7. Windows系统和Linux系统下安装Mongodb及可视化页面展示

    一.Windows系统安装MongoDB 下载地址: ​ 官方:http://www.mongodb.org/ ​ 其它:http://dl.mongodb.org/dl/win32/x86_64 下 ...

  8. android系统和ios系统是如何实现推送的,ios为什么没有后台推送

    ios系统为什么没有后台推送? iOS 为了真正地为用户体验负责,不允许应用在后台活动.有了这个限制,但是对于终端设备,应用又是有必要“通知”到达用户的,随时与用户主动沟通起来的(典型的如聊天应用). ...

  9. Redhat系的Linux系统里,网络主要设置文件简介【转载】

    以下是原文地址,转载请指明出处: http://blog.chinaunix.net/uid-26495963-id-3230810.html 一.配置文件详解在RHEL或者CentOS等Redhat ...

随机推荐

  1. VC++创建、调用dll的方法步骤

    文章来源:http://www.cnblogs.com/houkai/archive/2013/06/05/3119513.html 代码复用是提高软件开发效率的重要途径.一般而言,只要某部分代码具有 ...

  2. Shiro 缓存失效以后的一个问题

    shiro 1.2.2和1.2.3 为shiro设置了缓存,但是当服务器运行几个小时后,页面判断 <shiro:hasPermission name="admin"> ...

  3. js数组的迭代

    以下介绍两种数组形式的迭代:一是简单的数组:二是数组里面套Object(json格式). 一.var arr=[1,2,3] var arr=[1,2,3] for (var i = 0; i < ...

  4. KafkaSpout的处理流程

    基于0.93版本Storm 首先,如果自己写KafkaSpout,该怎么办?有哪些地方需要考虑呢 1. 得实现Storm指定的接口.这样Storm才能够使用它.那么需要实现什么接口?需要提供什么功能给 ...

  5. 动态链接库中分配内存引起的问题-- windows已在XX.exe中触发一个断点

    动态链接库中分配内存引起的 本文主要是探讨关于在动态链接库分配的内存在主程序中释放所产生的问题,该问题是我在刚做的PJP工程中所遇到的,由于刚碰到之时感动比较诡异(这也是学识不够所致),所以将它写下来 ...

  6. C++ DLL 模板 .

    C++ DLL 模板 1.使用VS2005创建Win32 DLL项目,选择空项目,然后加入CppDll.h和CppDll.cpp文件. 2.修改CppDll.h和CppDll.cpp文件使之成为需要的 ...

  7. URAL 1146 Maximum Sum & HDU 1081 To The Max (DP)

    点我看题目 题意 : 给你一个n*n的矩阵,让你找一个子矩阵要求和最大. 思路 : 这个题都看了好多天了,一直不会做,今天娅楠美女给讲了,要转化成一维的,也就是说每一列存的是前几列的和,也就是说 0 ...

  8. 在NEXUS中加入自己定义的第三方PROXIES代理库

    就是要等会耐心,更新好之后,才能在PUBLIC库里进行操作. 下图是JBOSS的

  9. Android ListView相关 头和尾 headView footerView

    ListView还可以添加头和尾部,而这头和尾就是View对象, 可以使用listView.addHeadView(view)方法和listView.addFootView(view)方法分别添加头和 ...

  10. Zookeeper + Hadoop + Hbase部署备忘

    网上类似的文章很多,本文只是记录下来备忘.本文分四大步骤: 准备工作.安装zookeeper.安装hadoop.安装hbase,下面分别详细介绍: 一 准备工作 1. 下载 zookeeper.had ...