赞
踩
刚接触JZ2440开发板的通过看视频就知道怎么下载程序和各个开发步骤,但是已经过了好几年,至少快三年了,有些东西也忘记得差不多了,今天稍用很快的速度快进方式看了下视频,回忆起了一点,但不全部看完,此处了根据自己的经验和理解记录,当然为了以后可以快速回忆,因此写下这个博客,当作以后查阅的资料,也帮助一些入门者当参考,有不对的地方欢迎指正提出。另外最后的tftp部分是根据已经整理的资料直接贴上,还没有整理出完整步骤,等后面整理完成在来补充。
一:oflash烧写uboot
如果没有记错在nand falsh 和 nor flash 没有uboot的情况下需要使用oflash下载,这时候只需要接电源和openjtag,连接线如下的,其中的USB线和串口线可以不接
Oflash烧写步骤:
我存放oflash的目录在D盘的D:\Program Files (x86)\oflash下因此需要切换到D盘,在命令行下输入d: 回车
输出cd Program Files (x86)\oflash回车,切换到D:\Program Files (x86)\oflash目录下
二、烧写裸机程序
烧写裸机程序和烧写uboot一样,只是将u-boot.bin换成你自己的xxx.bin
三、使用USB烧写kernel
接好线,
安装所需的USB串口驱动以及openJTAG驱动,还有dnw驱动,dnw驱动不是很好装,可能需要安装很久,另外就是确保已经烧写过了uboot。启动开发板,使用secureCRT连接到开发板,这里使用串口连接,File->connect-> + >serial->下一步->com口根据实际选择配置参数->下一步
按侧面的复位键重新启动开发,在倒计时等于0前按下空格,如果来不及按请重新按复位键,重新启动开发板,然后继续按空格,直到出现下面这个界面,当然截图是截到倒是1秒,只有比0大的数字都可以
输入q,退出菜单,进入参数设置,如果不小心按到其他字母并回车后,可以通过Ctrl+c退出,然后在按q进入Uboot参数配置界面
输入print查看uboot的参数配置情况,我这里已经改过参数因此启动选项里面是nfs启动,如果想要nfs启动就不需要修改了,如果需要从开发板nand flash启动就需要修改,
输入:set bootargs noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0 回车修改参数
输入:save 回车,保存修改后的参数
输入:reset回车 ,系统自动重新启动
回到刚刚,在uboot启动过程倒计时按下空格进入菜单界面
输入k,进入USB烧录状态,这是屏幕提示USB host is connected. Waiting a download
打开dnw,如果dnw驱动已经安装完成,并且USB线等都没有问题的话,dnw上将线USB:OK,否则不会显示OK,
选择USB port->transmit
弹出串口选择all file,如果不选择all file,可能看不到你想要的文件
我的是4.3寸的屏幕因此选择uImage_4.3,点击打开
进入烧写状态,此时进度条一直在走
烧写完成后进度条消失,并且secureCRT会打印出:OK,并进入菜单栏选项,输入r重启,这时重启后又恢复到原来的出处设置了。
四通过tftp烧写内核(以下不完整等以后整理)
烧写内核:
tftp:
tftp 30000000 uImage
nand erase kernel
nand werte.jffs2 30000000 kernel
五:烧写文件系统:
1)dnw方式
dnw:在uboot的菜单中输入y,然后用dnw.exe发送yaffs文件
或者
dnw:
在uboot的菜单中输入j,然后用dnw.exe发送yaffs文件,然后设置参数(rootfstype=jffs2)步骤如下
OpenJTAG> set bootargs noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0
rootfstype=jffs2
OpenJTAG> save
2)tftp方式:
tftp下载:
tftp 30000000 fs_qtoia.yaffs2
nand erase root
nand write.yaffs2 30000000 0x00260000 $(filesize)
或者
tftp 30000000 fs_qtoia.jffs2
nand erase root
nand write.jffs2 30000000 0x00260000 $(filesize)
烧写完成后reset重启开发板
另外附上Uboot环境变量设置:
开发板初始环境变量:
OpenJTAG> print
bootargs=noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0
bootcmd=nand read.jffs2 0x30007FC0 kernel; bootm 0x30007FC0
bootdelay=2
baudrate=115200
ethaddr=08:00:3e:26:0a:5b
netmask=255.255.255.0
mtdids=nand0=nandflash0
mtdparts=mtdparts=nandflash0:256k@0(bootloader),128k(params),2m(kernel),-(root)
ipaddr=192.168.1.99
serverip=192.168.1.100
stdin=serial
stdout=serial
stderr=serial
partition=nand0,0
mtddevnum=0
mtddevname=bootloader
nfs环境变量:
OpenJTAG> print
bootcmd=nand read.jffs2 0x30007FC0 kernel; bootm 0x30007FC0
bootdelay=2
baudrate=115200
ethaddr=08:00:3e:26:0a:5b
ipaddr=192.168.7.17
serverip=192.168.7.11
netmask=255.255.255.0
mtdids=nand0=nandflash0
mtdparts=mtdparts=nandflash0:256k@0(bootloader),128k(params),2m(kernel),-(root)
bootargs=noinitrd root=/dev/nfs nfsroot=192.168.1.102:/work/nfs_root/rootfs ip=192.168.1.99:192.168.1.102:192.168.1.1:255.255.255.0::eth0:off init=/linuxrc console=ttySAC0
stdin=serial
stdout=serial
stderr=serial
partition=nand0,0
mtddevnum=0
mtddevname=bootloader
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。