📄 s29gl256n.h
字号:
/***********************************************************************/
/* */
/* Module Name : S29GL256N.h */
/* */
/* Description : Implementation of a flash module for the SPANSION */
/* S29GL256N flash chip. */
/* */
/* */
/* Document Ref. : - Datasheets for the S29GL256N. */
/* */
/* Function List : Exported */
/* Note : The flash memory sub-system consists of 1 S29GL256N */
/* flash chips,forming a 16-bit data bus. Totally */
/* 32M Bytes */
/* */
/* modification history : */
/***********************************************************************/
/***********************************************************************
* 宏定义
************************************************************************/
#define INIT_TEST
#define WRITE_TEST
#define CHECKING_TEST
#define ERASE_TEST
/***********************************************************************
* 常量定义
************************************************************************/
#define FLASH_ACCESS_OFFSET 2
#define ROM_FLASH_SIZE (32*0x100000)
#define FLASHSTARTADDRESS 0x00000000 //tjag 编程设置为0
#define FLASHENDADDRESS (FLASHSTARTADDRESS+0x100000)
#define FLASH_SECTOR_SIZE (64*1024)
#define FLASH_MASK (0xffff0000)
#define FLASH_SECTOR_NUM 256
#define FLASH_CODE_LOCK_MASK 0x1
#define FLASH_ERASE_BLOCK_LOOP 0x100
#define FLASH_WRITE_LOOP 0x100
//Identification ID definition
#define FLASH_MANUFACTOR_ID 0x01
#define FLASH_DEVICE_ID1 0x227E
#define FLASH_DEVICE_ID2 0x2222
#define FLASH_DEVICE_ID3 0x2201
//Write Offset of the registers
#define FLASH_UNLOCK_OFFSET1 0x555
#define FLASH_UNLOCK_OFFSET2 0x2AA
#define FLASH_MANUFACTOR_ID_OFFSET 0x00
#define FLASH_DEVICE_ID1_OFFSET 0x01
#define FLASH_DEVICE_ID2_OFFSET 0x0E
#define FLASH_DEVICE_ID3_OFFSET 0x0F
//Write values for the registers
#define FLASH_UNLOCK_CMD1 0xAA
#define FLASH_UNLOCK_CMD2 0x55
#define FLASH_ERASE_CMD 0x80
#define FLASH_CHIP_ERASE_CONFIRM_CMD 0x30
#define FLASH_SECTOR_ERASE_CONFIRM_CMD 0x30
#define FLASH_IDENTIFIER_CMD 0x90
#define FLASH_RESET_CMD 0xF0
#define FLASH_PROGRAM_CMD 0xA0
/***********************************************************************
* 类型定义
************************************************************************/
#define OK 0
/***********************************************************************
* 函数声明
************************************************************************/
int S29GL128MInitialization(void);
int S29GL128MRead(int offset, WORD *bufAddr, int dataLen);
int S29gl256nWrite(int offset,WORD *bufAddr,int dataLen);
int S29GL256NErase(int offset, int nBlock);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -