使用JLink烧写bin文件到S3c2440

本文介绍了一种使用JLink V8下载init.bin和u-boot.bin到Mini2440板子的方法。步骤包括:1.下载init.bin并运行;2.下载u-boot.bin到SDRAM并运行;3.使用u-boot命令将自身写入NandFlash或NorFlash。文章详细讲解了JLink命令的使用,如r--reset、h--halt、loadbin和setpc。

我自己有一个Mini2440的板子,我学习了Bootloader这一节,想做一下实验。

    很可惜,我只有笔记本电脑,不带并口的。不过我有一个JLinkV8,听网友们说可以有它来下载程序。

 

    网上有不少的文章讲如何使用JLink烧程序到Mini2440,我总结了一下,主要的步聚如下:

    (1)下载init.bin文件,并运行。它能将SDRAM配置好。

    (2)下载u-boot.bin文件到SDRAM内存地址上,并运行它。

    (3)使用u-boot命令将自身写到NandFlash或NorFlah。

 

    首先要安装JLink驱动,然后就是正确的连线,最后是给Mini2440上电。

打开J-Link Commander。

    

    以上显示,是正常连接的。

 

    我在网上下载了一个init.bin文件。  init.zip  提取其init.bin文件。

    下面我简单讲一下,我用到的几个jlink命令:

  • r -- reset, 复位命令
  • h -- halt, 停机,也有暂停的功能
  • loadbin

    -- 下载filename文件到地址上address

  • setpc

    -- 设置PC的值

 

在执行J-Link命令之前,先执行:

     > speed 12000

     提高通信速度,不然后面下载程序会很慢。

 

(1)下载init.bin文件,在J-Link Commander执行以下命令:

     > r

     > h

     > loadbin e:\init.bin 0x40000000

     > setpc 0x40000000

     > g

     执行完上述命令之后,我们的目标板就从0x40000000地址上开始执行。如果看到Mini2440板子上的4个LED开始闪烁,那就说明init.bin程序在目标板中运行起来了。

    这里我有一个问题,为什么要下载到0x40000000地址上呢?既然不是SDRAM,这个地址上是什么存储器?请大师解答

 

(2)然后下载我们的u-boot.bin文件到SDRAM中进行运行。

     > h

     > loadbin e:\u-boot.bin 0x33f80000

     > setpc 0x33f80000

     > g

     这里我说明一下为什么是0x33f80000,因为在U-Boot中已定义了U-Boot终端是运行在这个地址。执行完J-Link命令之后,我们就听到一声蜂鸣器声,并可以在Mini2440连出来的串口终端上看到U-Boot输出的信息:

     

     这已说明刚下载的U-Boot已经运行起来了。

 

(3)接下来,就是用U-Boot将自己写入NandFlash或NorFlash

     首先,重新导入u-boot.bin文件到0x30000000地址上。

     > h

     > loadbin e:\u-boot.bin 0x30000000

     > g

 

     然后,就是在串口终端中输入Uboot命令,将0x30000000内存的数据分别写入NandFlash或NorFlash。

 

     我只完成了将U-Boot烧入NandFlash的操作,至于NorFlash遇到了点麻烦。

     我先讲NandFlash。如下图所示,输入命令:

     

 

     然后拔了J-Link,选择NandFlash,重新启动。就会在串口终端看到NandFlash的启动信息。

     

 

    以上是NandFlash的烧录,下面我讲述一下烧写NorFlash的过程。与NandFlash的烧录过程差不多,只有U-Boot命令不一样:

    

    错误应该出现在“erase 0 3ffff”命令上。看网友执行的结果不是这样的。请大师指点一下……

 

    虽然没有完全成功,但还要学到了如何烧到NandFlash,也算是一点小成说。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值