H-JTAG V0.9.2 烧录nand flash的方法

来源:互联网 发布:淘宝乐买宝坑 编辑:程序博客网 时间:2024/05/02 05:06

  H-JTAG V0.9.2 烧录nand flash的方法

说明:

      本文以S3C2410的开发板说明用H-JTAG烧录程序到nand flash的方法。

      本文烧录K9F1208的8bit nand flash。

 

1. 到http://www.hjtag.com/download.html下载H-JTAG V0.9.2

2. 安装H-JTAG V0.9.2

3. 连接好硬件运行H-JTAG可以识别CPU的型号

4. 点击菜单Flash->Start H-Flasher

5. 把以下的文本另存为s3c2410.hfc(要根据不同的平台修改,修改方法最后阐述)
------------------------------------------
FLASH SECTION:
NAND-FLASH
S3C2410+K9F1208
MEMORY SECTION:
08-BIT X 1-CHIP
0x0
0x30000000
XTAL SECTION:
NULL
TCK SECTION:
11
11
SCRIPT SECTION:
Setmem+32-Bit+0x53000000+0x00000000
Setmem+32-Bit+0x4A000008+0xFFFFFFFF
Setmem+32-Bit+0x4A00001C+0x000007FF
Setmem+32-Bit+0x4C000000+0x00FFFFFF
Setmem+32-Bit+0x4C000014+0x00000003
Setmem+32-Bit+0x4C000004+0x000A1031
Setmem+32-Bit+0x48000000+0x22141150
Setmem+32-Bit+0x48000004+0x00000700
Setmem+32-Bit+0x48000008+0x00003700
Setmem+32-Bit+0x4800000C+0x00000700
Setmem+32-Bit+0x48000010+0x00000700
Setmem+32-Bit+0x48000014+0x00000C00
Setmem+32-Bit+0x48000018+0x00000700
Setmem+32-Bit+0x4800001C+0x00019001
Setmem+32-Bit+0x48000020+0x00018005
Setmem+32-Bit+0x48000024+0x008C01D3
Setmem+32-Bit+0x48000028+0x000000B1
Setmem+32-Bit+0x4800002C+0x00000030
Setmem+32-Bit+0x48000030+0x00000030
Setmem+32-Bit+0x4C00000C+0x00017D70
PGMOPTION SECTION:
--------------------------------------------

6. 点击菜单Load选择上一步建立的s3c2410.hfc文件

7. 选择第五步Porgramming

8. 点击Check按钮如果可以识别nand flash的型号就可以烧录程序了。

9. Src File:选择要烧录的文件

10.点击Program把文件烧录到nand flash。

11.配置文件的说明:

Setmem+32-Bit+0x53000000+0x00000000
是表示设置s3c2410的寄存器把地址为0x53000000的寄存器设置为0x00000000。
需要设置那些寄存器呢?
如下:
0x53000000=0x00000000   // Wachdog Disable
0x4A000008=0xFFFFFFFF // Interrupt Disable
0x4A00001C=0x000007FF // Sub Interrupt Disable
0x4C000000=0x00FFFFFF // LOCKTIME
0x4C000014=0x00000003 // Setup clock Divider control register
0x4C000004=0x000A1031 // Configure MPLL ( Fin=12MHz, Fout=202MHz )
// mem_config
0x48000000=0x22141150 // BWSCON
0x48000004=0x00000700 // S3C2410_REG_MBC0
0x48000008=0x00003700 // S3C2410_REG_MBC1
0x4800000C=0x00000700 // S3C2410_REG_MBC2
0x48000010=0x00000700 // S3C2410_REG_MBC3
0x48000014=0x00000C00 // S3C2410_REG_MBC4
0x48000018=0x00000700 // S3C2410_REG_MBC5
0x4800001C=0x00019001 // S3C2410_REG_MBC6
0x48000020=0x00018005 // S3C2410_REG_MBC7
0x48000024=0x008C01D3 // S3C2410_REG_REFCON
0x48000028=0x000000B1 // S3C2410_REG_BANKSIZE
0x4800002C=0x00000030 // S3C2410_REG_MRSRB6
0x48000030=0x00000030 // S3C2410_REG_MRSRB7
0x4C00000C=0x00017D70 // S3C2410_REG_CKEN

具体配置请看s3c2410的手册和具体的开发板的配置。