📄 traffic_.h
字号:
#ifndef __TRAFFIC_H
#define __TRAFFIC_H
#if PROTOCOL_TRAFFIC_EN>0
//////////////////////////////////////////4.5 交通运输物流客运类专用类协议 50//////////////////////////
//4.5.1 下行数据格式 50
typedef enum
{
D_CreateRoundAreaComm =0x0801, //4.5.1.1 设置圆型区域(命令ID:0801H) 50
D_DeleteRoundAreaComm =0x0802, //4.5.1.2 删除圆型区域(命令ID:0802H) 51
D_CreateRectAreaComm =0x0803, //4.5.1.3 设置矩形区域(命令ID:0803H) 52
D_DeleteRectAreaComm =0x0804, //4.5.1.4 删除矩型区域(命令ID:0804H) 53
D_CreatePolygonAreaComm =0x0805, //4.5.1.5 设置多边形区域(命令ID:0805H) 53
D_DeletePolygonAreaComm =0x0806, //4.5.1.6 删除多边形区域(命令ID:0806H) 54
D_CreateRouteAreaComm =0x0807, //4.5.1.7 设置路线区域(命令ID:0807H) 54
D_DeleteRouteAreaComm =0x0808, //4.5.1.8 删除路线区域(命令ID:0808H) 55
D_SetupCompressRevertComm =0x0809, //4.5.1.9 设置压缩回传(命令ID:0809H) 56
D_SetupDriverIDComm =0x080A, //4.5.1.10 设置驾驶员ID(命令ID:080AH) 56
D_CenterNavigationComm =0x080B, //4.5.1.11 中心导航指令(命令ID:080BH) 57
D_SendoutMobileTextInfoComm =0x080C, //4.5.1.12 下发手机文本信息(命令ID:080CH) 58
D_SendoutMobileSchedulerInfoComm =0x080D //4.5.1.13 下发手机调度信息(命令ID:080DH) 58
}ENUM_TrafficCommID_DOWN;
//4.5.1.1 设置圆型区域(命令ID:0801H) 50
typedef struct
{
INT16U area_ID; //区域ID
INT16U area_Property; //区域属性
//区域属性:
//位 标志
//0 1:根据时间(设置的起始及结束时间)
//1 1:限速(根据设置的最高速度及超速持续时间)
//2 1:进区域报警给驾驶员
//3 1:进区域报警给平台
//4 1:出区域报警给驾驶员
//5 1:出区域报警给平台
//6~15 保留
INT8U center_Latitude[4]; //中心点纬度 . 纬度×1000000
INT8U center_Longitude[4]; //中心点经度 . 经度×1000000
INT8U radius[4]; //半径。
INT8U strart_Time[3]; //起始时间。 表示区域生效每天的开始时间,第一个字节代表小时,第二个字节代表分钟,第三个字节代表秒
INT8U end_Time[3]; //结束时间。
INT8U tipTop_Speed; //最高速度。 单位:KM/H
INT16U overSpeed_Duration; //超速持续时间。单位:秒
}STRU_AreaItem_Form;
typedef struct
{
INT16U area_Cou; //区域数。
STRU_AreaItem_Form * pSTRU_AreaItem_Form; //<500.总长度不超过500个字节,否则用多条指令。
}STRU_D_CreateRoundArea_Comm;
//4.5.1.2 删除圆型区域(命令ID:0802H) 51
typedef struct
{
INT8U area_Cou; //区域数。本条指令中包含的区域数,不超过125,多于125用多条消息,0为删除所有圆形区域
INT16U * pArea_ID; //区域ID1~N.
}STRU_D_DeleteRoundArea_Comm;
//4.5.1.3 设置矩形区域(命令ID:0803H) 52
typedef struct
{
INT16U area_ID; //区域ID
INT16U area_Property; //区域属性
//区域属性:
//位 标志
//0 1:根据时间(设置的起始及结束时间)
//1 1:限速(根据设置的最高速度及超速持续时间)
//2 1:进区域报警给驾驶员
//3 1:进区域报警给平台
//4 1:出区域报警给驾驶员
//5 1:出区域报警给平台
//6~15 保留
INT8U LeftUp_Latitude[4]; //左上点纬度 . 纬度×1000000
INT8U LeftUp_Longitude[4]; //左上点纬度经度 . 经度×1000000
INT8U LeftDown_Latitude[4]; //左上点纬度 . 纬度×1000000
INT8U LeftDown_Longitude[4]; //左上点纬度经度 . 经度×1000000
INT8U radius[4]; //半径。
INT8U strart_Time[3]; //起始时间。 表示区域生效每天的开始时间,第一个字节代表小时,第二个字节代表分钟,第三个字节代表秒
INT8U end_Time[3]; //结束时间。
INT8U tipTopSpeed; //最高速度。 单位:KM/H
INT16U overSpeedDuration; //超速持续时间。单位:秒
}STRU_RectAreaItem_Form ;
typedef struct
{
INT16U area_Cou; //区域数。
STRU_RectAreaItem_Form * pSTRU_RectAreaItem_Form; //<500.总长度不超过500个字节,否则用多条指令。
}STRU_D_CreateRectArea_Comm;
//4.5.1.4 删除矩型区域(命令ID:0804H) 53
typedef STRU_D_DeleteRoundArea_Comm STRU_D_DeleteRectArea_Comm;
//4.5.1.5 设置多边形区域(命令ID:0805H) 53
//顶点项内容
typedef struct
{
INT8U top_Latitude[4]; // 纬度×1000000
INT8U top_Longitude[4]; // 经度×1000000
}STRU_TopItem_Form;
typedef struct
{
INT16U area_ID; //区域ID
INT16U area_Property; //区域属性
//区域属性:
//位 标志
//0 1:根据时间(设置的起始及结束时间)
//1 1:限速(根据设置的最高速度及超速持续时间)
//2 1:进区域报警给驾驶员
//3 1:进区域报警给平台
//4 1:出区域报警给驾驶员
//5 1:出区域报警给平台
//6~15 保留
INT8U strart_Time[3]; //起始时间。 表示区域生效每天的开始时间,第一个字节代表小时,第二个字节代表分钟,第三个字节代表秒
INT8U end_Time[3]; //结束时间。
INT8U tipTopSpeed; //最高速度。 单位:KM/H
INT16U overSpeedDuration; //超速持续时间。单位:秒
INT16U areaTop_cou; //区域总顶点数
INT8U segment_Cou; //分段数
INT8U segment_ID; //段号
STRU_TopItem_Form * pSTRU_TopItem_Form; //顶点项1~n
}STRU_D_CreatePolygonArea_Comm;
//4.5.1.6 删除多边形区域(命令ID:0806H) 54
typedef STRU_D_DeleteRoundArea_Comm STRU_D_DeletePolygonArea_Comm;
//4.5.1.7 设置路线区域(命令ID:0807H) 54
typedef struct
{
INT16U area_ID; //区域ID
INT16U area_Property; //区域属性
//区域属性:
//位 标志
//0 1:根据时间(设置的起始及结束时间)
//1 1:限速(根据设置的最高速度及超速持续时间)
//2 1:进区域报警给驾驶员
//3 1:进区域报警给平台
//4 1:出区域报警给驾驶员
//5 1:出区域报警给平台
//6~15 保留
INT8U strart_Time[3]; //起始时间。 表示区域生效每天的开始时间,第一个字节代表小时,第二个字节代表分钟,第三个字节代表秒
INT8U end_Time[3]; //结束时间。
INT8U tipTopSpeed; //最高速度。 单位:KM/H
INT16U overSpeedDuration; //超速持续时间。单位:秒
INT16U routeWidth; //路段宽度
INT16U areaInflexion_cou; //区域总拐点数
INT8U segment_Cou; //分段数
INT8U segment_ID; //段号
STRU_TopItem_Form * pSTRU_InflexionItem_Form; //拐点项1~n
}STRU_D_CreateRouteArea_Comm;
//4.5.1.8 删除路线区域(命令ID:0808H) 55
typedef STRU_D_DeleteRoundArea_Comm STRU_D_DeleteRouteArea_Comm;
//4.5.1.9 设置压缩回传(命令ID:0809H) 56
typedef struct
{
INT8U compressRevertData; // 需压缩回传的数据. 00:表示定位数据.01:表示带工作参数的定位数据
INT8U accIn_CompressTimeSlot; //压缩的时间间隔(ACC开).单位秒,最小为1秒。
INT8U accOut_CompressTimeSlot; //压缩的时间间隔(ACC关).单位秒,最小为1秒。
INT8U compress_PlaceCou; //每包压缩的位置数。 表示一个数据包可以包含的压缩位置的数量,表示范围10~33,默认值为33。
INT16U compressRevert_Cou; //压缩回传的次数. 表示需要压缩回传的次数,当改值为FFFFH时表示连续不断的回传,当该值为0000H表示停止发送。
}STRU_D_SetupCompressRevert_Comm;
//4.5.1.10 设置驾驶员ID(命令ID:080AH) 56
typedef struct STRU_D_SetupDriverID_Form
{
INT8U driverID_Len; //驾驶员ID的长度。
INT8U * pDriverID; //驾驶员ID。 ASCII码表示,驾驶员1的ID
INT8U driverLoginMobile_Len; // 驾驶员ID1登陆手机号长度
INT8U * pDriverLoginMobile; // ASCII码表示,驾驶员1的手机号
//struct STRU_D_SetupDriverID_Form * pSTRU_D_SetupDriverID_Form;
}STRU_D_SetupDriverID_Comm;
//4.5.1.11 中心导航指令(命令ID:080BH) 57
typedef struct
{
INT8U top_Latitude[4]; // 纬度×1000000
INT8U top_Longitude[4]; // 经度×1000000
INT32U statusBit; //待定。
}STRU_DataPackage_Form;
typedef struct
{
INT8U strart_Time[3]; //起始时间。 表示区域生效每天的开始时间,第一个字节代表小时,第二个字节代表分钟,第三个字节代表秒
INT8U end_Time[3]; //结束时间。
INT8U dataPackage_Cou; //数据包条数。 数值范围 0-15,纬度、经度、状态位组成一条数据包
STRU_DataPackage_Form * pSTRU_DataPackage_Form;
INT8U * pDisplayInfo; //显示信息。用ASCII码表示,长度小于256个字节。用于传送用户信息。
}STRU_D_CenterNavigation_Comm;
//4.5.1.12 下发手机文本信息(命令ID:080CH) 58
typedef STRU_D_DownTextInfo_Comm STRU_D_SendoutMobileTextInfo_Comm;
//4.5.1.13 下发手机调度信息(命令ID:080DH) 58
typedef struct
{
INT16U * pAnsw_SeqID; //取值范围:00H-FFFFH,这条信息的序列号,用户返回的时候会返回这个序列号, 采用Unicode编码方式
INT8U * pListSeparator; //":" 采用Unicode位编码方式
INT16U * pTextInfo; //<200采用Unicode位编码方式
}STRU_D_SendoutMobileSchedulerInfo_Comm;
//4.5.2 上行数据格式 59
typedef enum
{
U_PassInAndOut_RouteAlarmComm =0x0901, //4.5.2.1 进出区域/路线报警指令(命令ID:0901H) 59
U_UploadCompressRevertComm =0x0902, //4.5.2.2 上传压缩回传信息(命令ID:0902H) 60
U_UploadDriverInfoComm =0x0903, //4.5.2.3 上传驾驶员信息(命令ID:0903H) 63
U_UploadMobileSMSInfoComm =0x0904, //4.5.2.4 上传手机短信信息(命令ID:0904H) 64
U_BlindSectionRepairComm =0x0905 //4.5.2.5 盲区补偿(命令ID:0905H) 65
}ENUM_TrafficCommID_UP;
//4.5.2.1 进出区域/路线报警指令(命令ID:0901H) 59
typedef struct
{
INT8U areaType; //区域类型 1 1:圆型区域;2:矩形区域;3:多边形区域;4:路线
INT16U areaOrRoute_ID; // 区域或线路ID 2
INT8U inOut; // 方向 1 0:进;1:出
STRU_U_StatusBit_FORM * pSTRU_U_StatusBit_FORM;
}STRU_U_PassInAndOut_RouteAlarm_Comm;
//4.5.2.2 上传压缩回传信息(命令ID:0902H) 60
typedef struct
{
INT16U latitude; //压缩点2的经纬度值(两个字节bit15~bit0)的最低位bit15表示正负值:为0表示此值为正,直接加上压缩点1经纬度值即为当前的经纬度值,
INT16U longitude; //如果为1则表示此值为负,压缩点1经纬度减去此数为当前的经纬度。
INT8U speed; //速度,单位:公里/小时,表示范围0~255。从GPS模块接收处理后的速度
INT8U direction; //正北方向为0度,顺时针增加,单位:2度,数值范围0~180。
INT16U heightAboveSeaLevel;//海拔高度,单位:米,
//????高位第一位表示正负高度,为1表示海拔为正高度,为0表示海拔为负高度,表示范围-32767~32767米。
//INT8U dateTime[6]; //第一个字节代表年(2000年为0年),第二个字节代表月,第三个字节代表日,第四个字节代表小时,第五个字节代表分钟,第六个字节代表秒
INT32U statusBit; //用来表示定位终端的各种状态信息。
}STRUCT_CompressPointStatusBit_Form;
typedef struct STRUCT_CompressPoint_Form
{
INT8U compressPoint_DataLen; //压缩点1数据长度 1
STRUCT_CompressPointStatusBit_Form * pSTRUCT_CompressPointStatusBit_Form;
INT8U * pCompressPoint_WorkParam;//压缩点1工作参数 不定 如果设置工作数据,需上传
struct STRUCT_CompressPoint_Form * pSTRUCT_CompressPoint_Form;
}STRU_CompressPoint_Form;
typedef struct
{
INT16U commID; // 数据命令ID 2 需上传数据的命令ID
INT8U accIn_CompressTimeSlot; //压缩的时间间隔(ACC开).单位秒,最小为1秒。 该值与中心下发的设定压缩回传参数中的值相等
INT8U accOut_CompressTimeSlot; //压缩的时间间隔(ACC关).单位秒,最小为1秒。
INT8U datumMark_DataLen; //基准点数据长度 1
STRU_U_StatusBit_FORM * pSTRU_U_StatusBit_FORM;
INT8U * pDatumMark_WorkParam; //基准点工作参数 不定 如果设置工作数据,需上传
STRU_CompressPoint_Form * pSTRU_CompressPoint_Form;
}STRU_U_UploadCompressRevert_Comm;
//4.5.2.3 上传驾驶员信息(命令ID:0903H) 63
typedef struct
{
STRU_U_StatusBit_FORM * pSTRU_U_StatusBit_FORM;
INT8U driverID_Len; //驾驶员ID长度 1 驾驶员所选择的菜单ID
INT8S * pDriverID; //驾驶员ID 不定 ASCII码表示
INT8U mobileNum_Len; //驾驶员手机号长度 1
INT8S * pMobileNum; //驾驶员手机号 不定 ASCII码表示
INT8S * pMobile_SMSInfo; //手机短信内容 …
}STRU_U_UploadDriverInfo_Comm;
//4.5.2.4 上传手机短信信息(命令ID:0904H) 64
typedef STRU_U_UploadDriverInfo_Comm STRU_U_UploadMobileSMSInfo_Comm;
//4.5.2.5 盲区补偿(命令ID:0905H) 65 同//4.4.2.5 上传日志信息(命令ID:0505H) 49
typedef STRU_U_UploadLogInfo_Comm STRU_U_BlindSectionRepair_Comm;
/////////////////////////////////////////////////////////////////////////////////////////////////
#endif
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -