把镜像做好了 要跑回XP下 刷系统 很是麻烦
到处找在LINUX 下 替换的2个工具 超级终端 和 USB 工具 DNW
1。首先 超级终端 我用的是 Gtkterm 感觉界面还可以 进去后 点下 configration -port 改成15200 OK
然后2440 用NORM 启动 界面如下 :
再看下 linux 启动好后的 后台 界面 很是舒服
2。下载Linux下DNW的PC端USB驱动和写入工具
下载地址: http://arm9home.com/bbs/job.php?action=download&pid=tpc&tid=817&aid=86
文件名: dnw_linux.zip
下载后把后缀名改成.tgz
#或者搜索 linux dnw
编译PC端USB驱动和写入工具
2.1 解压缩
$ tar xzvf /home/haozi/dnw_linux.tgz
dnw_linux/
dnw_linux/secbulk/
dnw_linux/secbulk/Makefile
dnw_linux/secbulk/secbulk.c
dnw_linux/dnw/
dnw_linux/dnw/dnw.c
其中secbulk.c是PC端USB驱动, dnw.c是写入工具
2.2 编译并加载secbulk.c内核模块
$cd secbulk
$make -C /lib/modules/`uname -r`/build M=`pwd` modules
编译成功后在当前目录下可以看到secbulk.ko
alex@alex-desktop:~/project3/qq2440/dnw_linux/dnw_linux/secbulk$ ls
Makefile
用insmod命令加载模块,这需要root权限
$sudo insmod ./secbulk.ko
加载后用dmesg命令可以看到模块已经成功加载
[
[
2.3 编译dnw写入工具
$cd dnw
$gcc -o dnw dnw.c
编译成功后生成可执行档dnw
3 。使用DNW下载
3.1 启动开发板,进入Supervivi,并将开发板和PC用USB电缆连接,此时用dmesg命令可以看到secbulk驱动加载:
[
[
[
[
3.2 此时可以用supervivi进行USB下载,vivi上步骤请参考用户手册,当出现“USB host is connected. Waiting a download.”时,在PC端Linux上用dnw工具写入要下载的文件
$sudo ./dnw /path/to/what/you/want/download
#此处使用命令写入,无界面
具体命令见下
写入环境如下
root@haozi-desktop:/home/haozi/桌面/dnw_linux/dnw# sudo ./dnw /home/haozi/ruanjian/linux/supervivi-128M
file name : /home/haozi/ruanjian/linux/supervivi-128M
file size : 253912 bytes
Writing data...
100% 253922 bytes OK
root@haozi-desktop:/home/haozi/桌面/dnw_linux/dnw# sudo ./dnw /home/haozi/ruanjian/linux/zImage_T35
file name : /home/haozi/ruanjian/linux/zImage_T35
file size : 2022348 bytes
Writing data...
100% 2022358 bytes OK
root@haozi-desktop:/home/haozi/桌面/dnw_linux/dnw# sudo ./dnw /home/haozi/ruanjian/linux/root_qtopia-128M.img
file name : /home/haozi/ruanjian/linux/root_qtopia-128M.img
file size : 58487616 bytes
Writing data...
26% 58487626 bytes OK
(前面的supervivi 和内核 写的时候 还可以 后面的 QT文件系统 写入的时候 速度超级慢 文件大了点)
#$sudo insmod ./secbulk.ko 为加载模块进内核
开机的时候不会自动加载,这样每次都要先加载才可以使用,此时将其加入开机脚本,
使其得到自动加载,编辑/etc/init.d/rc.local 在最后加上 insmod /所在路径/secbulk.ko。
gedit /etc/init.d/rc.local
insmod/home/haozi/桌面/dnw_linux/secbulk/secbulk.ko
#调用dnw时只能在当前目录使用./dnw执行,对此情况,将dnw添加到/usr/local/sbin中,这样可以在
任何目录,使用
至此 在linux 下刷机完成