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

📄 flash.h

📁 51单片机驱动320*234彩显的源代码
💻 H
字号:
//name:flash.h
//author:Liweihua
//date:2004.11.30

/*------Format Of History Message------*/
/*	
	Parameters		Len(bytes)				content
|----------------------------------------------------------------------------|	
|	msg type				1					0:DISPATCH_MESSAGE	
|											1:WATERLEVEL_ADJUST_MESSAGE	
|											2:WEATHER_FORECAST_MESSAGE
|											3:HYDROLOGY_BROADCAST_MESSAGE
|											4:CHARGE_NOTICE_MESSAGE
|											5:POLICE_ANNOUCE_MESSAGE
|	time					3					hms							
|	message			commpack_recv.len		0~256						
|----------------------------------------------------------------------------|
*/

// Addresses to use to invoke embedded algorithm in FLASH memory. Modify these addresses.
// It is advised to pick a Flash memory address that is common to all memory pages.

#define   SWAP_MASK  0xC0 			// 8xx specific

#define	FLASH_COMMON_XAAA (unsigned char xdata *) 0x9AAA 

#define	FLASH_COMMON_X555 (unsigned char xdata *) 0x9555 

// Addresses to use to invoke embedded algorithm in FLASH boot memory. Modify these addresses.
// It is advised to pick a Flash memory address that is common to all memory pages.

#define	FLASH_BOOT_XAAA (unsigned char xdata *) 0x0AAA 

#define	FLASH_BOOT_X555 (unsigned char  xdata *) 0x0555 

#define SYSPARA_LEN							16
#define HISORY_MSG_MAXLEN					256
#define MAIN_FLASH_ADDR_START				(unsigned char xdata *) 0x8000
#define MAIN_FLASH_ADDR_END				(unsigned char xdata *) 0xffff

typedef struct
{
	unsigned char * ptr_wr_msg;
	unsigned char pagenum_wr_msg;
	unsigned char * ptr_rd_msg;
	unsigned char pagenum_rd_msg;
	unsigned char len_wr_msg;
	unsigned char len_rd_msg;

	unsigned char *ptr_wr_syspara;
	
#define FLASH_EV_NULL						0x00
#define FLASH_EV_WRITE_ONE_RECODE		0x01
#define FLASH_EV_READ_ONE_RECODE			0x02
#define FLASH_EV_GET_ALL_RECODE_ENTRY	0x03
	unsigned char event_notice;

	unsigned short msg_sum;
	unsigned char buf_rd[HISORY_MSG_MAXLEN];
	unsigned char buf_wr[HISORY_MSG_MAXLEN];

	//write to flash
#define DATACENTER_IP_LEN					12
	unsigned char datacenter_ip[DATACENTER_IP_LEN];
#define DATACENTER_PORT_LEN				4
	unsigned char datacenter_port[DATACENTER_PORT_LEN];

	//send to host
	unsigned char short_ip[4];
	unsigned char short_port[2];
}FLASHCB;

typedef struct
{
	unsigned char msg_type;
	unsigned char page;
	unsigned char *addr;
}MSG_ENTRY;

unsigned char flash_write_with_poll(unsigned char xdata* addr, unsigned char dat);
unsigned char flash_erase_sector(unsigned char xdata* flash_bulk_erase_address);
void flash_reset(void);
void flash_init(void);
void flash_write_one_recode(void);
void flash_read_one_recode(void);
void get_entry_wr_msg(void);
void fill_lcdbuf(void);
void flash_set_syspara(void);
void flash_get_syspara(void);
void flash_poll(void);

⌨️ 快捷键说明

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