当前位置: 首页 > wzjs >正文

网站设计经典案例分析餐饮众筹模板网站建设

网站设计经典案例分析,餐饮众筹模板网站建设,网站模板模仿,网站的维护和推广一、MfgTool工具简介 1、mfgtool是NXP官方做的向I.MX系列烧写系统的软件,运行在windows下。可以烧写uboot.imx、zImage、dtb,rootfs。通过USB烧写。 Mfgtool里面默认存放了NXP官方开发板的系统文件, 2、基本原理 向开发板烧系统分两部分&am…

一、MfgTool工具简介

1、mfgtool是NXP官方做的向I.MX系列烧写系统的软件,运行在windows下。可以烧写uboot.imx、zImage、dtb,rootfs。通过USB烧写。

Mfgtool里面默认存放了NXP官方开发板的系统文件,
2、基本原理
向开发板烧系统分两部分:
1、先向开发板的DDR下载一个Linux系统,
2、通过前面下载到DDR中的Linux系统完成最终的烧写工作。

L4.1.15_2.0.0-ga_mfg-tools\mfgtools-with-rootfs\mfgtools\Profiles\Linux\OS Firmware下有:
files和firmware两个文件夹。
files里面保存着最终烧写到开发板中的uboo.imx、zImage、dtb以及rootfs。
Firmware里面保存着第一部的uboot.imx、zImage、dtb。

3、烧写脚本就是各种.vbs文件
在L4.1.15_2.0.0-ga_mfg-tools\mfgtools-with-rootfs\mfgtools下有很多.vbs文件。
.vbs脚本其实本质上是打开mfgtool2.exe,然后跟一堆的参数,linux,eMMc,board=sabresd、mmc=1、6uluboot=14x14evk、6uldtb=14x14-evk。

4、ucl2.xml文件
路径L4.1.15_2.0.0-ga_mfg-tools\mfgtools-with-rootfs\mfgtools\Profiles\Linux\OS Firmware。
ucl2.xml文件负责在files和firmware里面挑选合适的文件。如果是MX6ULL的话,uboot就是:firmware/u-boot-imx6ul%lite%%6uluboot%_sd.imx展开以后就是
firmware/u-boot-imx6ull14x14evk_sd.imx
根据:%lite% = l ,%6uluboot%

firmware/zImage-imx6ul%lite%-%6ulldtb%%ldo%.dtb
firmware/zImage-imx6ull-14x14-evk.dtb

二、烧写NXP官方系统

三、烧写自己的系统

首先是准备好要烧写的原材料:
①、自己移植编译出来的 uboot 可执行文件: u-boot.imx。
②、自己移植编译出来的 zImage 镜像文件和开发板对应的.dtb(设备树),对于 I.MX6UALPHA 开发板来说就是 imx6ull-alientek-emmc.dtb。
③、自己构建的根文件系统 rootfs,这里我们需要对 rootfs 进行打包,进入到 Ubuntu 中的rootfs 目录中,然后使用 tar 命令对其进行打包,命令如下:

cd rootfs/
tar -vcjf rootfs.tar.bz2 *

完成以后会在 rootfs 目录下生成一个名为 rootfs.tar.bz2 的压缩包,将 rootfs.tar.bz2 发送到windows 系统中。

烧写自己的系统。

1、firmare下的文件名
u-boot.imx
zImage
zImage.dtb

2、files下的文件名
u-boot.imx
zImage
zImage.dtb
rootf.tar.bz2

四、改造自己的烧写工具

1、确定自己的系统文件命名

2、创建自己的.vbs

mfgtool2-yocto-mx-evk-emmc-my.vbs

Set wshShell = CreateObject("WScript.shell")
wshShell.run "mfgtool2.exe -c ""linux"" -l ""eMMC"" -s ""board=sabresd"" -s ""mmc=1"" -s ""6uluboot=14x14evk"" -s ""6uldtb=14x14-evk"""
Set wshShell = Nothing

3、改造ucl2.xml文件

