#ifndef APP_DEFINE_H #define APP_DEFINE_H #include "qstring.h" #include "qglobal.h" #include "ctrl_define.h" #include "pack_define.h" #include "data_define.h" #include "remote_define.h" #include "ctrl_define.h" #include "crc16.h" #define APP_VERSION "V1.05" const QString Phone_Version = "C19P-N,C19PXT,V1.0.5"; #define PLATFORM_ARM 1 #define PLATFORM_DESKTOP 0 #define PLATFORM_USED PLATFORM_ARM #if (PLATFORM_USED==PLATFORM_ARM) const QString dataDir = "/YC_DISK/USER_DATA/"; #else const QString dataDir = "/home/winter/Qt_Project/C19P_XT/Data/"; #endif const QString testDataDir = dataDir + "TestData/"; const QString testParmFile = dataDir+"testparam.parm"; const QString packParmFile = dataDir+"packparam.parm"; const QString sysParmFile = dataDir+"sysparam.xml"; const QString usbDir = "/mnt/usb/"; const QString USBDataDir = "Test_Data/"; const QString testFileType = ".FBO"; #define MB_Caption tr("系统信息") #define PACK_TYPE_Other 0x00 //其它 #define PACK_TYPE_Halo 0x01 //哈啰 //============================================================================ #define ADJ_STATE_STOPPED 0 #define ADJ_STATE_DISCHARGE 1 #define ADJ_STATE_CHARGE 2 //============================================================================ #define TestTypeDischarge 0xFD #define TestTypeCharge 0xFC //============================================================================ #define WORK_STATE_STOPPED 0 //工作状态--停机 #define WORK_STATE_DIS_PAUSE 1 //工作状态--放电PAUSE #define WORK_STATE_DISCHG 2 //工作状态--放电 #define WORK_STATE_CHG_PAUSE 3 //工作状态--充电PAUSE #define WORK_STATE_CHARGE 4 //工作状态--充电 //============================================================================ #define ALARM_STATE_STOPPED 0 //测试停止! #define ALARM_STATE_DISCHARGING 1 //正在放电! #define ALARM_STATE_CHARGING 2 //正在充电! #define ALARM_STATE_DISTIMEOVER 3 //放电时间到! #define ALARM_STATE_DISCAPOVER 4 //放电容量到! #define ALARM_STATE_DISSOCOVER 5 //放电SOC到! #define ALARM_STATE_SUMVOLLOW 6 //组端下限到! #define ALARM_STATE_CELLVOLLOW 7 //单体下限到! #define ALARM_STATE_CHRTIMEOVER 8 //充电时间到! #define ALARM_STATE_CHRCAPOVER 9 //充电容量到! #define ALARM_STATE_CHGSOCOVER 10 //充电SOC到! #define ALARM_STATE_SUMVOLHIGH 11 //组端上限到! #define ALARM_STATE_CELLVOLHIGH 12 //单体上限到! #define ALARM_STATE_TEMPHIGH 13 //电芯温度过高! #define ALARM_STATE_CELLVOLDIFF 14 //电芯压差过大! #define ALARM_STATE_ERR_COMM 15 //内部通信异常! #define ALARM_STATE_ERR_VOL 16 //电压异常! #define ALARM_STATE_ERR_CURR 17 //电流异常! #define ALARM_STATE_ERR_TEMP 18 //温度异常! #define ALARM_STATE_ERR_INTSTOP 19 //内部停止! #define ALARM_STATE_PACK_COMM_ERR 20 //Pack通信异常! #define ALARM_STATE_PACK_ERR 21 //Pack故障! #define ALARM_STATE_ERR_UNKNOW 22 //未知错误! //============================================================================ //module state #define MOD_STATE_DIS ((quint16)(1<<0)) #define MOD_STATE_CHR ((quint16)(1<<1)) #define MOD_STATE_AGE ((quint16)(1<<2)) #define MOD_STATE_RES ((quint16)(1<<3)) //module error/errorstop #define MOD_ERROR_VOL ((quint16)(1<<0)) #define MOD_ERROR_PWRVOL ((quint16)(1<<1)) #define MOD_ERROR_CURR ((quint16)(1<<2)) #define MOD_ERROR_TEMP ((quint16)(1<<3)) #define MOD_ERROR_TIMEOVER ((quint16)(1<<4)) #define MOD_ERROR_VOLLIMIT ((quint16)(1<<5)) #define VOL_TOO_HIGH 8500 //85V #define VOL_TOO_LOW 500 //5V #define CURRENT_MAX 10 //10A #define VOLTAGE_MAX 85 //85V #define POWER_MAX 8000000ul //800.0000W //============================================================================ //启动检查--错误代码 //(远程控制时,可立即返回) #define START_OK 0 #define START_VOL_HIGH -1 //输入电压过高 #define START_VOL_LOW -2 //输入电压过低 #define START_POWER_OVER -3 //参数设置超功率 #define START_MEM_ERROR -4 //存储已满,请删除数据 #define START_DISVOL_ERROR -5 //组端下限设置错误 #define START_CHGVOL_ERROR -6 //组端上限设置错误 //命令执行--错误代码 //(远程控制时,如果启动检查通过,会立即返回成功,后判断实际状态,如果实际失败,以下是失败原因) #define EXE_RES_OK 0 //正常 #define EXE_MOS_CTRL_FAIL -1 //MOS管操作失败 #define EXE_MOS_STATE_ERR -2 //MOS状态异常 #define EXE_SET_PARAM_FAIL -3 //设置参数失败 #define EXE_START_FAIL -4 //启动操作失败 #define EXE_STOP_FAIL -5 //停止操作失败 #define EXE_READ_ADJ_FAIL -6 //读取校准参数失败 #define EXE_SET_ADJ_FAIL -7 //设置校准参数失败 #endif // APP_DEFINE_H /* 记录 : 1、现象:进入测试界面,偶尔会看到pack相关数据,先是0后恢复正常 *进入测试界面前,不知道选用何种电池,进入界面后,知道选用了何种电池,然后用相应协议进行通信,然后才刷新数据 */