按照国嵌课程在Linux系统下使用dnw软件烧写系统失败,开机白屏。
烧写步骤:
1.保持S2开关拨至nor flash开关处,连接串口线打开串口工具以便观察运行情况,打开电源开关。
2.使用jlink,配置好工程文件,并将supervivi-128M.bin烧写进nor flash中,记得Target->Program前先Target->Erase。
常见错误:开发板上电后串口无输出,检查少写完系统安装辅助软件后,有没有将JTAG线拔下。
3.连接USB下载线到PC机,在虚拟机中Linux系统下安装USB驱动(“insmod”命令),成功安装后即可点亮Linux状态栏USB图标,在SecureCRT窗口下输入"x"选择格式化nand flash ,接着输入"v"可观察到串口数据“USB host is connected. Waiting a download",证明USB下载线与Linux系统正常连接,然后依次输入v-k-y将supervivi-128M(教学视频中提供的)、zImage-p43(根据不同屏幕型号选择不同的文件,开发板自带光盘内的)和rootfs_qtopia_qt4(开发板自带光盘内的)文件烧写到开发板中。
遇到问题:
检查后认为原因可能是最开始位和老师一样使用Samba服务器从Win7上共享文件到Linux下,而是使用Wincp共享的文件,重新使用Samba服务器共享文件后,解决权限问题。
同时应注意若dnw不好使
首先dnw不好使检查下面几个地方1.服务中虚拟机的usb服务是否启动 (控制面板->系统与安全->系统管理工具->服务)
2.开发板应该要进入等待下载的画面
3.dnw 要确定有执行权限 chmod 777 dnw
4.虚拟机点亮usb的图标建议点灭点亮多试两次(右键disconnect、connect)
5.检查usb是否插好(重新拔插一下usb线)
6.老师总共提供两个dnw的驱动,下 载系统请用系统部分的,裸机代码用裸奔第一课的驱动,两个有差别别搞混
7.开发板总共要插两条线连接PC一条是串口线、一条是mini usb的线
4.至此,系统烧录完毕,将S2开关拨至nandflash,给开发板重新上电,一直白屏。
观察启动时的串口数据发现“Kernel panic - not syncing: No init found. Try passing init= option to kernel.”信息,故怀疑是内核和文件系统有问题。曾担心是否因为第一次烧写过程中不小心让开发板断电导致硬盘坏道而导致开机白屏,同时串口信息里也提示有坏块,但查找资料以及询问得知有坏块属正常。故尝试使用mini2440手册里的方式重新烧录系统到开发板中。
注意:如何解决在win7下安装USB下载线驱动,SEC S3C2410X Test B/D驱动出现感叹号的问题?
minitools 必须配合开发板用SuperBoot启动,即需用Jlink重新烧录Superboot2440.bin到nor flash中。
但使用minitools烧写安装之后仍然开机白屏,思考良久,与开发板商家沟通,发现商家配套的光盘内zImage_P43与Superboot2440.bin文件较为过时,使用商家给的最新文件再次烧写后,正常开机。