<UCL><CFG><STATE name="BootStrap" dev="MX6UL" vid="15A2" pid="007D"/><STATE name="BootStrap" dev="MX6ULL" vid="15A2" pid="0080"/><STATE name="Updater"   dev="MSC" vid="066F" pid="37FF"/></CFG><LIST name="eMMC" desc="Choose eMMC as media"><CMD state="BootStrap" type="boot" body="BootStrap" file ="firmware/u-boot.imx" ifdev="MX6ULL">Loading U-boot</CMD><CMD state="BootStrap" type="load" file="firmware/zImage" address="0x80800000"loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6SL MX6SX MX7D MX6UL MX6ULL">Loading Kernel.</CMD><CMD state="BootStrap" type="load" file="firmware/%initramfs%" address="0x12C00000"loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6Q MX6D">Loading Initramfs.</CMD><CMD state="BootStrap" type="load" file="firmware/%initramfs%" address="0x83800000"loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6SL MX6SX MX7D MX6UL MX6ULL">Loading Initramfs.</CMD><CMD state="BootStrap" type="load" file="firmware/imx6ull-14x14-evk.dtb" address="0x83000000"loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6ULL">Loading device tree.</CMD><CMD state="BootStrap" type="jump" > Jumping to OS image. </CMD><!-- create partition --><CMD state="Updater" type="push" body="send" file="mksdcard.sh.tar">Sending partition shell</CMD><CMD state="Updater" type="push" body="$ tar xf $FILE "> Partitioning...</CMD><CMD state="Updater" type="push" body="$ sh mksdcard.sh /dev/mmcblk%mmc%"> Partitioning...</CMD><!-- burn uboot --><CMD state="Updater" type="push" body="$ dd if=/dev/zero of=/dev/mmcblk%mmc% bs=1k seek=768 conv=fsync count=8">clear u-boot arg</CMD><!-- access boot partition --><CMD state="Updater" type="push" body="$ echo 0 > /sys/block/mmcblk%mmc%boot0/force_ro">access boot partition 1</CMD><CMD state="Updater" type="push" body="send" file="files/u-boot.imx" ifdev="MX6ULL">Sending u-boot.bin</CMD><CMD state="Updater" type="push" body="$ dd if=$FILE of=/dev/mmcblk%mmc%boot0 bs=512 seek=2">write U-Boot to sd card</CMD><CMD state="Updater" type="push" body="$ echo 1 > /sys/block/mmcblk%mmc%boot0/force_ro"> re-enable read-only access </CMD><CMD state="Updater" type="push" body="$ mmc bootpart enable 1 1 /dev/mmcblk%mmc%">enable boot partion 1 to boot</CMD><!-- create fat partition --><CMD state="Updater" type="push" body="$ while [ ! -e /dev/mmcblk%mmc%p1 ]; do sleep 1; echo \"waiting...\"; done ">Waiting for the partition ready</CMD><CMD state="Updater" type="push" body="$ mkfs.vfat /dev/mmcblk%mmc%p1">Formatting rootfs partition</CMD><CMD state="Updater" type="push" body="$ mkdir -p /mnt/mmcblk%mmc%p1"/><CMD state="Updater" type="push" body="$ mount -t vfat /dev/mmcblk%mmc%p1 /mnt/mmcblk%mmc%p1"/>	<!-- burn zImage --><CMD state="Updater" type="push" body="send" file="files/zImage">Sending kernel zImage</CMD><CMD state="Updater" type="push" body="$ cp $FILE /mnt/mmcblk%mmc%p1/zImage">write kernel image to sd card</CMD><!-- burn dtb --><CMD state="Updater" type="push" body="send" file="files/imx6ull-14x14-evk.dtb" ifdev="MX6ULL">Sending Device Tree file</CMD><CMD state="Updater" type="push" body="$ cp $FILE /mnt/mmcblk%mmc%p1/imx6ull-14x14-evk.dtb" ifdev="MX6ULL">write device tree to sd card</CMD><!-- burn m4 demo bins--><CMD state="Updater" type="push" body="$ umount /mnt/mmcblk%mmc%p1">Unmounting vfat partition</CMD><!-- burn rootfs --><CMD state="Updater" type="push" body="$ mkfs.ext3 -F -E nodiscard /dev/mmcblk%mmc%p2">Formatting rootfs partition</CMD><CMD state="Updater" type="push" body="$ mkdir -p /mnt/mmcblk%mmc%p2"/><CMD state="Updater" type="push" body="$ mount -t ext3 /dev/mmcblk%mmc%p2 /mnt/mmcblk%mmc%p2"/><CMD state="Updater" type="push" body="pipe tar -jxv -C /mnt/mmcblk%mmc%p2" file="files/rootfs.tar.bz2" ifdev="MX6UL MX7D MX6ULL">Sending and writting rootfs</CMD><CMD state="Updater" type="push" body="frf">Finishing rootfs write</CMD><CMD state="Updater" type="push" body="$ umount /mnt/mmcblk%mmc%p2">Unmounting rootfs partition</CMD><CMD state="Updater" type="push" body="$ echo Update Complete!">Done</CMD></LIST>
</UCL>

