通过JLink烧录Nor/NandFlash
转自:http://blog.chinaunix.net/uid-24708340-id-3250960.html
通过JLink烧录Nor/NandFlash?
JLINK可以方便的操作CPU,但不能操作Nand Flash,烧写Nand Flash只是从理论上能够达到,但是还没有人直接实现这点(韦东山好像做了一个,我没用过)。 本文使用一个间接方法来烧录Nand Flash: 原理:JLink可以方便的读写内存、启动程序,那么可以把一个特制的程序(比如u-boot)下载到开发板上的SDRAM去,并运行它,然后使用这个程序来烧写Nand。 烧写步骤: 1.链接硬件 市面上的JLink大多只支持2.54mm间距的20pin,14pin,10pin的JTAG接口,针对具体的板子做好转接线或跳线 2.运行J-Link commander(经测试,Setup_JLinkARM_V410i这个版本兼容性较好) ?J-Link commander启动界面如下图,(若没有接测到CPU,就在里面执行usb命令连接JLink,再执行r命令识别处理器)。 3.下载运行特制的程序 由于SDRAM/DDR使用前需要经过初始化,所以利用s3c2451内部8K的SRAM,先运行一段小程序初始化内存。 然后再下载大点程序,比如U-boot到内存运行,它将实现对nor/nand的操作。 1).speed 12000??? //设置TCK为12M,下载程序时会很快,但实际应用中设置为12M,反而不稳定,v410版本默认的是1M,速度也够快,因此我采用默认值,不执行此命令 2)下载init.bin,这是用来初始化SDRAM的小程序(可以简单的截取u-boot的前8K) ①如果是NAND启动: loadbin d:init.bin 0 setpc 0 g ②如果是Nor启动 loadbin e:init.bin 0x40000000 setpc 0x40000000 g ③下载特制的u-boot(起始地址与正常使用的分开,不要重叠,比如我的是0x32000000) h? //查看寄存器状态 loadbin d:u-boot.bin 0x32000000 setpc 0x32000000 g 到这u-boot就正常启动了(在串口中查看),然后可以通过U-boot对nor/nand进行操作。 这是最近调试NandFlash过程中,用到Jlink的一个笔记,打通了JLink这个工具,调试nand就方便了,s3c2451平台,NandFlash已经调试成功,Nor没测试过,但U-boot已经在内存中跑起来,Nor的烧写自然不在话下了。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |