使用J-Link v8和u-boot烧写裸机程序到s3c2440的nand flash(这里假设nor flash已经烧进了u-boot)
2012-11-03 20:02
387 查看
这里是假设了nor flash 已经烧进了u-boot,如果没有烧进u-boot,也可以先通过J-Link commander把对目标板SDRAM的初始化init.bin文件加载进SRAM(s3c2440里面的steppingstone,如果是nor启动方式的话,这个steppingstone被映射到0x40000000上,如果从nand启动的话,被映射到0x0地址上.然后设置PC值并运行它,这样SDRAM就被初始化好了.然后把u-boot.bin加载到SDRAM的某个地址处,只要不跟其他需要用到的空间重叠就行,运行u-boot,之后的操作跟下面基本一样.
1.把J-Link连接上PC机跟目标板,确保J-link驱动能正常使用.把串口连上PC机跟目标板,确保能正常通信.之后把开发板拨到nor flash启动,开启电源.因为nor flash已经烧进了u-boot,串口输出如下:
![](http://img.my.csdn.net/uploads/201211/03/1351944260_8095.JPG)
2.因为nor flash启动时已经把SDRAM给初始化好了,所以我们可以使用J-Link commander来把我们要烧到nand flash的bin文件加载到内存0x30000000处:
![](http://img.my.csdn.net/uploads/201211/03/1351944264_6917.jpg)
3.打开J-Link Commander后,如果提示如下,说明J-Link正确connect上了目标板:
![](http://img.my.csdn.net/uploads/201211/03/1351944271_2036.jpg)
4.把JTAG速度设置为12M这样会更快点,然后使用loadbin命令把我们要加载到内存的bin文件加载进去,然后g一下.(这里需要注意的是:不要去运行它,因为如果运行后程序无法停止,那么后续的操作就无法进行了,虽然说h命令可以停止cpu运行,但是不知道为什么h之后后续还是有些问题)
实践如下:
![](http://img.my.csdn.net/uploads/201211/03/1351944278_7289.jpg)
以上在J-Link commander的命令如下:
speed12000
loadbinF:\VM_Share\arm_test\nand_led\nand_led.bin 0x30000000
g
5.之后转到u-boot命令下:
①选择q,进入u-boot命令行
②根据之前查看到文件的大小,先擦除最小块数的nandflash.我的nand flash每一块大小是2048Byte,因为读写是以页为单位,所以我直接擦除一个块,大小为0x200000.
③之后把0x30000000处的内容拷贝到nand flash 的第一个页里.
在u-boot里命令如下:
nanderase 0 200000
nandwrite.jffs2 30000000 0 200000
具体实现如下:
1.把J-Link连接上PC机跟目标板,确保J-link驱动能正常使用.把串口连上PC机跟目标板,确保能正常通信.之后把开发板拨到nor flash启动,开启电源.因为nor flash已经烧进了u-boot,串口输出如下:
2.因为nor flash启动时已经把SDRAM给初始化好了,所以我们可以使用J-Link commander来把我们要烧到nand flash的bin文件加载到内存0x30000000处:
![](http://img.my.csdn.net/uploads/201211/03/1351944264_6917.jpg)
3.打开J-Link Commander后,如果提示如下,说明J-Link正确connect上了目标板:
![](http://img.my.csdn.net/uploads/201211/03/1351944271_2036.jpg)
4.把JTAG速度设置为12M这样会更快点,然后使用loadbin命令把我们要加载到内存的bin文件加载进去,然后g一下.(这里需要注意的是:不要去运行它,因为如果运行后程序无法停止,那么后续的操作就无法进行了,虽然说h命令可以停止cpu运行,但是不知道为什么h之后后续还是有些问题)
实践如下:
![](http://img.my.csdn.net/uploads/201211/03/1351944278_7289.jpg)
以上在J-Link commander的命令如下:
speed12000
loadbinF:\VM_Share\arm_test\nand_led\nand_led.bin 0x30000000
g
5.之后转到u-boot命令下:
①选择q,进入u-boot命令行
②根据之前查看到文件的大小,先擦除最小块数的nandflash.我的nand flash每一块大小是2048Byte,因为读写是以页为单位,所以我直接擦除一个块,大小为0x200000.
③之后把0x30000000处的内容拷贝到nand flash 的第一个页里.
在u-boot里命令如下:
nanderase 0 200000
nandwrite.jffs2 30000000 0 200000
具体实现如下:
![](http://img.my.csdn.net/uploads/201211/03/1351944290_2259.jpg)
相关文章推荐
- 程序连接如何使用J-Link V8 烧写程序到NOR Flash
- 使用u-boot的tftp下载功能烧写程序到Nand Flash ——韦东山嵌入式Linux学习笔记09
- 使用u-boot的USB下载功能烧写程序到Nand Flash ——韦东山嵌入式Linux学习笔记06
- 使用J-Link烧写一U-boot的烧写+裸板程序烧写(JZ2440-S3C2440)
- 如何使用J-Link V8 烧写程序到NOR Flash
- 移植u-boot-2011.03到S3C2440(utu2440)的方法与步骤###5.使用JLINK间接烧写u-boot至FLASH的方法与步骤
- U-boot移植 (v2012.04.1 S3C2440平台) (三) Nor flash Nand flash 驱动支持
- Ubuntu12.04下使用Jlink Command烧写u-boot到mini2440 nand flash
- 如何使用J-Link V8 烧写程序到NandFlash
- ADS使用入门及烧写裸机程序时详细设置
- S3C2440 windows下使用jlink gdbserver,arm-none-eabi-gdb进行裸机程序编写调试
- mini2440 使用 J-Link V8 直接烧写 Nor flash
- S3c2440如何利用JLINK烧写U-boot到NAND Flash中
- s3c2440的Nand flash裸机程序
- JZ2440如何烧写裸板程序,在 Linux 下使用 dnw 和 u-boot 烧写系统 和 用Tftp 下载
- mini2440 使用 J-Link V8 直接烧写 Nor flash
- 使用 NOR Flash 中的supervivi 下载裸机程序到NandFlash
- 使用MiniTools烧写裸机程序
- OK6410 烧写裸机程序到 nand flash
- 移植u-boot-2011.03到S3C2440(utu2440)的方法与步骤###5.使用JLINK间接烧写u-boot至FLASH的方法与步骤