W_Protocol.H
上传用户:zanguozi01
上传日期:2014-02-19
资源大小:155k
文件大小:12k
源码类别:

GPS编程

开发平台:

Others

  1. /********************************************************
  2. * 文件名:  W_Protocol.H
  3. * 创建时间:2004年12月7日
  4. * 创建人:  
  5. * 版本号:  1.00
  6. * 功能:   定义车载终端与系统中心之间的无线协议
  7. * 文件属性:公共文件
  8. * 修改历史:(每条详述)
  9. ********************************************************/
  10. /*
  11. ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  12. GPS智能监控调度系统---通讯协议说明书:
  13. ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  14. 一,通讯协议的格式定义:
  15. 1.1 消息结构
  16. 字节序 字段名 长度(Byte) 说明
  17. 0 SOH 1 消息头
  18. 1 MSG# 1 消息号
  19. 2 CMPL-MSG# 1
  20. 3 Length 1 消息长度
  21. 4 ACK 1 响应符
  22. 5 Class 1 类别
  23. 6 gGroup 1 组别
  24. 7 gVID(MSB) 1
  25. 8 gVID(LSB) 1 车号
  26. 9 Data Block N 数据块,不定长
  27. 9+N CHK(MSB) 1
  28. 10+N CHK(LSB) 1 校验和
  29. 11+N EOT 1 消息尾
  30. 1.2 协议说明
  31. 上行和下行的消息均采用相同的通信格式,数据传输采用GPRS格式和SMS格式,采用SMS方式发送的数据
  32. 包最长140个字节。
  33. SOH:消息的第一个字节 0xFF;
  34. ACK: 响应字符,返回的消息中必须包括该命令的ACK;
  35. Length:数据包长度,自SOH开始到CHK以前的数据的字节数;
  36. [Class]+[gGroup]+[gVID],共4个字节,表示一个完整的车辆识别码
  37. CHK:16-bit校验和,将自SOH开始到CHK以前的所有无符号8-bit字符的内容相加而得
  38. 对于消息中于一个字节的数据,均采用“高位在前,低位在后”的顺序存放
  39. EOT:为消息的最后一个字节0x0D
  40. 二,下行消息传输协议
  41. //////////////////////////////////////////////////////////////////////////
  42. 序号 消息号 消息名称
  43. 1 0x21 即时应召请求
  44. 2 0x23 即时应召派车
  45. 3 0x25 预约应召请求
  46. 4 0x27 预约应召派车
  47. 5 0x41 车辆监控
  48. 6 0x43 定位查询
  49. 7 0x45 诡迹查询
  50. 8 0x47 车辆监听
  51. 9 0x49 报警应答
  52. 10 0x4b 文字信息发布
  53. 11 0x4d 密码提取请求
  54. 12 0x4f 车辆登陆响应
  55. 13 0x61 设置行车区域
  56. 14 0x63 设置城域范围
  57. 15 0x65 电话权限设置
  58. 16 0x67 车辆参数设置
  59. 17 0x81 出城登记响应
  60. 18 0x82 解除被盗报警
  61. 19 0x8a 请求监控应答
  62. 20 0x8e 制动命令
  63. 21 0x8f 解除制动命令
  64. 22 0xa1 设置上传位置时间间隔
  65. 23 0xa5 事故疑点数据查询
  66. 24 0xa9 终端自检报告查询
  67. 25 0xab 带反馈报文
  68. 26 0xaf 设置动态菜单
  69. 27 0xb1 带工号登陆响应
  70. 28 0xb3 带工号签退响应
  71. 29 0xb5 设置车载终端工作方式
  72. 30 0xb7 设置计价器工作方式
  73. 31 0xb9 下载电话号码本
  74. 32 0xbb 设置中心号码
  75. 33 0xbd 通话记录数据反馈
  76. 34 0xc3 设置车辆启动开关
  77. 35 0xc5 设置最大时速
  78. 36 0xc7 中心强制设防状态
  79. 37 0xcb 设置服务器地址,端口号
  80. 38 0xcf 更新车载终端程序
  81. 39 0xd1 车载终端的版本查询
  82. 40 0xd3 设置驾驶员列表
  83. 41 0xd5 车辆里程查询
  84. 42 0xd7 计价器即时营运数据响应
  85. 43 0xd9 计价器参数数据查询
  86. 44 0xdb 计价器历史营运数据查询
  87. 45 0xdd 计价器校时
  88. 46 0xdf 计价器程序更新
  89. 47 0xe1 刷卡机交易数据响应
  90. 48 0xe3 刷卡机历史交易数据查询
  91. 49 0xe5 刷卡机交易打包数据查询
  92. 50 0xe7 下载刷卡机黑名单
  93. 51 0xe9 刷卡机程序更新
  94. /////////////////////////////////////////////////////////////////////////
  95. 三,上行消息传输协议
  96. //////////////////////////////////////////////////////////////////////////
  97. 序号 消息号 消息名称
  98. 1 0x21 即时应召响应
  99. 2 0x23 接客成功
  100. 3 0x25 预约应召响应
  101. 4 0x41 车辆监控响应--监控数据
  102. 5 0x43 定位查询响应
  103. 6 0x45 诡迹查询响应--定位数据
  104. 7 0x46 诡迹查询响应--数据发送结束
  105. 8 0x49 车辆报警
  106. 9 0x4d 车辆密码提取响应
  107. 10 0x4f 车辆登陆信息
  108. 11 0x61 行车区域设置响应
  109. 12 0x65 电话权限设置响应
  110. 13 0x67 车辆参数设置响应
  111. 14 0x81 出城登记
  112. 15 0x83 车辆退出登陆
  113. 16 0x85 车辆求助
  114. 17 0x87 路阻信息
  115. 18 0x89 事故信息
  116. 19 0x8a 请求监控
  117. 20 0x8b 取消监控
  118. 21 0x8c 请求解除监控
  119. 22 0x8d 报警结束
  120. 23 0x8e 制动命令响应
  121. 24 0x8f 解除制动命令响应
  122. 25 0xa1 行驶状态数据
  123. 26 0xa5 事故疑点数据
  124. 27 0xa9 自检报告
  125. 28 0xab 报文阅读回报
  126. 29 0xaf 动态菜单设置响应
  127. 30 0xb1 带工号登陆
  128. 31 0xb3 带工号签退
  129. 32 0xb5 设置车载终端工作方式响应
  130. 33 0xb7 设置计价器工作方式响应
  131. 34 0xb8 请求下载电话号码本
  132. 35 0xb9 下载电话号码本响应
  133. 36 0xbb 中心号码接收响应
  134. 37 0xbd 通话记录数据
  135. 38 0xc3 车辆启动开关设置响应
  136. 39 0xc5 设置最大时速响应
  137. 40 0xc7 中心强制设防状态响应
  138. 41 0xcb 设置服务器地址,端口号响应
  139. 42 0xd1 车载终端的版本数据
  140. 43 0xd3 车载驾驶员列表设置响应
  141. 44 0xd5 车辆里程数据
  142. 45 0xd7 计价器即时营运数据
  143. 46 0xd9 计价器参数数据
  144. 47 0xdb 计价器历史营运数据
  145. 48 0xdd 计价器校时响应
  146. 49 0xdf 计价器程序更新响应
  147. 50 0xe1 刷卡机交易数据
  148. 51 0xe3 刷卡机历史交易数据
  149. 52 0xe5 刷卡机交易打包数据
  150. 53 0xe7 刷卡机黑名单下载响应
  151. 54 0xe9 刷卡机程序更新响应
  152. /////////////////////////////////////////////////////////////////////////
  153. ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  154. */
  155. #ifndef __W_Protocol_H
  156. #define __W_Protocol_H
  157. #define SOH                     0xff //消息头
  158. #define  EOT                     0x0d //消息尾
  159. //下行消息传输协议的定义
  160. #define MUSTER_ASK_DOWN 0x21 //即时应召请求
  161. #define MUSTER_SEND_DOWN 0x23 //即时应召派车
  162. #define PREMUSTER_ASK_DOWN 0x25 //预约应召请求
  163. #define PREMUSTER_SEND_DOWN 0x27 //预约应召派车
  164. #define VEHICLE_WATCH_DOWN 0x41 //车辆监控
  165. #define POSITION_ASK_DOWN 0x43 //定位查询
  166. #define TRACK_ASK_DOWN 0x45 //轨迹查询
  167. #define VEHICLE_MONITOR_DOWN 0x47 //车辆监听
  168. #define ALARM_ECHO_DOWN 0x49 //报警应答
  169. #define WORD_INFORMATION_DOWN 0x4b //文字信息发布
  170. #define PASSWORD_ASK_DOWN 0x4d //密码提取请求
  171. #define VEHICLE_ENTRY_ECHO_DOWN 0x4f //车辆登录响应
  172. #define SET_ALLOW_AREA_DOWM 0x61 //设置行车区域
  173. #define SET_DISTANCE_DATA_DOWN 0x68 //设置间隔距离上传数据点的下行命令
  174. #define SET_PHONE_LIMIT_DOWN 0x63 //电话权限设置
  175. #define PARAMETER_SET_DOWN 0x67 //车辆参数设置
  176. #define OUTCITY_ECHO_DOWN 0x81 //出城登记响应
  177. #define FREE_STRAL_ALARM_DOWN 0x82 //解除被盗报警
  178. #define ALLOW_TCP_QUIT_ECHO_DOWN 0x83 //车辆退出TCP联网状态
  179. #define ASK_WATCH_ECHO_DOWN 0x8a //请求监控应答
  180. #define SET_STOP_COMMAND_DOWN 0x8e //制动命令
  181. #define FREE_STOP_COMMAND_DOWN 0x8f //解除制动命令
  182. #define TIME_INTERVAL_DOWN 0xa1 //设置上传位置时间间隔
  183. #define ACCIDENT_DATA_ASK_DOWN 0xa5 //事故疑点数据查询
  184. #define DEVICE_CHECK_REPORT_DOWN 0xa9 //终端自检报告查询
  185. #define MESSAGE_FEEDBACK_DOWN 0xab //带反馈的报文
  186. #define SET_MENU_DOWN 0xaf //设置动态菜单
  187. #define LAND_ECHO_DOWN 0xb1 //带工号登陆响应
  188. #define QUIT_ECHO_DOWN 0xb3 //带工号签退响应
  189. #define SET_DEVICE_WORKING_DOWN 0xb5 //设置车载终端工作方式
  190. #define SET_TAXI_WORKING_DOWN 0xb7 //设置计价器工作方式
  191. #define CARRY_PHONE_NUM_DOWN 0xb9 //下载电话号码本
  192. #define SET_CENTER_NUM_DOWN 0xbb //设置中心号码
  193. #define CALL_LOG_ECHO_DOWN 0xbd //通话记录数据反馈
  194. #define VEHICLE_STARTUP_DOWN 0xc3 //设置车辆启动开关
  195. #define SET_MAXSPEED_DOWN 0xc5 //设置最大时速
  196. #define FORCE_FORTIFY_DOWN 0xc7 //中心强制设防状态
  197. #define SET_ADDRESS_PORT_DOWN 0xcb //设置服务器地址,端口
  198. #define SET_TCP_ONOROFF_DOWN 0xcd //设置终端进入/退出联网的状态
  199. #define UPGRADE_SYSTEM_DOWN 0xcf //更新车载终端程序
  200. #define QUERY_VERSION_DOWN 0xd1 //车载终端的版本查询
  201. #define SET_DRIVER_LIST_DOWN 0xd3 //设置驾驶员列表
  202. #define SET_DISTANCE_INIT_DOWN 0xD5 //设置里程初始化的值
  203. #define EXTER_EQUIPMENT_DOWN 0xd7 //外接部件数据的命令
  204. #define TEST_SMS_COMMAND_DOWN 0x10 //作为接收到测试命令字
  205. #define SET_SMS_COMMAND_DOWN 0xae //作为短消息固定设置的下行命令,主控转发给显示终端
  206. #define LINE_DATA_DOWN 0x65 //线路数据的下行命令
  207. #define LINE_LIMIT_DISTANCE_DOWN 0x66 //线路数据的限制距离的设置
  208. /*
  209. #define TAXI_DATA_ECHO_DOWN 0xd7 //计价器即时营运数据响应
  210. #define TAXI_PARAMETER_DOWN 0xd9 //计价器参数数据查询
  211. #define TAXI_PASTDATA_ECHO_DOWN 0xdb //计价器历史营运数据查询
  212. #define TAXI_CHECKOUT_DOWN 0xdd //计价器校时
  213. #define TAXI_UPGRADE_DOWN 0xdf //计价器程序更新
  214. #define CARD_DATA_ECHO_DOWN 0xe1 //刷卡机交易数据响应
  215. #define CARD_PASTDATA_ECHO_DOWN 0xe3 //刷卡机历史交易数据查询
  216. #define CARD_DEALDATA_ECHO_DOWN 0xe5 //刷卡机交易打包数据查询
  217. #define LOAD_BLACKLIST_DOWN 0xe7 //下载刷卡机黑名单
  218. #define CARD_UPGRADE_DOWN 0xe9 //刷卡机程序更新
  219. */
  220. /////////////////////////////////////////////////////////////////////////////
  221. //上行消息传输协议的定义:
  222. #define MUSTER_ASK_UP 0x21 //即时应召响应:20
  223. #define MUSTER_SUCCESS_UP 0x23 //接客成功:12
  224. #define PREMUSTER_ECHO_UP 0x25 //预约应召响应:20
  225. #define VEHICLE_WATCHECHO_UP 0x41 //车辆监控响应--定位数据:不定
  226. #define POSITION_ASKECHO_UP 0x43 //定位查询响应:25
  227. #define TRACK_ASKECHO_UP 0x45 //轨迹查询响应--定位数据:不定
  228. #define TRACK_ENDECHO_UP 0x46 //轨迹查询响应--数据发送结束:8
  229. #define ALARM_UP 0x49 //车辆报警:不定
  230. #define PASSWORD_ASKECHO_UP 0x4d //车辆密码提取响应:16
  231. #define VEHICLE_ENTRY_UP 0x4f //车辆登录信息:8
  232. #define ALLOW_AREA_ECHO_UP 0x61 //行车区域设置响应:8
  233. #define PHONE_LIMIT_ECHO_UP 0x65 //电话权限设置响应:8
  234. #define PARAMETER_SETECHO_UP 0x67 //车辆参数设置响应:8
  235. #define OUTCITY_UP 0x81 //出城登记:30
  236. #define VEHICLE_QUIT_UP 0x83 //车辆退出登录:8
  237. #define VEHICLE_HELP_UP 0x85 //车辆求助:22
  238. #define VEHICLE_ROAD_UP 0x87 //路阻信息:22
  239. #define VEHICLE_ACCIDENT_UP 0x89 //事故信息:22
  240. #define ASK_WATCH_UP 0x8a //请求监控:不定
  241. #define ASK_FREEWATCH_UP 0x8b //取消监控:8
  242. #define ASK_WATCHEND_UP 0x8c //请求解除监控:8
  243. #define ALARM_END_UP 0x8d //报警结束:8
  244. #define SET_STOP_COMMAND_ECHO_UP 0x8e //制动命令响应:15
  245. #define FREE_STOP_COMMAND_ECHO_UP 0x8f //解除制动命令响应:15
  246. #define VEHICLE_RUNDATA_UP 0xa1 //行驶状态数据:不定
  247. #define TIME_INTERVAL_ECHO_UP 0xa3 //设置时间上传间隔的响应:30
  248. #define ACCIDENT_DATA_UP 0xa5 //事故疑点数据:不定
  249. #define     DEVICE_CHECK_REPORT_UP 0xa9 //自检报告:12
  250. #define MESSAGE_FEEDBACK_UP 0xab //报文阅读回报:19
  251. #define SET_MENU_ECHO_UP 0xaf //动态菜单设置响应:8
  252. #define LAND_UP 0xb1 //带工号登陆:15
  253. #define QUIT_UP 0xb3 //带工号签退:15
  254. #define DEVICE_WORKINGECHO_UP 0xb5 //设置车载终端工作方式响应:9
  255. #define TAXI_WORKINGECHO_UP 0xb7 //设置计价器工作方式响应:9
  256. #define ASK_PHONE_NUM_UP 0xb8 //请求下载电话号码本:8
  257. #define ASK_PHONE_NUMECHO_UP 0xb9 //下载电话号码本响应:8
  258. #define CENTER_NUMECHO_UP 0xbb //中心号码接收响应:8
  259. #define CALL_LOG_UP 0xbd //通话记录数据:12
  260. #define VEHICLE_STARTUP_ECHO_UP 0xc3 //车辆启动开关设置响应:9
  261. #define SET_MAXSPEED_ECHO_UP 0xc5 //设置最大时速响应:8
  262. #define FORCE_FORTIFY_ECHO_UP 0xc7 //中心强制设防状态响应:12
  263. #define ADDRESS_PORT_ECHO_UP 0xcb //设置服务器地址,端口响应:不定
  264. #define SET_TCP_ONOROFF_ECHO_UP 0xcd //针对下行的设置终端进入/退出联网的响应
  265. #define QUERY_VERSION_ECHO_UP 0xd1 //车载终端的版本数据:22
  266. #define DRIVER_LIST_ECHO_UP 0xd3 //车载驾驶员列表设置响应:8
  267. #define DISTANCE_INIT_ECHO_UP 0xD5 //设置里程初始化的值
  268. #define EXTER_EQUIPMENT_UP 0xd7 //外接部件数据的命令
  269. #define DISP_ASK_INFO_UP 0x84 //显示终端的信息上报请求
  270. #define DISP_SMS_INFO_UP 0x86
  271. #define DISP_INFO_ECHO_UP 0x4b //显示终端的信息上报请求响应
  272. #define SET_PHONE_LIMIT_ECHO_UP 0x63
  273. #define LINE_DATA_ECHO_UP 0x65
  274. #define  LINE_LIMIT_DISTANCE_ECHO_UP 0x66
  275. /*
  276. */
  277. #define SET_DISTANCE_DATA_UP 0x68 //设置间隔距离的响应
  278. #define ASK_PAR_SET_UP 0xF0
  279. #define TEST_SMS_COMMAND_UP 0x10 //在测试SMS中,固定作为测试数据的命令字
  280. #endif