⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 flash.h

📁 在ARM7和UC/OSII的平台上实现了GPS自动报站的功能,涉及GPS模块LEA_4S的驱动,位置速寻算法,语音芯片ISD4004的录放音驱动,LED页面管理等等.从启动代码到操作系统的移植以及到业
💻 H
字号:
#ifndef DEF_FLASH
#define DEF_FLASH

#define UART_FLASH					1

#define SST_SECTOE_NUM				512
#define SST_SECTOR_LIMIT			76



#define SST_BASE_ADDR			0x1000000	// flash基址和FLASH_BASE一致
#define SST_DATA_BASE           0x1008000   // 布点数据基地址
#define SST_CFGTABL_BASE        0x114c000   // 配置表数据基地址

#define SST_CHIP_HWORD_SIZE		1024*1024L   //1MB = 512k * 16
#define SST_SECTOR_HWORD_SIZE	2048L		//4kB = 2K * 16
#define SST_SECTOR_BYTE_SIZE	4096

				/*解锁地址*/
#define SST_ADDR_UNLOCK1        0x5555
#define SST_ADDR_UNLOCK2        0x2aaa
				/*解锁数据*/
#define SST_DATA_UNLOCK1        0xaaaa
#define SST_DATA_UNLOCK2        0x5555
				/*编程擦除命令*/
#define SST_SETUP_WRITE         0xa0a0
#define SST_SETUP_ERASE         0x8080
#define SST_CHIP_ERASE          0x1010
#define SST_SECTOR_ERASE		0x3030

/*
********************************************************************************
*                  DEFINE DATA TYPE
********************************************************************************
*/

#define       OFFSET_STA              0
#define       OFFSET_OBJ              1
#define       NUMBER_STA              2
#define       NUMBER_OBJ              3
#define       POSITI_STA              4
#define       POSITI_OBJ              5
#define       NUMS_STA                6

/*
********************************************************************************
*                  DEFINE CONFIG TABLE TYPE
********************************************************************************
*/

#define      LINE_TABLE               0
#define      STATION_TABLE            1


#define FlashAbsAddr(nSector, offset)       (SST_BASE_ADDR + SST_SECTOR_BYTE_SIZE * nSector + offset)
#define FlashSector(address)                (INT32U)((address & ~(INT32U)(SIZE_FLASHSECTOR -1)) / SIZE_FLASHSECTOR)

void 	ProgramFlash_AtAbsAddr(INT16U *addr, INT8U *buffer, INT32U length);
void 	FlashWrite(INT16U nSector, INT32U offset, INT8U *buffer, INT32U length);
void 	SectorErase_Flash(INT16U nSector);
void 	ChipErase_Flash(void);
INT8U 	ReadByteFrom_Flash(INT16U nSector, INT32U offset);
void 	HWordProgram_Flash(INT16U nSector, INT32U offset, INT16U prghword);
void    ReadRecFromFlash(INT8U type,INT32U nPackage,INT8U len, INT8U  *dptr);
void    ReadDotFromFlash(INT16U nSector,INT32U nPackage,INT8U len, INT8U *dptr);
void    ReadTableCellFromFlash(INT8U type,INT32U nPackage,INT8U len, INT8U  *dptr);
//void 	ByteProgram_Flash(INT16U nSector, INT32U offset, INT8U prgbyte);
#endif

⌨️ 快捷键说明

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