nand.h

来自「arm9的bootloader大家下载解压缩即可看到」· C头文件 代码 · 共 39 行

H
39
字号
#include "2410addr.h"
#include "def.h"
#define NF_CMD(cmd)	{rNFCMD=cmd;}
#define NF_ADDR(addr)	{rNFADDR=addr;}	
#define NF_nFCE_L()	{rNFCONF&=~(1<<11);} //Nand Flash Chip Enable
#define NF_nFCE_H()	{rNFCONF|=(1<<11);}  //Nand Flash Chip Disable
#define NF_RSTECC()	{rNFCONF|=(1<<12);} //Initialize ECC
#define NF_RDDATA() 	(rNFDATA)
#define NF_WRDATA(data) {rNFDATA=data;}

#define NF_WAITRB()    {while(!(rNFSTAT&(1<<0)));} 
	    //wait tWB and check F_RNB pin.   

#define ID_K9S1208V0M	0xec76

#define NAND_SECTOR_SIZE	512
#define NAND_BLOCK_MASK		(NAND_SECTOR_SIZE - 1)


#if 1
// HCLK=100Mhz
#define TACLS		0//0  //1clk(0ns) 
#define TWRPH0		3//2  //3clk(25ns)
#define TWRPH1		0//0  //1clk(10ns)  //TACLS+TWRPH0+TWRPH1>=50ns
#else
// HCLK=50Mhz
#define TACLS		0  //1clk(0ns)
#define TWRPH0		1  //2clk(25ns)
#define TWRPH1		0  //1clk(10ns)
#endif

// 1block=(512+16)bytes x 32pages
// 4096block

// A[23:14][13:9]
//  block   page

extern void __RdPage512(U8 *bufPt); 
static void wait_idle(void);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?