#ifndef JT808_SET_TERM_PARAM_H_ #define JT808_SET_TERM_PARAM_H_ #include "jt808_protocol.h" #include "jt808_config.h" #pragma pack(1) // 终端参数设置项参数ID typedef enum { HeartBeatInterval = 0x0001,// DWORD, 终端心跳发送间隔(s) MainServerAddr = 0x0013,//STRING, 主服务器地址,IP 或域名 ServerPort = 0x0018,//DWORD, 服务器 TCP 端口 DefaultTimeReportInterval = 0x0029,// DWORD, 缺省时间汇报间隔 InflexionAngle = 0x0030,// DWORD, 拐点补传角度, < 180° MaxSpeed = 0x0055,// DWORD, 最高速度, km/h. ProvinceID = 0x0081,// WORD, 车辆所在的省域 ID CityID = 0x0082,// WORD, 车辆所在的市域 ID CarPlateNum = 0x0083,//STRING, 公安交通管理部门颁发的机动车号牌 CarPlateColor = 0x0084,//车牌颜色,按照 JT/T415-2006 的 5.4.12 }set_TermParamID_t; typedef struct{ uint32_t HeartBeatInterval;// DWORD, 终端心跳发送间隔(s) uint8_t MainServerAddr[50];//STRING, 主服务器地址,IP 或域名 uint32_t ServerPort;//DWORD, 服务器 TCP 端口 uint32_t DefaultTimeReportInterval;// DWORD, 缺省时间汇报间隔 uint32_t InflexionAngle;// DWORD, 拐点补传角度, < 180° uint32_t MaxSpeed;// DWORD, 最高速度, km/h uint16_t ProvinceID;// WORD, 车辆所在的省域 ID uint16_t CityID;// WORD, 车辆所在的市域 ID uint8_t CarPlateNum[10];//STRING, 公安交通管理部门颁发的机动车号牌 uint8_t CarPlateColor;//车牌颜色,按照 JT/T415-2006 的 5.4.12 }set_TermParam_t; // big_标记的参数需以大端方式存储,需手动转换为大端 typedef struct {// 终端参数项 uint8_t phone_BCDnum[6];// 终端手机号 uint16_t msg_flow_num;// 累加的消息流水号 Term_RegInfo_t big_reg_info; // 注册信息 Term_Auth_t big_auth_info; // 终端鉴权信息 set_TermParam_t set_term_param; // 设置终端参数 GetSpecificTermParams_t big_specific_params; // 解析出的待查询指定终端参数列表 Term_Ctrl_t big_ctrl_info; // 解析出的终端控制信息 Term_Upgrade_t big_upgrade_info; // 解析出的升级信息 LocReport_t big_loc_report; // 位置信息汇报 LocTrackingCtrl_t big_loc_tracking_ctrl; // 临时位置跟踪控制 }Term_Param_item_t; #pragma pack() extern Term_Param_item_t jt808_term_param_item; extern osThreadFunc_t Autoreport_param_ThreadId; // 控制车辆状态 void jt808_Set_CarStatus(uint8_t status); // 获取车辆状态 uint8_t jt808_Get_CarStatus(void); // 设置终端参数 int jt808_setTermParam(set_TermParamID_t param_id, void *param, uint8_t param_len); // 启动自动上报参数 void jt808_Autoreport_param_start(void); // 停止自动上报参数 void jt808_Autoreport_param_stop(void); // 初始化终端参数 void jt808_set_term_param_init(void); #endif // JT808_SET_TERM_PARAM_H_