@Pigmon
2018-06-20T06:01:02.000000Z
字数 1832
阅读 1114
慧拓
const char* UI_IP = "127.0.0.1";const int UI_PORT = 10010; // 对应 UplinkDGramconst char* PANOSIM_IP = "10.130.210.63";const int PANOSIM_PORT = 10012; // 对应 UplinkDGramconst int STATE_PORT = 10013; // 按键事件触发报文的端口,对应 HomeDgram_Triggerconst int LOCAL_PORT = 10015; // 模拟器输入实时状态的发送端口 HomeDgram_Ctrl
#pragma once// 车辆上行信息,接收到就发给UI和PanoSimstruct UplinkDGram{short m_gram_header; // 报文头 0xAAAshort m_gram_id; // 报文标识 0xAF1short m_vehicle_id; // 车辆ID 0x00A ~ 0x00Cshort m_vehicle_state; // 0:正常; 1:故障unsigned int m_longitude; // 经度unsigned int m_latitude; // 纬度unsigned short m_heading; // 航向short m_speed; // 速度int m_steering; // 方向盘转角short m_ctrl_sign; // 0:自动; 1:遥控short m_ctrl_info; // 控制信息 1:车辆主动请求接管; 2:车辆故障 ...short m_rpm; // RPMshort m_unused0; //void Print(){printf("DGram CarID: %d\n", m_vehicle_id);printf("DGram m_speed: %d\n", m_speed);printf("DGram m_steering: %d\n", m_steering);}};struct DownlinkDGram{short m_gram_header; // 报文头 0xAAAshort m_gram_id; // 报文标识 0xAF1short m_vehicle_id; // 车辆ID 0x00A ~ 0x00Cshort m_rc_speed; // 遥控速度short m_rc_acc_pedal;short m_rc_brake_pedal;short m_ctrl_sign; // 遥控状态, 1: 遥控; 0: 自动short m_unused;int m_rc_steer; // 遥控方向盘转角void Print(){printf("DGram CarID: %d\n", m_vehicle_id);printf("DGram Steering: %d\n", m_rc_steer);printf("DGram Acc: %d\n", m_rc_acc_pedal);printf("DGram Brk: %d\n", m_rc_brake_pedal);}};#pragma pack(push)#pragma pack(1)// 模拟器状态报文,一直发送typedef struct HomeDgram_Ctrl{short m_gram_header; // 报文头 0xA00short m_gram_id; // 报文标识 0xA01short m_vehicle_id; // 0 - 当前没有观察任何车辆;或 车辆IDint m_rc_steering; // 模拟方向盘转角short m_rc_speed; // 模拟器速度short m_rc_acc_pedal; // 模拟器油门踏板开度 (0-100)short m_rc_brk_pedal; // 模拟器刹车踏板开度 (0-100)short m_ping_time; // RTTHomeDgram_Ctrl(){m_gram_header = 0xA00;m_gram_id = 0xA01;m_ping_time = 5;}};// 控制更改报文,有按键消息再发送typedef struct HomeDgram_Trigger{short m_gram_header; // 报文头 0x010short m_gram_id; // 报文标识 0x011short m_ctrl_state; // 控制状态 0 - 啥也不做;1 - 遥控; 2 - 同步HomeDgram_Trigger(){m_gram_header = 0x010;m_gram_id = 0x011;}};#pragma pack(pop)