系统烧写2

 烧写NXP官方系统
我们先试着将NXP官方的系统烧写到正点原子的I.MX6U-ALPHA开发板中,主要是先熟悉一下烧写过程。因为正点原子的EMMC核心版用的也是512MB的DDR3加8G的EMMC,因此烧写NXP官方的系统是没有任何问题的。烧写步骤如下:
①、连接好USB,拨码开关拨到USB下载模式。
②、弹出TF卡,然后按下开发板复位按键。
③、打开SecureCRT。
③、双击“mfgtool2-yocto-mx-evk-emmc.vbs”,打开下载软件,如果出现“符合 HID 标准的供应商定义设备”等字样就说明下载软件已经准备就绪。点击“Start”按钮开发烧写NXP官方系统,烧写过程如图所示:

在这里插入图片描述

烧写完成以后点击“Stop”按钮停止烧写,然后点击“Exit”键退出。拔出USB线,将开发板上的拨码开关拨到EMMC启动模式,然后重启开发板,此时就会从EMMC启动。只是启动以后的系统是NXP官方给I.MX6ULL EVK开发板制作的,这个系统需要输入用户名,用户名为“root”,没有密码。

在这里插入图片描述

烧写自制的系统
系统烧写
上一小节我们试着将NXP官方提供的系统烧写到正点原子的I.MX6U-ALPHA开发板中,目的是体验一下通过MfgTool烧写系统的过程。本小节我们就来学习如何将我们做好的系统烧写到开发板中,首先是准备好要烧写的原材料:
①、自己移植编译出来的uboot可执行文件:u-boot.imx。
②、自己移植编译出来的zImage镜像文件和开发板对应的.dtb(设备树),对于I.MX6U-ALPHA开发板来说就是imx6ull-alientek-emmc.dtb。
③、自己构建的根文件系统rootfs,这里我们需要对rootfs进行打包,进入到Ubuntu中的rootfs目录中,然后使用tar命令对其进行打包,命令如下:
cd rootfs/
tar -vcjf rootfs.tar.bz2 *
完成以后会在rootfs目录下生成一个名为rootfs.tar.bz2的压缩包,将rootfs.tar.bz2发送到windows系统中。
将上面提到的这4个“原材料”都发送到Windows系统中 :

在这里插入图片描述

材料准备好以后还不能直接进行烧写,必须对其进行重命名,否则的话ucl2.xml是识别不出来的,
原名字 重命名
u-boot.imx u-boot-imx6ull14x14evk_emmc.imx
zImage zImage(不需要重命名)
imx6ull-alientek-emmc.dtb zImage-imx6ull-14x14-evk-emmc.dtb
rootfs.tar.bz2 rootfs_nogpu.tar.bz2
接下来就是用我们的文件替换掉NXP官方的文件,先将图中的zImage、u-boot-imx6ull14x14evk_emmc.imx和zImage-imx6ull-14x14-evk-emmc.dtb这三个文件拷贝到mfgtools-with-rootfs/mfgtools/Profiles/Linux/OS Firmware/firmware目录中,替换掉原来的文件。然后将中的所有4个文件都拷贝到mfgtools-with-rootfs/mfgtools/Profiles/Linux/OS Firmware/files目录中,这两个操作完成以后我们就可以进行烧写了。
双击“mfgtool2-yocto-mx-evk-emmc.vbs”,打开烧写软件,点击“Start”按钮开始烧写,由于我们自己制作的rootfs比较小,因此烧写相对来说会快一点。烧写完成以后设置开发板从EMMC启动,启动我们刚刚烧写进去的系统,测试有没有问题。
注意!一旦自己改造的mfgtools工具能够正常烧写系统,那么mfgtools-with-rootfs/mfgtools/Profiles/Linux/OS Firmware/firmware目录下的文件以后就不能再修改!否则可能导致烧写失败!

大家在测试网络的时候可能会发现网络不能用,这并不是因为我们将系统烧写到EMMC中以后网络坏了。仅仅是因为网络没有打开,我们用NFS挂载根文件系统的时候因为要使用NFS服务,因此Linux内核会打开eth0这个网卡,现在我们不使用NFS挂载根文件系统,因此Linux内核也就不会自动打开eth0网卡了。我们可以手动打开网卡,首先输入“ifconfig -a”命令查看一下eth0和eth1是否都存在,

一般eth0好eth1都存在,既然存在我们就打开,以打开eth0网卡为例,输入如下命令打开eth0:
ifconfig eth0 up

在这里插入图片描述

打开的时候会提示使用LAN8710/LAN8720的网络芯片,eth0连接成功,并且是100Mpbs全双工,eth0链接准备就绪。这个时候输入“ifconfig”命令就会看到eth0这个网卡

在这里插入图片描述 

接下来就是个eth0设置IP地址,如果你的开发板连接的路由器,那么可以通过路由器自动分配IP地址,命令如下:
udhcpc -i eth0 //通过路由器分配IP地址
如果你的开发板连接着电脑,那么就可以手动设置IP地址,比如设置为192.168.1.251,命令如下:
ifconfig eth0 192.168.1.251 netmask 255.255.255.0 //设置IP地址和子网掩码
route add default gw 192.168.1.1 //添加默认网关
推荐大家将开发板连接到路由器上,设置好IP地址以后就可以测试网络了,比如ping一下电脑IP地址,或者ping一下百度官网。
每次开机以后都要自己手动打开网卡,然后手动设置IP地址也太麻烦了,有没有开机以后自动启动网卡并且设置IP地址的方法呢?肯定有的,我们将打开网卡,设置网卡IP地址的命令添加到/etc/init.d/rcS文件中就行了。完成以后的rcS文件内容如下所示:

1  #!/bin/sh
2  
3  PATH=/sbin:/bin:/usr/sbin:/usr/bin
4  LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/lib:/usr/lib
5  export PATH LD_LIBRARY_PATH runlevel
6  
7  #网络开机自启动设置
8  ifconfig eth0 up
9  #udhcpc -i eth0   
10 ifconfig eth0 192.168.1.251 netmask 255.255.255.0
11 route add default gw 192.168.1.1 
...... 
12 #cd /drivers
13 #./hello &
14 #cd /

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值