mini2440裸板烧写u-boot

时间:2022-11-22 17:48:51 作者:壹号 字数:2026字

1.J-Link commander:

如果没有发现检测到CPU,就在里面执行usb命令连接JLink, 再执行r命令识别处理器 (复位)

2.3 下载运行特制的程序

对于S3C2410、S3C2440处理器,它们内部有4K的SRAM, 当使用Nor Flash启动时,地址为0x40000000; 当使用Nand Flash启动时,地址为0。

对于S3C2410、S3C2440开发板,一般都外接64M的SDRAM。SDRAM能被使用之前,需要经过初始化。 所以,先把一个init.bin下载到内部SRAM去运行,它执行SDRAM的初始化;然后再下载一个比较大的程序,比如u-boot到SDRAM去动行,它将实现对Nor、Nand Flash的操作。

以下是在J-Link commander里的命令,假设init.bin、u-boot.bin在e:盘下。 1. speed 12000

2. 下载并运行init.bin,这是用来初始化SDRAM的 2.1 如果是NAND启动:(跳线打到NAND) loadbin e:\init.bin 0

//设置TCK为12M,下载程序时会很快

setpc 0 g

2.2 如果是Nor启动:(跳线打到NOR) loadbin e:\init.bin 0x40000000 setpc 0x40000000 g

3. 下载特制的uboot: h

loadbin e:%u-boot.bin 0x33f80000?链接地址 setpc 0x33f80000 g

同理可以通过J-link下载其他程序文件: h

loadbinyour_file.bin 0x30000000 g

这时,你的文件已经被下载到SDRAM 0x30000000去了。

…… 此处隐藏0字 ……

5.使用u-boot烧写Flash

(1).通过u-boot烧写到Nor Flash: 在u-boot里执行: protect off all // 解锁

erase 0 2ffff // 擦除从0地址开始的大小为0x30000的NOR Flash扇区 (大小为可擦除块的整数倍,可以运行flash info命令查看)

cp.b 0x30000000 0 30000 // 把前面下载到0x30000000的程序烧写到NOR去

(2).通过u-boot烧写到Nand Flash: 在u-boot里执行:

nand erase 0 30000 // 擦除从0地址开始的大小为0x30000的Nnad Flash扇区 nand write.jffs2 30000000 0 30000 // 把前面下载到0x30000000的程序烧写到Nand去

注意,上面用的2ffff、30000等数字是192K,如果你的程序比较小,请自行设置。