📄 update.h
字号:
#ifndef __UPDATE_H__
#define __UPDATE_H__
#define SYS_FILE_TYPE 1
//Show monitor type
enum{
PM_509C = 1, //1 for 509c
PM_9000, //2 for 9000
PM_8000, //3 for 8000
PM_6000 //4 for 6000
};
// 不能和enum uart_id冲突
#define NET_PORT 0x40
// --------------------- 2、升级信息结构 -----------------------------
#define MAX_FILE_NAME_LEN 14
#define US_MAX_ITEM_COUNT 100
#pragma pack(1)
typedef struct _sys_update_item_info
{
UINT16 nSelectFlag; // 1表示必须升级,0表示可选
UINT16 nType; // 文件类型
UINT32 nLength; // 文件长度
UINT32 nPos; // 文件放入FLASH的位置
UCHAR nName[MAX_FILE_NAME_LEN];
} SYS_UpdateItemInfo;
typedef struct _sys_update_info
{
UCHAR nEnterMode; // 入口方式:1,正常; 2、恢复
UCHAR nUpdateMode; // 升级方式:1,通讯; 2,硬盘
UINT16 nFileCount; // 升级文件的数量
UINT16 nCurFileNo; // 当前升级文件的序号
UINT8 acOldVerNo[4]; // 当前版本号
UINT16 nOldSoftNo; // 软件号(机器号)
UINT8 acNewVerNo[4]; // 当前版本号
UINT16 nNewSoftNo; // 软件号(机器号)
SYS_UpdateItemInfo stUpdateItemTable[US_MAX_ITEM_COUNT]; // 所有升级文件的信息
} SYS_UpdateInfo;
#pragma pack(0)
enum CommType // CST 表示发送方通讯类型,CRT表示接收方通讯类型
{
CT_NULL,
CST_START, CRT_START,
CST_VERSION, CRT_VERSION,
CST_FILE, CRT_FILE,
CST_BREAK, CRT_BREAK,
CST_RENEW, CRT_RENEW
};
enum MachineID//机器号 机器名称
{
MT_PM_8000 = 0x00,
MT_PM_9000,
MT_PM_6000,
MT_PM_5000,
MT_PM_8100,
MT_PM_MAX,
MT_ALLINONE = 0x80,
MT_ECG,
MT_SPO2,
MT_NIBP,
MT_IBP,
MT_MODULE_MAX
};
static BOOL InitUpdatePort();
static INT16 AnalyseCommResult();
static void GetFilesNextComm();
static void StartupComm(UINT32 nCommType);
static void SendData();
static void CloseUpdatePort();
BOOL Update();
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -