主机开发环境: Ubuntu9.10
内核: Linux2.6.22.6(资料光盘-> systems目录)
文件系统: fs_qtopia.yaffs2(资料光盘->bin目录)
开发板:JZ2440
目的:通过SD卡传文件到开发板
其实很简单,就一条挂载命令,为了适应0基础刚入手开发板的同学,写的特别详细。
步骤:
1. JZ2440接上电源,按红色开关启动系统
2. 电脑用数据线连接JZ2440 USB转串口“USB-COM1”
3. 设备管理器找到开发板串口对应电脑的是com 几(笔者的是com3)
4. 打开SecureCRT(在资料光盘->windows工具目录),如下设置连接串口
点确定在串口看到板子的启动信息,然后回车进入SHELL
5、插入带SD卡的读卡器
预装板子已经有UBOOT内核文件系统,已支持常用读卡器、SD卡。系统启动后出现qt界面后插入装有SD卡(笔者用的是8G SandDISK SDHC卡)的读卡器,串口提示如下:
6、.列出分区表
$ fdisk –l
DeviceBoot只有一项,一看便知/dev/sda1就是刚刚插的SD卡
7、挂载SD
$ mount –t vfat/dev/sda1 /mnt
进入mnt目录,看看是否挂载成功,挂载成功后就可以操作SD的文件了。
不用时卸载SD卡
$ cd /
$ umount/mnt
卸载成功,mnt没东西了
注意:上文只考虑了开发板有系统的情况,假设开发板啥都没有。
你需要通过jlink或者eop下载uboot到板子(nand、nor均可)
然后上传linux 2.6.22.6以及补丁到ubuntu,解压打补丁编译:
$ tar xjflinux-2.6.22.6.tar.bz2
$ cd linux-2.6.22.6
$ patch -p1 < ../linux-2.6.22.6_jz2440.patch
$ mv ../4.3寸LCD_mach-smdk2440.carch/arm/mach-s3c2440/mach-smdk2440.c // 替换4.3寸源码
$ cp config_ok .config
$ make uImage
把uImage上传到windows tftp软件所在目录
进入开发板uboot,tftp下载uImage到jz2440,并烧写
先设置网络
set gatewayip 192.168.1.1//设置网关
set netmask 255.255.255.0 //设置子网掩码
set ipaddr 192.168.1.111 //设置uboot阶段的开发板ip
set serverip 192.168.1.170 //设置服务器ip
下载kernel
tftp 30000000 uImage //前提是PING通windows,运行tftp服务器软件
nand erase kernel
nand write.jffs2 30000000 kernel
下载文件系统
tftp 30000000 fs_qtopia.yaffs2
nand erase root
nand write.yaffs 30000000 0x00260000 $(filesize)
设置boot命令用到的bootcmd
set bootcmd nand read.jffs2 0x30007FC0kernel; bootm 0x30007FC0
设置bootargs
setenv bootargs 'root=/dev/mtdblock3noinitrd init=/linuxrc console=ttySAC0,115200 '
save
启动板子
boot
内核系统都有了,重复第5-7步即可。
总结:挂载SD卡最重要的是内核支持该读卡器SD卡,然后找到正确的设备节点挂载。