730 lines
20 KiB
C
730 lines
20 KiB
C
|
|
#ifndef __TXH_H__
|
||
|
|
#define __TXH_H__
|
||
|
|
|
||
|
|
#define QUEUE_SIZE 10
|
||
|
|
|
||
|
|
typedef struct spu_info
|
||
|
|
{
|
||
|
|
union
|
||
|
|
{
|
||
|
|
u8 byte[12];
|
||
|
|
u32 id[3];
|
||
|
|
}v;
|
||
|
|
}cup_t;
|
||
|
|
typedef union
|
||
|
|
{
|
||
|
|
u16 State;
|
||
|
|
struct
|
||
|
|
{
|
||
|
|
u8 e_errFlashParameter : 1; //FLASH断线
|
||
|
|
u8 e_errFramParameter : 1; //铁电参数错误
|
||
|
|
u8 e_errPCBCheck : 1; //电路板验证
|
||
|
|
u8 e_errMessageEnd : 1;
|
||
|
|
}Flag;
|
||
|
|
}ErrState_TypeDef;
|
||
|
|
__packed typedef struct
|
||
|
|
{
|
||
|
|
u8 Sec;
|
||
|
|
u8 Min;
|
||
|
|
u8 Hour;
|
||
|
|
u8 Day;
|
||
|
|
u8 Month;
|
||
|
|
u8 Year;
|
||
|
|
}CTIME_type;
|
||
|
|
|
||
|
|
typedef enum
|
||
|
|
{
|
||
|
|
Message_Priority_1 = 1,
|
||
|
|
Message_Priority_2,
|
||
|
|
Message_Priority_3 ,
|
||
|
|
}Message_PriorityItem;
|
||
|
|
|
||
|
|
typedef struct Message {
|
||
|
|
u8 Priority; // 消息优先级,1-3之间的整数
|
||
|
|
u8 Content; // 消息内容
|
||
|
|
}Message_Type;
|
||
|
|
|
||
|
|
typedef struct MessageQueue {
|
||
|
|
u8 Front; // 队头指针
|
||
|
|
u8 Rear; // 队尾指针
|
||
|
|
Message_Type Messages[QUEUE_SIZE]; // 消息队列数组
|
||
|
|
}MessageQueue_Type;
|
||
|
|
__packed typedef union
|
||
|
|
{
|
||
|
|
u8 Buff[16];
|
||
|
|
__packed struct
|
||
|
|
{
|
||
|
|
float OH;
|
||
|
|
float OV;
|
||
|
|
float WH;
|
||
|
|
float TH;
|
||
|
|
}Data;
|
||
|
|
}TankData_Type;
|
||
|
|
__packed typedef union
|
||
|
|
{
|
||
|
|
u8 State;
|
||
|
|
__packed struct
|
||
|
|
{
|
||
|
|
u8 TankLeaked : 1;
|
||
|
|
u8 GasLeakage : 1;
|
||
|
|
u8 THOutOfLimits : 1;
|
||
|
|
u8 TLOutOfLimits : 1;
|
||
|
|
u8 PHHOutOfLimits : 1;
|
||
|
|
u8 PLLOutOfLimits : 1;
|
||
|
|
u8 Electrostatic : 1;
|
||
|
|
u8 beiyong : 1;
|
||
|
|
|
||
|
|
}Flag;
|
||
|
|
}TankState_Type;
|
||
|
|
__packed typedef struct
|
||
|
|
{
|
||
|
|
u32 OilCNT ; //实时油量
|
||
|
|
u32 MoneyCNT ; //实时金额
|
||
|
|
}FData_Type;//8byte
|
||
|
|
|
||
|
|
__packed typedef struct
|
||
|
|
{
|
||
|
|
u64 TotalLit; //油量总累
|
||
|
|
u64 TotalMoney; //金额总累
|
||
|
|
}CTOTAL_Type;//16byte
|
||
|
|
|
||
|
|
__packed typedef struct
|
||
|
|
{
|
||
|
|
u8 GunNumber; //枪号
|
||
|
|
FData_Type FData; //加油数据
|
||
|
|
u32 Price; //单价
|
||
|
|
CTOTAL_Type CTOTAL; //累计
|
||
|
|
CTIME_type RTIME; //完成时间
|
||
|
|
u32 OrderNumber; //订单号,离线授权的话为0
|
||
|
|
u8 CardNum[6]; //卡号 6BYTE BCD
|
||
|
|
u8 Standby[51]; //预留
|
||
|
|
}PREXDATA_Type;//
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
u8 PrintBuff[20][32];
|
||
|
|
}PrintInfo_Type;
|
||
|
|
typedef union
|
||
|
|
{
|
||
|
|
u8 State;
|
||
|
|
struct
|
||
|
|
{
|
||
|
|
u8 : 1; //
|
||
|
|
u8 : 1; //
|
||
|
|
u8 : 1; //
|
||
|
|
u8 TitleFlag : 1; //受控标志1受控0自控
|
||
|
|
u8 : 1; //
|
||
|
|
u8 StartFlag : 1; //开机标志1开机0停机
|
||
|
|
u8 Pause : 1; //暂停
|
||
|
|
u8 GunUp : 1; //提枪
|
||
|
|
}Flag;
|
||
|
|
}fuelState_TypeDef;
|
||
|
|
typedef union
|
||
|
|
{
|
||
|
|
u8 Buff[10];
|
||
|
|
__packed struct
|
||
|
|
{
|
||
|
|
float Longitude; //经度
|
||
|
|
u8 LongitudeType; //经度类型
|
||
|
|
float Latitude ; //纬度
|
||
|
|
u8 LatitudeType ; //纬度类型
|
||
|
|
}GPS;
|
||
|
|
}GPS_Type;
|
||
|
|
typedef enum
|
||
|
|
{
|
||
|
|
Display_664,
|
||
|
|
Display_886,
|
||
|
|
|
||
|
|
}Display_Typ;
|
||
|
|
typedef enum
|
||
|
|
{
|
||
|
|
YWY_Bluesky,
|
||
|
|
YWY_Probe_KY,
|
||
|
|
YWY_Pressure,
|
||
|
|
|
||
|
|
}YWY_Typ;
|
||
|
|
typedef enum
|
||
|
|
{
|
||
|
|
Preset_Sale,
|
||
|
|
Preset_Volume,
|
||
|
|
}Preset_Typ;
|
||
|
|
typedef enum
|
||
|
|
{
|
||
|
|
POS_Connect_Typ_Station,
|
||
|
|
POS_Connect_Typ_Cloud,
|
||
|
|
POS_Connect_Typ_Cloud_Tast,
|
||
|
|
//POS_Connect_Typ_WifiStation,
|
||
|
|
|
||
|
|
POS_Connect_Typ_End,
|
||
|
|
|
||
|
|
}POS_Connect_Typ;
|
||
|
|
typedef enum
|
||
|
|
{
|
||
|
|
POS_Net_Typ_4G_GM5,
|
||
|
|
POS_Net_Typ_4G_L510,
|
||
|
|
POS_Net_Typ_WiFi,
|
||
|
|
POS_Net_Typ_WAN,
|
||
|
|
|
||
|
|
POS_Net_Typ_End,
|
||
|
|
|
||
|
|
}POS_Net_Typ;
|
||
|
|
typedef enum
|
||
|
|
{
|
||
|
|
PosNormal,
|
||
|
|
PosBlueSky,
|
||
|
|
PosLY,
|
||
|
|
PosJP,
|
||
|
|
PosDart,
|
||
|
|
PosYWY,
|
||
|
|
PosRFID,
|
||
|
|
PosYGao,
|
||
|
|
PosHongYang,
|
||
|
|
PosSSLan,
|
||
|
|
PosBlueSkyPlus,
|
||
|
|
PosPLC,
|
||
|
|
PosPrice1_4,
|
||
|
|
PosLanFeng,
|
||
|
|
|
||
|
|
}PosItem;
|
||
|
|
typedef enum
|
||
|
|
{
|
||
|
|
At45DB041,
|
||
|
|
At45DB321,
|
||
|
|
At45DB641,
|
||
|
|
}At45DBTypeItem;
|
||
|
|
typedef union
|
||
|
|
{
|
||
|
|
u8 State;
|
||
|
|
struct
|
||
|
|
{
|
||
|
|
u8 State : 2;
|
||
|
|
u8 PresetType : 2; //
|
||
|
|
u8 PresetMode : 1; //
|
||
|
|
u8 UpdateRecords: 1; //有信息标志1
|
||
|
|
u8 Unit : 1; //
|
||
|
|
u8 GunUp : 1; //提枪标志1提枪0挂枪
|
||
|
|
}Flag;
|
||
|
|
}YGGunState_TypeDef;
|
||
|
|
typedef union
|
||
|
|
{
|
||
|
|
u8 State;
|
||
|
|
struct
|
||
|
|
{
|
||
|
|
u8 GunNum : 3;//抢号
|
||
|
|
u8 State : 1; //状态0挂枪1提枪
|
||
|
|
u8 Null : 4; //
|
||
|
|
}Flag;
|
||
|
|
}DartGunState_TypeDef;
|
||
|
|
typedef union
|
||
|
|
{
|
||
|
|
u8 State;
|
||
|
|
struct
|
||
|
|
{
|
||
|
|
u8 : 1;
|
||
|
|
u8 ErroFlag : 1; //有错误标志
|
||
|
|
u8 : 1; //1有未上传记录0没有
|
||
|
|
u8 TitleFlag : 1; //受控标志1受控0自控
|
||
|
|
u8 BatteryFlag : 1; //电池电量标志1有电0没电
|
||
|
|
u8 StartFlag : 1; //开机标志1开机0停机
|
||
|
|
u8 EventFlag : 1; //有事件标志
|
||
|
|
u8 GunUp : 1; //提枪标志1提枪0挂枪
|
||
|
|
}Flag;
|
||
|
|
}LTGunState_TypeDef;
|
||
|
|
typedef union
|
||
|
|
{
|
||
|
|
u8 State;
|
||
|
|
struct
|
||
|
|
{
|
||
|
|
u8 PriceChange : 1; //单价变更
|
||
|
|
u8 ShiftChange : 1; //班累变更
|
||
|
|
u8 TotalChange : 1; //总累变更
|
||
|
|
u8 StartFlag : 1; //加油中
|
||
|
|
u8 TitleFlag : 1; //受控状态
|
||
|
|
u8 GunUp : 1; //提枪状态
|
||
|
|
u8 : 1;
|
||
|
|
u8 : 1; //
|
||
|
|
}Flag;
|
||
|
|
}HYState_TypeDef;
|
||
|
|
typedef union
|
||
|
|
{
|
||
|
|
u8 State;
|
||
|
|
struct
|
||
|
|
{
|
||
|
|
u8 : 1; //
|
||
|
|
u8 : 1; //
|
||
|
|
u8 : 1; //
|
||
|
|
u8 : 1; //
|
||
|
|
u8 GunUp : 1; //提枪状态
|
||
|
|
u8 : 1; //
|
||
|
|
u8 : 1;
|
||
|
|
u8 : 1; //
|
||
|
|
}Flag;
|
||
|
|
}HYSelfTestState_TypeDef;
|
||
|
|
typedef union
|
||
|
|
{
|
||
|
|
u8 State;
|
||
|
|
struct
|
||
|
|
{
|
||
|
|
u8 GunUP_Flag : 1; //提枪状态
|
||
|
|
u8 Start_Flag : 1; //启动状态
|
||
|
|
u8 UpdateDisplay : 1; //需更新数据
|
||
|
|
u8 UpdateRecords : 1; //需入库 //慎重,非油机设备不要用这个标志
|
||
|
|
u8 : 1; //
|
||
|
|
u8 AuthorizeState: 1; //授权状态
|
||
|
|
u8 LockState : 1; //枪锁定状态
|
||
|
|
u8 Online : 1; //在线
|
||
|
|
}Flag;
|
||
|
|
}GunState_TypeDef;
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
u8 VersionFindFlag;
|
||
|
|
u8 Version[10];
|
||
|
|
}GunVersion_Type;
|
||
|
|
typedef union
|
||
|
|
{
|
||
|
|
u8 State;
|
||
|
|
struct
|
||
|
|
{
|
||
|
|
u8 Update_Flag : 1; //升级标志
|
||
|
|
u8 RightRun_Flag : 2; //待运行标志
|
||
|
|
u8 BaudRateSync_Flag : 1; //波特率同步标志
|
||
|
|
u8 HaveBackups : 1; //有备份过
|
||
|
|
u8 : 1; //
|
||
|
|
u8 : 1; //
|
||
|
|
u8 DisableUpdate : 1; //不允许更新
|
||
|
|
}Flag;
|
||
|
|
}ROM_UpData_State_Type;
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
u8 Number;//关联设备的设备号
|
||
|
|
u8 Port;//端口
|
||
|
|
u8 location;//内存位置
|
||
|
|
}AssociatedDevices_Type;
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
u8 Handshake; //握手步骤进度
|
||
|
|
u8 DartSeq; //dart协议通讯序号
|
||
|
|
u8 LYGunNeedCMD; //下下个需要的命令
|
||
|
|
u8 LYGunState; //龙野协议枪状态
|
||
|
|
u8 LYHandshakeCRC; //龙野握手校验
|
||
|
|
u8 MB_CMD_Next; //下个命令
|
||
|
|
u8 MB_CMD_Next_End;//指令不自动转换,主要是在停止生成记录和启动的过程。用在改单价之火读取单价和单独预置指令
|
||
|
|
u8 PresteType; //
|
||
|
|
u32 PresetValue; //
|
||
|
|
timer_TypeDef LTDelayTimer; //蓝天协议下加油结束等待生成总累
|
||
|
|
GunState_TypeDef fuelState_B; //上次枪状态
|
||
|
|
u8 SlaveNeedReply; //回复wifi从机的状态,转接中心过来的枪状态的回复信息给从机
|
||
|
|
FData_Type FData; //实时数据
|
||
|
|
CTOTAL_Type CTOTAL; //累计
|
||
|
|
u32 Price; //单价
|
||
|
|
u8 PriceStete; //单价0=不生效;1=一次性生效;2=永久生效
|
||
|
|
u32 PulseCoefficient;//脉冲当量
|
||
|
|
u16 ValveValue; //提前关阀量
|
||
|
|
u16 MinDisplay; //最小显示值
|
||
|
|
u8 RSSI; //LORA信号强度
|
||
|
|
u8 Call; //请求授权
|
||
|
|
u8 WaitPREXDATA_flag;//等待记录形成,完成之前不能再次启动,防止形成记录之前再次授权
|
||
|
|
u8 CardNumber[10];
|
||
|
|
u8 RFIDUserName[15];
|
||
|
|
u8 CardPSWD[3];
|
||
|
|
u8 CarLicensePlate[15];
|
||
|
|
u32 Mileage;
|
||
|
|
u8 BalanceDecimal;
|
||
|
|
u8 Balance[5];
|
||
|
|
u8 RFIDState;
|
||
|
|
AssociatedDevices_Type AssociatedDevices;//没有对应RFID为0(关联设备信息)
|
||
|
|
GunVersion_Type GunVersion;
|
||
|
|
u16 FrameNow;
|
||
|
|
ROM_UpData_State_Type ROM_UpData_State;
|
||
|
|
u8 FatherNum;//父设备号
|
||
|
|
u8 SonNum;//子设备在父设备中的位置
|
||
|
|
u8 ParameterNumber;
|
||
|
|
YGGunState_TypeDef YGGunState; //龙野协议枪状态
|
||
|
|
}GunInfo_Type;
|
||
|
|
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
ROM_UpData_State_Type ROM_UpData_State;
|
||
|
|
u16 FrameTop;
|
||
|
|
}ROM_UpData_Type;
|
||
|
|
typedef enum
|
||
|
|
{
|
||
|
|
Control_POSAuto,
|
||
|
|
Control_POSManual,
|
||
|
|
Control_BoxAuto,
|
||
|
|
Control_NoGun,
|
||
|
|
}GunControlState_Item;
|
||
|
|
typedef enum
|
||
|
|
{
|
||
|
|
NowAuthorizeType_Online,
|
||
|
|
NowAuthorizeType_Offline_NoCard,
|
||
|
|
NowAuthorizeType_Offline_Card,
|
||
|
|
}NowAuthorizeType_Type;
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
u8 GunNummber;
|
||
|
|
u8 GunAddr;
|
||
|
|
GunState_TypeDef GunState;
|
||
|
|
u32 OrderNumber;
|
||
|
|
u8 RFIDBinding;//绑定的RFID编号
|
||
|
|
ROM_UpData_State_Type ROM_UpData_State;
|
||
|
|
u8 GunControlState;//授权模式
|
||
|
|
u8 NowAuthorizeType;//当前加油的授权方式0;在线;1离线非卡;2离线白名单
|
||
|
|
u8 Standby[3];
|
||
|
|
}GunData_Type;
|
||
|
|
typedef enum
|
||
|
|
{
|
||
|
|
MD_RS485,
|
||
|
|
MD_LORA,
|
||
|
|
|
||
|
|
}MDConnectType;
|
||
|
|
typedef union
|
||
|
|
{
|
||
|
|
u8 State;
|
||
|
|
struct
|
||
|
|
{
|
||
|
|
u8 OilCNT : 2;
|
||
|
|
u8 MoneyCNT : 2;
|
||
|
|
u8 Price : 2;
|
||
|
|
}Dec;
|
||
|
|
}GunDec_TypeDef;
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
u8 Number;
|
||
|
|
u8 Type[7];
|
||
|
|
}PaymentType_Type;
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
u32 BaudRate;
|
||
|
|
u8 StopBits;
|
||
|
|
u8 Parity_Even;
|
||
|
|
u8 POSType; //协议类型
|
||
|
|
u8 DeviceNumber; //设备数量
|
||
|
|
u32 MBCountTime; //轮询时间ms
|
||
|
|
u8 Device_Type; //设备类型
|
||
|
|
u8 MDConnectType;//连接形式 485/LORA
|
||
|
|
u8 ROM_UpData_Version[10];
|
||
|
|
ROM_UpData_Type ROM_UpData;
|
||
|
|
GunDec_TypeDef GunDec;
|
||
|
|
PaymentType_Type PaymentType;
|
||
|
|
u8 Standby[10];
|
||
|
|
}PortData_Type;
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
PortData_Type PortData;
|
||
|
|
GunData_Type GunData[16];
|
||
|
|
}MD_Port_Data_Type;
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
u8 SonNumber;//子设备数量
|
||
|
|
u8 Address;//统一指令
|
||
|
|
u8 SonStart;//第一个子设备的内存位置
|
||
|
|
u8 SonNow;//当前要操作的枪
|
||
|
|
u8 Handshake;//握手序号
|
||
|
|
u8 MB_CMD_Next;
|
||
|
|
u8 MB_CMD_Need; //下下个需要的命令
|
||
|
|
u8 Handshake_Top;//握手序号最大值
|
||
|
|
u8 Password_Lever;
|
||
|
|
u32 Password;
|
||
|
|
u8 LockType;
|
||
|
|
u8 LockTime[3];//年月日
|
||
|
|
u16 lockNummber;
|
||
|
|
u8 LockValue[6];
|
||
|
|
GunVersion_Type Version;
|
||
|
|
u16 FrameNow;
|
||
|
|
u8 Mac[12];
|
||
|
|
timer_TypeDef LTDelayTimer; //蓝天协议下加油结束等待生成总累,其他协议也可以用来判断是否行程记录的时间
|
||
|
|
}FatherDevice_Type;
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
GunState_TypeDef State;
|
||
|
|
u8 SingleOrDouble;//单双面0单1双
|
||
|
|
u8 PriceNumber;//面板数量
|
||
|
|
u8 Length;//单价长度2-6
|
||
|
|
u8 Brightness;//亮度0-8
|
||
|
|
u32 Price[12];//
|
||
|
|
u8 Decimal[12];//小数位
|
||
|
|
}PriceTagData_Type;
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
u8 pGunReturn;//插队之后返回
|
||
|
|
u8 pGunCapture;//插队的枪号
|
||
|
|
u8 pGunNow;//当前发送枪号
|
||
|
|
u8 PumpNow;//当前发送泵号
|
||
|
|
u8 LoopGunNextFlag;//允许继续发送下一枪
|
||
|
|
u8 Handshake_Top;//握手序号最大值
|
||
|
|
u8 FatherDeviceTop;//几个泵
|
||
|
|
FatherDevice_Type FatherDevice[16];//每个泵的信息
|
||
|
|
GunInfo_Type GunInfo[16];
|
||
|
|
PriceTagData_Type PriceTagData;
|
||
|
|
}MD_Port_Info_Type;
|
||
|
|
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
u8 DeviceNumber;
|
||
|
|
PortData_Type PortData[5];
|
||
|
|
GunState_TypeDef State[5];
|
||
|
|
u8 Standby[20];
|
||
|
|
}MD_Multiplex_Port_Data_Type;
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
u8 DevicerReturn;//插队之后返回
|
||
|
|
u8 DevicerCapture;//插队的枪号
|
||
|
|
u8 DevicerTypeNow;//当前发送的设备类型
|
||
|
|
u8 PrintPlaceNumber;//当前打印位置
|
||
|
|
u8 PrintType;//当前打印类型
|
||
|
|
u8 LoopDevicerNextFlag;//允许继续发送下一枪
|
||
|
|
u8 Handshake[5];//握手序号最大值
|
||
|
|
u8 MB_CMD_Next[5];
|
||
|
|
u8 Handshake_Top[5];//握手序号最大值
|
||
|
|
timer_TypeDef MultiplexDevicerTimer[5];
|
||
|
|
u8 MBCountCutNum[5];
|
||
|
|
GunState_TypeDef State[5];
|
||
|
|
PriceTagData_Type PriceTagData;
|
||
|
|
}MD_Multiplex_Port_Info_Type;
|
||
|
|
|
||
|
|
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
char CMD_SOCKA[50];
|
||
|
|
char IMEI[20];
|
||
|
|
char APN[40];
|
||
|
|
char WiFIName[40];
|
||
|
|
char WiFIPassWord[20];
|
||
|
|
}WirelessData_Type;
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
WirelessData_Type WirelessData;
|
||
|
|
union
|
||
|
|
{
|
||
|
|
u16 State;
|
||
|
|
struct
|
||
|
|
{
|
||
|
|
u8 ConnectMode : 4;
|
||
|
|
u8 NetworkSet : 4;//如果是wifi从机模式,参数当WiFiHostSet用
|
||
|
|
}Flag;
|
||
|
|
}POSConnectTyye;
|
||
|
|
u8 Address;//从机自身的地址,目的是分时发送数据
|
||
|
|
u8 WhiteListVersion;
|
||
|
|
u8 Standby[19];
|
||
|
|
}POSData_Type;
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
u8 Link_Flag;
|
||
|
|
u8 ConnectType;
|
||
|
|
u8 NetType;
|
||
|
|
u8 POS_ConnectRXTask_Flag;
|
||
|
|
u8 POS_CMD_Next;
|
||
|
|
u8 WiFiSetState;
|
||
|
|
u8 WiFiRSSI;
|
||
|
|
u8 WiFiChannel;
|
||
|
|
u8 AskCongfig_Num;//上电申请配置下发,1-2端口
|
||
|
|
u8 HostHandshake;
|
||
|
|
u8 IP[50];
|
||
|
|
}POS_Info_Type;
|
||
|
|
|
||
|
|
|
||
|
|
typedef union
|
||
|
|
{
|
||
|
|
u16 State;
|
||
|
|
struct
|
||
|
|
{
|
||
|
|
u8 POSNetSetErrNummber : 3; //网络模块配置失败次数
|
||
|
|
u8 POSNetCMDNext : 4; //指令模式下待发送指令
|
||
|
|
u8 WorkMode : 1; //工作模式Bit6 0:指令 1:透传
|
||
|
|
}Flag;
|
||
|
|
}POSNetSetState_TypeDef;
|
||
|
|
typedef union
|
||
|
|
{
|
||
|
|
u16 State;
|
||
|
|
struct
|
||
|
|
{
|
||
|
|
u8 ConnectSetErrNummber : 3; //网络模块配置失败次数
|
||
|
|
u8 SetModeCMDNext : 4; //指令模式下待发送指令
|
||
|
|
u8 WorkMode : 1; //工作模式Bit6 0:指令 1:透传
|
||
|
|
}Flag;
|
||
|
|
}MDConnectState_TypeDef;
|
||
|
|
typedef union
|
||
|
|
{
|
||
|
|
u8 State;
|
||
|
|
struct
|
||
|
|
{
|
||
|
|
|
||
|
|
u8 APN : 1; //配置文件包含APN
|
||
|
|
}Flag;
|
||
|
|
}Sysconfig_Flag_TypeDef;
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
u16 WhiteListTop;
|
||
|
|
u8 CardNum[200][6];
|
||
|
|
}WhiteList_Type;
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
u32 PREXDATA_NowWaitUpNummber;//这次上传时记录数量备份
|
||
|
|
u16 PREXDATA_NowFrame; //这次上传的帧
|
||
|
|
u8 PREXDATA_NowFrameLen;//这次上传的帧包含的条数
|
||
|
|
}PREXDATA_Upload_Type;
|
||
|
|
typedef union
|
||
|
|
{
|
||
|
|
u8 State;
|
||
|
|
struct
|
||
|
|
{
|
||
|
|
u8 Power10V : 1;
|
||
|
|
u8 Power7V : 1;
|
||
|
|
}Flag;
|
||
|
|
}PowerDown_TypeDef;
|
||
|
|
typedef union
|
||
|
|
{
|
||
|
|
u8 State;
|
||
|
|
struct
|
||
|
|
{
|
||
|
|
u8 : 1; //
|
||
|
|
u8 : 1; //
|
||
|
|
u8 : 1; //
|
||
|
|
u8 : 1; //
|
||
|
|
u8 : 1; //
|
||
|
|
u8 : 1; //
|
||
|
|
u8 : 1; //
|
||
|
|
u8 Online : 1; //在线
|
||
|
|
}Flag;
|
||
|
|
}CNGPLCState_TypeDef;
|
||
|
|
typedef union
|
||
|
|
{
|
||
|
|
u8 Buff[80]; //ModBus寄存器组
|
||
|
|
__packed struct
|
||
|
|
{
|
||
|
|
float PistonAValue;//A活塞当前值`
|
||
|
|
float PistonBValue;//B活塞当前值
|
||
|
|
float IntakePressure; //进气压力
|
||
|
|
float LowPressure; //低压压力
|
||
|
|
float InstrumentAirPressure;//仪表风压力
|
||
|
|
float MediumPressure; //中压压力
|
||
|
|
float GasConcentration1;//橇内燃气浓度1
|
||
|
|
float HydraulicOilTemperature;//液压油温
|
||
|
|
float HighPressure; //高压压力
|
||
|
|
float ProtectPressure; //保护压力
|
||
|
|
float WaterTemperature; //水流温度
|
||
|
|
float GasConcentration2; //燃气浓度2
|
||
|
|
float GasConcentration3; //燃气浓度3
|
||
|
|
u16 MW28Alarm; //MW28报警
|
||
|
|
u16 MB5Alarm; //MB5报警
|
||
|
|
u16 MB10Alarm; //MB10报警
|
||
|
|
}REG;
|
||
|
|
}CNGPLCData_Type;
|
||
|
|
typedef struct
|
||
|
|
{
|
||
|
|
u16 Encryption[4];
|
||
|
|
ErrState_TypeDef ErrState;
|
||
|
|
u8 BoardType;//靠按键状态识别是不是新版本的主板
|
||
|
|
u8 HardwareVersion;//硬件版本 ////24-31是大板,32-38是小板,小板没有第五端口
|
||
|
|
u8 WiFiSlaveMode;
|
||
|
|
Sysconfig_Flag_TypeDef Sysconfig_Flag;
|
||
|
|
|
||
|
|
PowerDown_TypeDef PowerDown;
|
||
|
|
u8 SystemErr;
|
||
|
|
u16 POS2MD_Buff_Len;
|
||
|
|
u8 USART6_Drive;
|
||
|
|
u8 SurfaceNow;
|
||
|
|
u8 SurfaceNowLine;
|
||
|
|
u8 SurfaceNowItem;
|
||
|
|
u8 SurfaceSelected_Flag;
|
||
|
|
u8 DisplayOn;
|
||
|
|
u8 KeyNum;
|
||
|
|
timer_TypeDef KeyFindTimer;
|
||
|
|
u8 POS_MonitorModel;//监控模式
|
||
|
|
u8 OfflineAuthorize;
|
||
|
|
u16 OfflineAuthorizeNumberMax;
|
||
|
|
PREXDATA_Type PREXDATA[5];
|
||
|
|
u32 PREXDATA_WaitUpNummber;//待上传数量
|
||
|
|
PREXDATA_Upload_Type PREXDATA_Upload;
|
||
|
|
u32 PREXDATA_TTC;
|
||
|
|
PREXDATA_Type PrintLastRecord[64];//越南打印每把枪最后一笔数据
|
||
|
|
PREXDATA_Type PrintRecord;//历史记录打印,后台下发数据
|
||
|
|
PrintInfo_Type PrintInfo;
|
||
|
|
ROM_UpData_Type ROM_UpData;
|
||
|
|
u8 ROM_UpData_ProgressBar;
|
||
|
|
u8 ROM_UpData_Port;
|
||
|
|
LTGunState_TypeDef LTGunState; //蓝天协议枪状态
|
||
|
|
//YGGunState_TypeDef YGGunState; //龙野协议枪状态
|
||
|
|
DartGunState_TypeDef DartGunState;//Dart协议枪状态
|
||
|
|
HYState_TypeDef HYState; //弘扬协议状态
|
||
|
|
HYSelfTestState_TypeDef HYSelfTestState;//弘扬协议状态
|
||
|
|
u8 FRam_Flag;
|
||
|
|
u8 ATDB45_Flag;
|
||
|
|
u8 ATDB45Type;
|
||
|
|
u8 Frame[513];
|
||
|
|
u8 UDisk_Flag;
|
||
|
|
CTIME_type CTIME;
|
||
|
|
CTIME_type PosCTIME;
|
||
|
|
u32 RNGData;
|
||
|
|
float Apacity[100];
|
||
|
|
u8 TankNumTop;
|
||
|
|
TankState_Type TankState[5][12];
|
||
|
|
TankData_Type TankData[5][12];
|
||
|
|
CNGPLCData_Type CNGPLCData;
|
||
|
|
CNGPLCState_TypeDef CNGPLCState;
|
||
|
|
|
||
|
|
WhiteList_Type WhiteList;//白名单列表
|
||
|
|
|
||
|
|
//MessageQueue_Type POS_TX_MessageQueue;
|
||
|
|
u8 POS_TX_CMDNow;
|
||
|
|
u8 PCCountMail_Flag;
|
||
|
|
u16 PCMail_RX_Len;
|
||
|
|
|
||
|
|
u8 PosYWY_Pressure_Nummber;
|
||
|
|
timer_TypeDef CTIMEReadTimer;
|
||
|
|
timer_TypeDef HeartbeatTimer;
|
||
|
|
timer_TypeDef POS_RS232Timer;
|
||
|
|
timer_TypeDef ReSendDataTimer;
|
||
|
|
//PCCount_RX_Buff_TypeDef PCCountMail;
|
||
|
|
|
||
|
|
u8 ConnectType;
|
||
|
|
timer_TypeDef DelayDetectionTimer; //网络延迟检测定时器
|
||
|
|
u32 DelayDetection;//网络延迟数据,0表示收不到信息
|
||
|
|
timer_TypeDef POSCutTimer;
|
||
|
|
timer_TypeDef MDRestartTimer[4]; //
|
||
|
|
u8 POSLOCK_Impower;
|
||
|
|
POSNetSetState_TypeDef POSNetSetState;
|
||
|
|
u8 ICCID[21];
|
||
|
|
POSData_Type POSData;
|
||
|
|
POS_Info_Type POS_Info;
|
||
|
|
timer_TypeDef GPSDataTimer;
|
||
|
|
GPS_Type GPSData;
|
||
|
|
|
||
|
|
u8 Timer_Num_Top;
|
||
|
|
volatile timer_TypeDef *Timer_Buff[200];
|
||
|
|
timer_TypeDef AnalogTimer;
|
||
|
|
MDConnectState_TypeDef MDConnectState[5];
|
||
|
|
u8 MD_Port_Num_Top;
|
||
|
|
u8 MD_Gun_Num_Top;
|
||
|
|
timer_TypeDef MBCountRXIDLETimer[4];
|
||
|
|
timer_TypeDef MBCountTimer[4];
|
||
|
|
u8 MBCountCutNum[4][16]; //断线定时器
|
||
|
|
MD_Multiplex_Port_Data_Type MD_Multiplex_Port_Data;//端口5,多路复用口
|
||
|
|
MD_Multiplex_Port_Info_Type MD_Multiplex_Port_Info;
|
||
|
|
timer_TypeDef MD_MultiplexRXIDLETimer;
|
||
|
|
timer_TypeDef MD_MultiplexTimer;
|
||
|
|
u16 MD_Multiplex_Rec_Nummber;
|
||
|
|
u16 MD_Multiplex_Rec_NummberB;//临时判断接受长度
|
||
|
|
MD_Port_Data_Type MD_Port_Data[4];
|
||
|
|
MD_Port_Info_Type MD_Port_Info[4];
|
||
|
|
u16 MD_Rec_Nummber[4];
|
||
|
|
u16 MD_Rec_NummberB[4];//临时判断接受长度
|
||
|
|
timer_TypeDef MD_FramContinuityTimer[4];
|
||
|
|
timer_TypeDef POSReLinkTimer;
|
||
|
|
|
||
|
|
timer_TypeDef MD_LORA_SlaveTimer;
|
||
|
|
u8 MD_LORA_Slave_Flag;
|
||
|
|
u8 MD_LORA_Set_Flag;
|
||
|
|
}TXHData_type;
|
||
|
|
|
||
|
|
//******************************************************************************
|
||
|
|
extern volatile TXHData_type TXHData;//定义指针数据
|
||
|
|
extern const u8 BoxVersion[11];
|
||
|
|
extern cup_t STM32CPU;
|
||
|
|
void TXH_Init(void);
|
||
|
|
void TXH_Task(void);
|
||
|
|
|
||
|
|
//------------------------------------------------------------------------------
|
||
|
|
|
||
|
|
#endif
|