📄 mes_svr.h
字号:
#ifndef _MES_H
#define _MES_H
//读串口时的判断
#define BE_READ 1
#define NOT_BE_READ 0
#define NOTUSED 0
#define BEUSED 1
#define REST 1 //读的电文不全
#define NOREST 0 //读的电文恰好全了
#define BUF_LEN 200 //读串口时buffer的大小
#define CMC_START_ADDRESS 0x9c0000 //在flash中所有的起始地址
#define FLASH_LENGTH 0x10000 //64K大小
//#define PI_VALUE 3.1415926
#define CMC_FILE 1
#ifdef DEBUG
#define WriteRecord( Src, Des, length ) do {\
memcpy( Des, Src, length );\
} while(0)
#else
//#define INIT(name1, name2, length) drv_flash_write( (unsigned char *)(name1), (unsigned int )(name2), length )
extern void FlashEraseBlock(unsigned int Address);
typedef void (* FBP)(unsigned int Address);
extern FBP FlashLockBlockP;
extern FBP FlashUnlockBlockP;
typedef unsigned int (* FWBP)(unsigned int,unsigned int,unsigned int);
extern FWBP FlashWriteBlockP;
#define WriteRecord(Src, Des, length)\
do{\
(*FlashUnlockBlockP)((unsigned int )(Des));\
(*FlashWriteBlockP)( (unsigned int )(Des), (unsigned int)(Src), (unsigned long)(length) );\
(*FlashLockBlockP)( (unsigned int )(Des) );\
}while(0)
#define ERASEAREA(area) \
do{\
(*FlashUnlockBlockP)(area);\
FlashEraseBlock((unsigned int)(area));\
(*FlashLockBlockP)( area );\
}while(0)
#endif
//存储格式
typedef struct{
BYTE file_type;
char file_name[31];
DWORD file_address;
DWORD file_length;
} ROOT_DIR;
//提取20号电文
typedef struct {
BYTE hour;
BYTE minute;
// DOUBLE_S second;
double second;
BYTE day;
BYTE month;
WORD year;
// DOUBLE_S latitude;
// DOUBLE_S longitude;
double latitude;
double longitude;
WORD hdop;
WORD vdop;
BYTE star_num;
} MESSAGE_20;
//读取电文时的标志体
typedef struct {
BYTE type;
BYTE length;
} FLAG;
//保存电文
typedef struct {
FLAG flag;
BYTE data[150];
} CMC_MESSAGE;
extern DWORD Current_Address;
extern MESSAGE_20 mes20;
extern ROOT_DIR rootdir[];
extern BYTE DirPos;
extern BYTE cmcarea[];//用来预存CMC文件
extern BYTE *cur_cmcarea;
extern BYTE area[];//定义全局数组来预存相关的文件
extern BYTE *cur_area;//定义一个全局变量来指向全局数组
extern DWORD FileCurrentAddress;//定义一个全局变量用来控制每次保存文件的起始地址
#endif/* MES_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -