Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1818750
  • 博文数量: 473
  • 博客积分: 13997
  • 博客等级: 上将
  • 技术积分: 5953
  • 用 户 组: 普通用户
  • 注册时间: 2010-01-22 11:52
文章分类

全部博文(473)

文章存档

2014年(8)

2013年(38)

2012年(95)

2011年(181)

2010年(151)

分类: LINUX

2011-09-14 23:06:36

SBC2410/Linux/sbc2410v6_linux-2.4.18_sdk.tgz(友善之臂的开发光盘)
安装烧写工具: Jflash-s3c2410
# tar zxvf sbc2410v6_linux-2.4.18_sdk.tgz
# cd opt/FriendlyARM/SBC2410/Jflash/
# cp Jflash-s3c2410 /usr/bin
# cd u-boot-1.1.6/
# ls -l u-boot.bin
-rwxr-xr-x 1 root root 112644 2007-09-22 15:02 u-boot.bin
注意: 要root身份执行
Jflash-s3c2410
# Jflash-s3c2410 u-boot.bin /t=5

+------------------------------------+
|     SEC JTAG FLASH(SJF) v 0.11     +
|     modified by MIZI 2002.7.13     +
+------------------------------------+
> flashType=5
> S3C2410X(ID=0x0032409d) is detected.
> K9S1208 is detected. ID=0xec76

K9S1208 NAND Flash JTAG Programmer Ver 0.0
0:K9S1208 Program      1:K9S1208 Pr BlkPage   2: Exit               

Select the function to test :
0

[SMC(K9S1208) NAND Flash Writing Program]

Source size: 0x1b803            <==> 112643 byte

Available target block number: 0~4095
Input target block number:
0
STATUS:Epppppppppppppppppppppppppppppppp
Epppppppppppppppppppppppppppppppp
Epppppppppppppppppppppppppppppppp
Epppppppppppppppppppppppppppppppp
Epppppppppppppppppppppppppppppppp
Epppppppppppppppppppppppppppppppp
Epppppppppppppppppppppppppppppppp
Epppppppppppppppppppppppppppppppp

K9S1208 NAND Flash JTAG Programmer Ver 0.0
0:K9S1208 Program      1:K9S1208 Pr BlkPage   2: Exit               

Select the function to test :
2

注:
(1) 将u-boot.bin烧写到Nand Flash的前111K
(2) 从u-boot源码获知"环境变量"的存放位置及其大小
vi u-boot-1.1.6/include/configs/smdk2410.h
---------------------------------------------

#define CFG_ENV_OFFSET      0x0F0000
#define CFG_ENV_SIZE        0x010000
    环境变量的存放位置:960KB;大小:64KB(Nand Flash第1M的最后64KB中存放环境变量)。这样uImage就应该存放于0x100000 <==> 1MB(从这个位置开始存放内核)




新开发的电路板没有任何程序可以执行,也就不能启动,需要先将u-boot烧写到Flash中。如果主板上的EPROM或者Flash能够取下来,就可以 通过编程器烧写。例如:计算机BIOS就存储在一块256KB的Flash上,通过插座与主板连接。但是多数嵌入式单板使用贴片的Flash,不能取下来 烧写。这种情况可以通过处理器的调试接口,直接对板上的Flash编程。处理器调试接口是为处理器芯片设计的标准调试接口,包含BDM、JTAG和 EJTAG3种接口标准。BDM(Background Debug Mode)主要应用在PowerPC8xx系列处理器上;EJTAG主要应用在MIPS处理器上。这3种硬件接口标准定义有所不同,但是功能基本相同,下 面都统称为JTAG接口。
最简单方式就是通过JTAG电缆,转接到计算机并口连接。这需要在主机端开发烧写程序,还需要有并口设备驱动程序。开发板上电或者复位的时候,烧写程序探 测到处理器并且开始通信,然后把Bootloader下载并烧写到Flash中。这种方式速率很慢,可是价格非常便宜。一般来说,平均每秒钟可以烧写 100~200个字节。
烧写完成后,复位实验板,串口终端应该显示u-boot的启动信息。


 

使用minicom接入单板
--------------------------------------------
# minicom
OPTIONS: I18n
Compiled on Dec 10 2007, 10:36:19.
Port /dev/ttyUSB0

                 Press CTRL-A Z for help on special keys
                                                     
                                                     
                                                     
U-Boot 1.1.4 (Apr 13 2010 - 21:51:22)                

U-Boot code: 31F80000 -> 31F98AA4  BSS: -> 31FA1B44
RAM Configuration:
Bank #0: 30000000 32 MB
Flash: 64 MB
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
SMDK2410 #
SMDK2410 #          

阅读(1114) | 评论(0) | 转发(0) |
0

上一篇:Kvm 网络桥接方案

下一篇:定制 Debian Live

给主人留下些什么吧!~~