加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

通过JLink烧录Nor/NandFlash

发布时间:2020-12-15 18:16:47 所属栏目:百科 来源:网络整理
导读:转自:http://blog.chinaunix.net/uid-24708340-id-3250960.html 通过JLink烧录Nor/NandFlash? JLINK 可以方便的操作 CPU ,但不能操作 Nand Flash ,烧写 Nand Flash 只是从理论上能够达到,但是还没有人直接实现这点(韦东山好像做了一个,我没用过)。 本文
转自: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间距的20pin14pin,10pinJTAG接口,针对具体的板子做好转接线或跳线

2.运行J-Link commander(经测试,Setup_JLinkARM_V410i这个版本兼容性较好)

?J-Link commander启动界面如下图,(若没有接测到CPU,就在里面执行usb命令连接JLink,再执行r命令识别处理器)

3.下载运行特制的程序

由于SDRAM/DDR使用前需要经过初始化,所以利用s3c2451内部8KSRAM,先运行一段小程序初始化内存。

然后再下载大点程序,比如U-boot到内存运行,它将实现对nor/nand的操作。

1).speed 12000??? //设置TCK12M,下载程序时会很快,但实际应用中设置为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-bootnor/nand进行操作。

这是最近调试NandFlash过程中,用到Jlink的一个笔记,打通了JLink这个工具,调试nand就方便了,s3c2451平台,NandFlash已经调试成功,Nor没测试过,但U-boot已经在内存中跑起来,Nor的烧写自然不在话下了。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读