norflash.h

来自「基于S3C2410和SM501的彩屏控制器程序」· C头文件 代码 · 共 74 行

H
74
字号
#ifndef NORFLASH_H
#define NORFLASH_H

//********************** Including Libs **********************
#include "Comdef.h"
#include "2410.h"



//**************** Structure & Type Definition ****************
typedef volatile unsigned long vu_long;
typedef volatile unsigned short vu_short;


//********************** Macro Definition **********************
#define		NOR_FLASH_SECTOR_SIZE		0x20000		// Nor Flash的扇区大小

//注意:顺序号要连续
#define 	NOR_FLASH_AM29LV320D		1
#define 	NOR_FLASH_AM29LV160D		2
#define 	NOR_FLASH_AM29LV800B		3
#define 	NOR_FLASH_S29GL256N			4

#define TRUE 			1
#define FALSE 			0

#define	CFG_HZ			1562500
#define CFG_FLASH_ERASE_TOUT	(15*CFG_HZ) /* :Timeout for Flash Erase */
#define CFG_FLASH_WRITE_TOUT	(2*CFG_HZ) /* Timeout for Flash Write */

//NORFLASH偏移地址的定义
#define	FLASH_ADDRESS			0x00000000	//定义NORFLASH的起始地址

//NORFLAHS复位引脚
#define	Set_MRST()				( rGPCDAT |= (0x01<<14) )		
#define	Clr_MRST()				( rGPCDAT &= ~(0x01<<14) )					

//NORFLASH的WP引脚
#define	Set_FLASHWP()			( rGPDDAT |= (0x01<<5) )	
#define Clr_FLASHWP()			( rGPDDAT &= ~(0x01<<5) )

//NORFLASH的忙标记判断定义(0为忙)
#define	FLASHReady				(rGPDDAT&(0x01<<2))



//********************** Local Function **********************
#ifdef __NORFLASH
	#define EXTERN
#else
	#define EXTERN	extern
#endif

EXTERN BYTE ReadNorFlashType (void);
EXTERN BYTE EraseSector(WORD wSector);
EXTERN int Writeflash (uchar *src, ulong addr, ulong cnt);

#undef EXTERN


//********************** Extern Variable **********************



//********************** Extern Function **********************
void enable_interrupts (void);
void disable_interrupts (void);
ulong get_timer(int t);

//*****************************************************************
#endif


⌨️ 快捷键说明

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