4、启动测试
经过测试,uboot可以运行,但是Linux内核没启动。

U-Boot 2016.03 (Feb 04 2025 - 19:07:16 +0800)CPU:   Freescale i.MX6ULL rev1.1 69 MHz (running at 396 MHz)
CPU:   Industrial temperature grade (-40C to 105C) at 54C
Reset cause: POR
Board: MX6ULL MY EMMC
I2C:   ready
DRAM:  512 MiB
MMC:   FSL_SDHC: 0, FSL_SDHC: 1
*** Warning - bad CRC, using default environmentDisplay: TFT4384 (800x480)
Video: 800x480x24
In:    serial
Out:   serial
Err:   serial
switch to partitions #0, OK
mmc1(part 0) is current device
Net:   FEC1
Error: FEC1 address not set.Normal Boot
Hit any key to stop autoboot:  0 
switch to partitions #0, OK
mmc1(part 0) is current device
switch to partitions #0, OK
mmc1(part 0) is current device
reading boot.scr
** Unable to read file boot.scr **
reading zImage
5582792 bytes read in 139 ms (38.3 MiB/s)
Booting from mmc ...
reading imx6ull-14x14-evk.dtb
** Unable to read file imx6ull-14x14-evk.dtb **
Kernel image @ 0x80800000 [ 0x000000 - 0x552fc8 ]Starting kernel ...

从图 39.5.3.1 可以看出,在读取“imx6ull-14x14-evk.dtb”这个设备树文件的时候出错了。重启 uboot,进入到命令行模式,输入如下命令查看 EMMC 的分区 1 里面有没有设备树文件
//切换到 EMMC

mmc dev 1 

//输出 EMMC1 分区 1 中的所有文件

ls mmc 1:1 
=>  ls mmc 1:1
Unknown command '历ls' - try 'help'
=> mmc dev 1
switch to partitions #0, OK
mmc1(part 0) is current device
=> ls mmc 1:15582792   zimage 36274   imx6ull-my-emmc.dtb 2 file(s), 0 dir(s)=> U-Boot 2016.03 (Feb 04 2025 - 19:07:16 +0800)CPU:   Freescale i.MX6ULL rev1.1 69 MHz (running at 396 MHz)
CPU:   Industrial temperature grade (-40C to 105C) at 54C
Reset cause: POR
Board: MX6ULL MY EMMC
I2C:   ready
DRAM:  512 MiB
MMC:   FSL_SDHC: 0, FSL_SDHC: 1
*** Warning - bad CRC, using default environmentDisplay: TFT4384 (800x480)
Video: 800x480x24
In:    serial
Out:   serial
Err:   serial
switch to partitions #0, OK
mmc1(part 0) is current device
Net:   FEC1
Error: FEC1 address not set.Normal Boot
Hit any key to stop autoboot:  0 
=> fatls
fatls - list files in a directory (default /)Usage:
fatls <interface> [<dev[:part]>] [directory]- list files from 'dev' on 'interface' in a 'directory'
=> fatls mmc 1:15582792   zimage 36274   imx6ull-my-emmc.dtb 2 file(s), 0 dir(s)=> 

可以看出,uboot读取的dtb文件名为imx6ull-14x14-evk.dtb。实际的dtb文件名为:
imx6ull-my-emmc.dtb 。所以要修改bootcmd命令。内容如下:

setenv bootcmd 'mmc dev 1;fatload mmc 1:1 80800000 zImage;fatload mmc 1:1 83000000 imx6ull-my-emmc.dtb;bootz 80800000 - 83000000'
saveenv 

设置好以后可以启动系统,

但是根文件系统加载错误,原因是bootargs设置错误,重新设置bootargs:

setenv bootargs 'console=ttymxc0,115200 root=/dev/mmcblk1p2 rootwait rw' 
saveenv 

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

可以看出 eth0 好 eth1 都存在,既然存在我们就打开,以打开 eth0 网卡为例,输入如下命令打开 eth0:

ifconfig eth0 up 
ifconfig 

接下来就是个 eth0 设置 IP 地址,如果你的开发板连接的路由器,那么可以通过路由器自动分配 IP 地址,命令如下:
//通过路由器分配 IP 地址

udhcpc -i eth0

如果你的开发板连接着电脑,那么就可以手动设置 IP 地址,比如设置为 192.168.1.251,命如下:
//设置 IP 地址和子网掩码

