tianming 发表于 2013-8-22 12:33:00

求解~用Jlink烧写uboot至mini2440的nor flash,串口终端无任何显示

本帖最后由 tianming 于 2013-8-22 12:37 编辑

=====下面这段是从网上拷贝的========================================================
我自己有一个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> -- 下载filename文件到地址上address
setpc <address> -- 设置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已经运行起来了。
==============================结束======================================================
我按照上面的说明去做,前面几步都没有问题,但是在听到一声蜂鸣器响声之后,再无任何反应了,串口终端没有任何显示信息。我的板子也是mini2440
希望大家帮忙解答一下,非常感谢~~~
页: [1]
查看完整版本: 求解~用Jlink烧写uboot至mini2440的nor flash,串口终端无任何显示