Attention:本文写的可能不一定对,可能本人理解错误。本文不一定适用你的开发板,哪怕同型号的,并且烧写的是韦东山老师的嵌入式linux里面使用的uboot.bin,so try at your own risk!
网上好多地方说J-Link无法正确烧写uboot.bin到NorFlash,需要使用openJtag或者使用JTAG(需要连接并口),我没有openJtag,只有J-Link v8和一个JTAG-MINI。所以我首先尝试使用连接上JTAG-MINI到我到LPT1(并口),然后使用H-JTAG来烧写uboot.bin。按照Friendly-ARM 官方的指导手册配置一下H-JTAG,但是H-JTAG无法切换到LPT模式(并口模式),一直是USB模式。无奈之下百度J-Link烧写uboot.bin到NorFlash
的方法,找到了一篇J-Link烧写NorFlash........可是烧写的不是uboot.bin............好吧,我表示我没仔细看题目,只是在看步骤。按照步骤来了,当烧写到30%的时候,我看了看网页,知道了真相,后惶恐不已,觉得会报错,但是.......最后成功了,只是提示CRC校验错误。不过这个没有问题。接上DB9串口,选择NorFlash启动,超级终端上显示的是uboot的界面,但是提示有个错误,百度之,知道是环境变量问题,然后根据百度到的韦东山uboot相关的环境变量问题,保存了环境变量,然后擦除掉NandFlash,起始地址是0x00000000,大小是128M(我的NAND
FLash 是128M),很快擦除完成,后再次保存环境变量,至此,使用J-Link烧写uboot.bin到NorFlash成功。
J-Link烧写uboot.bin到NorFlash:
开始菜单中找到J-Link Commander,打开,输入speed 12000回车。
开始菜单中找到J-Flash ARM,打开,然后File->open data file...选中你的uboot.bin,然后打开,start address默认是0不用改,点击OK确认,然后Target->Connect(你要需保证你开发板是开关打开,选中NorFlash启动),然后在J-Flash的LOG窗口,显示
- J-Link found 1 JTAG device. Core ID: 0x0032409D (ARM9)
- Reading CFI info ...
- CFI info read successfully
- Connected successfully
连上了,然后Target->Auto就会执行擦出NorFlash、烧写uboot.bin到NorFlash的操作了,漫长等待,如果没出错,那么烧写成功。
倘若烧写uboot.bin失败,百度J-LINK间接烧写S3C2440 S3C2410 NORFLASH NANDFLASH。至于超级终端中报错的话,哪里报错,百度一下,大概就是环境变量问题和NAND Flash的问题,NAND Flash还是擦除一下吧。