ifconfig eth0 192.168.1.251 netmask 255.255.255.0 

//添加默认网关

route add default gw 192.168.1.1

推荐大家将开发板连接到路由器上,设置好 IP 地址以后就可以测试网络了,比如 ping 一下电脑 IP 地址,或者 ping 一下百度官网。
每次开机以后都要自己手动打开网卡,然后手动设置 IP 地址也太麻烦了,有没有开机以后自动启动网卡并且设置 IP 地址的方法呢?肯定有的,我们将打开网卡,设置网卡 IP 地址的命令添加到/etc/init.d/rcS 文件中就行了,完成以后的 rcS 文件内容如下所示:

#!/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin:$PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/lib:/usr/lib
export PATH LD_LIBRARY_PATH#net setup 2025.3.25
ifconfig eth0 up
#udhcpc -i eth0
ifconfig eth0 192.168.31.50 netmask 255.255.255.0
route add default gw 192.168.31.1mount -a
mkdir /dev/pts
mount -t devpts devpts /dev/ptsecho /sbin/mdev > /proc/sys/kernel/hotplug
mdev -s#cd /drivers
#./hello &
#cd /

文章转载自:

http://XBY2TbBF.bnLkc.cn
http://wFfjCLSe.bnLkc.cn
http://TnB3xaZr.bnLkc.cn
http://tHFtSntL.bnLkc.cn
http://DH0E6DBW.bnLkc.cn
http://sWtOOYJq.bnLkc.cn
http://YjFS6Ydp.bnLkc.cn
http://zLZQzddo.bnLkc.cn
http://tugUDvfU.bnLkc.cn
http://ilDm1xS5.bnLkc.cn
http://KmvAS7gD.bnLkc.cn
http://PFiRE6i5.bnLkc.cn
http://QLVt35xk.bnLkc.cn
http://J9gHzf3N.bnLkc.cn
http://91fJmjaU.bnLkc.cn
http://AHdcM8qv.bnLkc.cn
http://X8xjCbej.bnLkc.cn
http://UnqlbJuA.bnLkc.cn
http://FCqC852j.bnLkc.cn
http://5VstZQtO.bnLkc.cn
http://OnwPIKTY.bnLkc.cn
http://RZijpOwy.bnLkc.cn
http://NswfBMUv.bnLkc.cn
http://5DBJcFfA.bnLkc.cn
http://HXUg7VTE.bnLkc.cn
http://cSRdj0JH.bnLkc.cn
http://bwL40chj.bnLkc.cn
http://ayND0YlQ.bnLkc.cn
http://Yn3dSnRA.bnLkc.cn
http://CSmbaUDD.bnLkc.cn
http://www.dtcms.com/wzjs/720767.html

相关文章:

  • 免费空间访客100个网站网站开发教程H5
  • 模特网站模板wordpress 登陆样式
  • 建网站需要的设备免费涨1000粉丝网站
  • 设计类电子书网站三字顺口公司名字
  • 网站开发与网站运营企业网站必备模块
  • 旅行做攻略的网站最好网站开发公司电话
  • 从化区建设局网站wordpress当前时间
  • 物流企业网站建设规划书网站logo显示
  • 网站建设优化制作公司合肥市城乡建设局和住建局官网
  • wordpress建站网站设置为起始页
  • 建设工程规范发布网站wordpress 教学培训
  • 学习网站开发多少钱东莞材料网站建设
  • 网站优化 套站如何用服务器建设网站
  • 谢岗东莞网站建设做网站的作品思路及步骤
  • 网站服务器怎么打开广告投放效果评估
  • 如何做好网站优化广告联盟挂机赚钱
  • 大连做优化网站哪家好南宁品牌网站建设公司
  • 网站建设实训报告目的邯郸网站建设市场
  • photoshop画简单网站公司flash网站模板
  • 学校网站框架台州建设网站
  • 创建网站英语建站必须要域名吗
  • 点餐网站模板 手机端济南建筑工程网
  • 网站建设哪家好采用苏州久远网络手机网站自动跳转代码
  • 创建个人网站的流程做go分析和kegg分析网站
  • 贵阳市住房和城乡建设厅网站oa办公系统官网
  • 外贸建站用什么平台好怎么才能把网站优化做好
  • 狮山网站开发厦门电商网站
  • 网站建设上海网站建设公司网站关键词怎样做优化排名
  • 建一个营销网站的步骤网络服务合同定义
  • 做网站图片素材在线编辑购门网站建设