You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
PayloadAPP/Src/GDDC/DCFrameCkCmd.h

206 lines
8.3 KiB
C

#ifndef DCFRAMECKCMD_H
#define DCFRAMECKCMD_H
// //数据注入指令从控发送数据协议
// #pragma once
// //#include "framelib/basetype.h"
// //#include "framelib/DataInject.h"
// #pragma pack(1)
// typedef struct struProtocalDataInject_DC
// {
// UINT8 DCtype; //吊舱类型
// union
// {
// struct
// {
// UINT8 SwitchCmd; //开关指令
// INT16 param1; //参数1
// INT16 param2; //参数2
// UINT8 reserve[9]; //保留
// }DC_13Ins;//13所吊舱控制指令
// struct
// {
// BYTE param; //参数
// BYTE param2; //参数
// BYTE param3; //参数
// BYTE param4; //参数
// BYTE param5; //参数
// BYTE param6; //参数
// BYTE param7; //参数
// BYTE param8; //参数
// BYTE param9; //参数
// BYTE param10; //参数
// BYTE param11; //参数
// BYTE param12; //参数
// BYTE param13; //参数
// BYTE param14; //参数
// }DC_WHTJ; //天进吊舱控制指令
// BYTE DataIn[14];//14个字节
// };
// }ProtocalDataInject_DC;
// typedef struct struDataInject_DC
// {
// UINT8 DCtype; //吊舱类型
// union
// {
// struct
// {
// UINT8 SwitchCmd; //开关指令
// double param1; //参数1
// double param2; //参数2
// UINT8 reserve[9]; //保留
// }DC_13Ins;//13所吊舱控制指令
// struct
// {
// BYTE param; //参数
// BYTE param2; //参数
// BYTE param3; //参数
// BYTE param4; //参数
// BYTE param5; //参数
// BYTE param6; //参数
// BYTE param7; //参数
// BYTE param8; //参数
// BYTE param9; //参数
// BYTE param10; //参数
// BYTE param11; //参数
// BYTE param12; //参数
// BYTE param13; //参数
// BYTE param14; //参数
// }DC_WHTJ;//天进吊舱控制指令
// BYTE DC_Data[14];//14个字节
// };
// }DataInject_DC;
// //数据注入指令从控发送数据帧---13所吊舱
// typedef struct struDCFrameCkCmd
// {
// UINT8 FrameHead[2]; //帧头EB 90
// UINT8 fcode; //数据注入指令码
// ProtocalDataInject_DC protocalDataInject_DC;
// UINT16 crc16; //校验位
// }DCFrameCkCmd;
// #pragma pack()
// //数据结构体
// typedef struct struDCFrameCkCmdData
// {
// UINT8 fcode; //数据注入指令码
// DataInject_DC dataInject_DC;
// UINT16 crc16; //校验位
// }DCFrameCkCmdData;
// #pragma pack()
// class CDCFrameCkCmdFrame : public CFrameAbstract
// {
// public:
// DCFrameCkCmdData Data;
// public:
// CDCFrameCkCmdFrame()
// {
// //具体数据长度
// _tcscpy(Name, _T("DateInject_CK_DC"));//数据注入 从控 吊舱
// FrameLength = 20;
// HeadLength = 2;
// Head[0] = 0xEB;
// Head[1] = 0x90;
// memcpy(Addr(), Head, HeadLength);//把Head的第一位到HeadLength位的值赋值给Addr()
// CheckLength = 2;
// CheckPos = FrameLength - 2;
// FrameType = ftFKu;
// memset(&Data,0,sizeof(DCFrameCkCmdData));//将Data中的数据全都初始化为0
// }
// virtual ~CDCFrameCkCmdFrame(){}
// virtual void Encode()
// {
// DCFrameCkCmd *pBuff = (DCFrameCkCmd*) Addr();
// pBuff->fcode = Data.fcode;
// pBuff->protocalDataInject_DC.DCtype = Data.dataInject_DC.DCtype;
// switch(Data.dataInject_DC.DCtype)
// {
// case 0x01:
// pBuff->protocalDataInject_DC.DC_13Ins.SwitchCmd = Data.dataInject_DC.DC_13Ins.SwitchCmd;
// pBuff->protocalDataInject_DC.DC_13Ins.param1 = Data.dataInject_DC.DC_13Ins.param1;
// pBuff->protocalDataInject_DC.DC_13Ins.param2 = Data.dataInject_DC.DC_13Ins.param2;
// memset(&(pBuff->protocalDataInject_DC.DC_13Ins.reserve),0,sizeof(pBuff->protocalDataInject_DC.DC_13Ins.reserve));
// break;
// case 0x02:
// pBuff->protocalDataInject_DC.DC_WHTJ.param = Data.dataInject_DC.DC_WHTJ.param;
// pBuff->protocalDataInject_DC.DC_WHTJ.param2 = Data.dataInject_DC.DC_WHTJ.param2;
// pBuff->protocalDataInject_DC.DC_WHTJ.param3 = Data.dataInject_DC.DC_WHTJ.param3;
// pBuff->protocalDataInject_DC.DC_WHTJ.param4 = Data.dataInject_DC.DC_WHTJ.param4;
// pBuff->protocalDataInject_DC.DC_WHTJ.param5 = Data.dataInject_DC.DC_WHTJ.param5;
// pBuff->protocalDataInject_DC.DC_WHTJ.param6 = Data.dataInject_DC.DC_WHTJ.param6;
// pBuff->protocalDataInject_DC.DC_WHTJ.param7 = Data.dataInject_DC.DC_WHTJ.param7;
// pBuff->protocalDataInject_DC.DC_WHTJ.param8 = Data.dataInject_DC.DC_WHTJ.param8;
// pBuff->protocalDataInject_DC.DC_WHTJ.param9 = Data.dataInject_DC.DC_WHTJ.param9;
// pBuff->protocalDataInject_DC.DC_WHTJ.param10 = Data.dataInject_DC.DC_WHTJ.param10;
// pBuff->protocalDataInject_DC.DC_WHTJ.param11 = Data.dataInject_DC.DC_WHTJ.param11;
// pBuff->protocalDataInject_DC.DC_WHTJ.param12 = Data.dataInject_DC.DC_WHTJ.param12;
// pBuff->protocalDataInject_DC.DC_WHTJ.param13 = Data.dataInject_DC.DC_WHTJ.param13;
// pBuff->protocalDataInject_DC.DC_WHTJ.param14 = Data.dataInject_DC.DC_WHTJ.param14;
// break;
// default:
// break;
// }
// }
// virtual void Decode()
// {
// DCFrameCkCmd *pBuff = (DCFrameCkCmd*) Addr();
// Data.fcode = pBuff->fcode;
// Data.dataInject_DC.DCtype = pBuff->protocalDataInject_DC.DCtype;
// switch(pBuff->protocalDataInject_DC.DCtype)
// {
// case 0x01:
// Data.dataInject_DC.DC_13Ins.SwitchCmd = pBuff->protocalDataInject_DC.DC_13Ins.SwitchCmd;
// Data.dataInject_DC.DC_13Ins.param1 = pBuff->protocalDataInject_DC.DC_13Ins.param1;
// Data.dataInject_DC.DC_13Ins.param2 = pBuff->protocalDataInject_DC.DC_13Ins.param2;
// memset(&(Data.dataInject_DC.DC_13Ins.reserve),0,sizeof(Data.dataInject_DC.DC_13Ins.reserve));
// break;
// case 0x02:
// Data.dataInject_DC.DC_WHTJ.param = pBuff->protocalDataInject_DC.DC_WHTJ.param;
// Data.dataInject_DC.DC_WHTJ.param2 = pBuff->protocalDataInject_DC.DC_WHTJ.param2;
// Data.dataInject_DC.DC_WHTJ.param3 = pBuff->protocalDataInject_DC.DC_WHTJ.param3;
// Data.dataInject_DC.DC_WHTJ.param4 = pBuff->protocalDataInject_DC.DC_WHTJ.param4;
// Data.dataInject_DC.DC_WHTJ.param5 = pBuff->protocalDataInject_DC.DC_WHTJ.param5;
// Data.dataInject_DC.DC_WHTJ.param6 = pBuff->protocalDataInject_DC.DC_WHTJ.param6;
// Data.dataInject_DC.DC_WHTJ.param7 = pBuff->protocalDataInject_DC.DC_WHTJ.param7;
// Data.dataInject_DC.DC_WHTJ.param8 = pBuff->protocalDataInject_DC.DC_WHTJ.param8;
// Data.dataInject_DC.DC_WHTJ.param9 = pBuff->protocalDataInject_DC.DC_WHTJ.param9;
// Data.dataInject_DC.DC_WHTJ.param10 = pBuff->protocalDataInject_DC.DC_WHTJ.param10;
// Data.dataInject_DC.DC_WHTJ.param11 = pBuff->protocalDataInject_DC.DC_WHTJ.param11;
// Data.dataInject_DC.DC_WHTJ.param12 = pBuff->protocalDataInject_DC.DC_WHTJ.param12;
// Data.dataInject_DC.DC_WHTJ.param13 = pBuff->protocalDataInject_DC.DC_WHTJ.param13;
// Data.dataInject_DC.DC_WHTJ.param14 = pBuff->protocalDataInject_DC.DC_WHTJ.param14;
// break;
// default:
// break;
// }
// Data.crc16 = pBuff->crc16;
// }
// //void Phrase(const BYTE* Src, const UINT32 Count)
// //{
// //}
// virtual struCHECK CheckCRC(BYTE* const p)
// {
// //return MakeCheckSum_WuHanTJDC(p,31);
// return MakeCheckCRC(p+2,16);
// }
// };
#endif // DCFRAMECKCMD_H