GOST 33464中对MSD数据(minimum set of data)的结构规定是用ASN.1语法描述的。下面以version2版本为例分析MSD数据结构,并给出一种可能的实际数据结构示例。
首先是GOST 33464: 2015附录C.3, C.5中的描述:
序号 | 域 | 参数名 | 参数类型及范围 |
1 | ID | INTEGER (1...255) | |
2 | Message Identifier | INTEGER (1...255) | |
3 | Control | Automatic Activation | BOOLEAN |
4 | Test Call | BOOLEAN | |
5 | Position Can Be Trusted | BOOLEAN | |
6 | Vehicle Type | ENUM | |
7 | VIN | STRING(17) | |
8 | Vehicle Propulsion Storage Type | Gasoline Tank Present | BOOLEAN |
9 | Diesel Tank Present | BOOLEAN | |
10 | Compressed Natural Gas | BOOLEAN | |
11 | Liquid Propane Gas | BOOLEAN | |
12 | Electric Energy Storage | BOOLEAN | |
13 | Hydrogen Storage | BOOLEAN | |
14 | Time Stamp | INTEGER (0..2^32-1) | |
15 | Vehicle Location | Position Latitude | INTEGER (-2^31...2^31-1) |
16 | Position Longitude | INTEGER (-2^31...2^31-1) | |
17 | Vehicle Direction | INTEGER (0...255) | |
18 | Recent Vehicle Location N1 | Latitude Delta | INTEGER (-512...511) |
19 | Longitude Delta | INTEGER (-512...511) | |
20 | Recent Vehicle Location N2 | Latitude Delta | INTEGER (-512...511) |
21 | Longitude Delta | INTEGER (-512...511) | |
22 | Number Of Passengers | INTEGER (0...255) | |
23 | Optional Additional Data | oid | RELATIVE OID |
24 | data | OCTET STRING |
MSDASN1Module_V2
DEFINITIONS
AUTOMATIC TAGS ::=
BEGIN
-- MSD specification version
CurrentId::= INTEGER (2)
-- ECallMessage is an upper level data element
-- It supports one message type only (msd)
-- Elements:
-- id: MSD data format, set to 1
-- msd: minimum set of data transmitted from IVDS side, except for ID
ECallMessage ::= SEQUENCE {
msdVersion INTEGER(0…255),
msd OCTET STRING (CONTAINING MSDMessage)
}
-- Message sent from IVDS side (ID is excluded)
-- Elements:
-- msdStructure: main MSD structure
-- optionalAdditionalData: additional data
-- May be extended at this level in future versions
MSDMessage ::= SEQUENCE {
msdStructure MSDStructure,
optionalAdditionalData AdditionalData OPTIONAL,
...
}
-- Main MSD structure without any additional data
-- Elements:
-- messageldentifier: message identifier
-- control: see ControlType
-- vehicleldentificationNumber: see VIN
-- vehiclePropulsionStorageType: see VehiclePropulsionStorageType
-- timestamp: time stamp
-- vehicleLocation: see VehicleLocation
-- vehicleDirection: vehicle direction
-- recentVehicleLocationNl: displacement from current vehicle location
-- see VehicleLocationDelta
-- recentVehicleLocationN2: displacement from
-- recentVehicleLocationN1 see VehicleLocationDelta
-- numberOfPassengers: minimum known number
-- of fastened safety belts
MSDStructure ::= SEQUENCE {
messageIdentifier INTEGER(0 ... 255),
control ControlType,
vehicleIdentificationNumber VIN,
vehiclePropulsionStorageType VehiclePropulsionStorageType,
timestamp INTEGER(0 ... 4294967295),
vehicleLocation VehicleLocation,
vehicleDirection INTEGER(0 ... 255),
recentVehicleLocationN1 VehicleLocationDelta OPTIONAL,
recentVehicleLocationN2 VehicleLocationDelta OPTIONAL,
numberOfPassengers INTEGER(0 ... 255) OPTIONAL,
...
}
-- ControlType includes the following elements:
-- automaticActivation: true, false
-- testCall: true, false
-- positionCanBeTrusted: true, false
-- vehicleType: see VehicleType
ControlType ::= SEQUENCE {
automaticActivation BOOLEAN,
testCall BOOLEAN,
positionCanBeTrusted BOOLEAN,
vehicleType VehicleType
}
-- Vehicle type definition
VehicleType ::= ENUMERATED{
passengerVehicleClassM1 (1),
busesAndCoachesClassM2 (2),
busesAndCoachesClassM3 (3),
lightCommercialVehiclesClassN1 (4),
heavyDutyVehiclesClassN2 (5),
heavyDutyVehiclesClassN3 (6),
motorcyclesClassL1e (7),
motorcyclesClassL2e (8),
motorcyclesClassL3e (9),
motorcyclesClassL4e (10),
motorcyclesClassL5e (11),
motorcyclesClassL6e (12),
motorcyclesClassL7e (13),
...
}
-- Vehicle Identification Number (VIN)
VIN::= SEQUENCE{
isowmi PrintableString (SIZE(3))
(FROM("A".."H"|"J".."N"|"P"|"R".."Z"|"0".."9")),
isovds PrintableString (SIZE(6))
(FROM("A".."H"|"J".."N"|"P"|"R".."Z"|"0".."9")),
isovisModelyear PrintableString (SIZE(l))
(FROM("A".."H"|"J".."N"|"P"|"R".."Z"|"0".."9")),
isovisSeqPlant PrintableString (SIZE(7))
(FROM("A".."H"|"J".."N"|"P"|"R".."Z"|"0".."9")),
}
-- VehiclePropulsionStorageType:
-- Fuel (energy source) type used for vehicle
VehiclePropulsionStorageType ::= SEQUENCE {
gasolineTankPresent BOOLEAN DEFAULT FALSE,
dieselTankPresent BOOLEAN DEFAULT FALSE,
compressedNaturalGas BOOLEAN DEFAULT FALSE,
liquidPropaneGas BOOLEAN DEFAULT FALSE,
electricEnergyStorage BOOLEAN DEFAULT FALSE,
hydrogenStorage BOOLEAN DEFAULT FALSE,
otherStorage BOOLEAN DEFAULT FALSE,
...
}
-- VehicleLocation:
-- Current vehicle location
-- Elements:
-- Latitude – 32 bits (4 octets) allocated
-- Longitude – 32 bits (4 octets) allocated
VehicleLocation ::= SEQUENCE {
positionLatitude INTEGER (-2147483648..2147483647),
positionLongitude INTEGER (-2147483648..2147483647)
}
-- VehicleLocationDelta:
-- Vehicle location before an RTA event was detected
VehicleLocationDelta ::= SEQUENCE {
latitudeDelta INTEGER (-512..511),
longitudeDelta INTEGER (-512..511)
}
-- AdditionalData:
-- Any additional data encoded as a separate definition
-- Elements:
-- oid: object identifier defining data format and purpose
-- data: additional data in the format
-- defined by oid
AdditionalData ::= SEQUENCE {
oid RELATIVE-OID,
data OCTET STRING
}
END
在分析MSD数据结构之前,首先需要了解一些基本的ASN.1语法规则,可参考文档《ASN.1编码规则详解(最全最经典)》中2.2节,2.3节,2.4节,2.6节,2.8节,2.9节,2.10节中的2.10.2(重要!),以及其他读者认为有必要提前阅读的章节。
其次,还需要了解编码规则。GOST 33464中规定的MSD数据是按UPER编码的,可参考文档《ASN.1编码规则详解(最全最经典)》中的3.3节。特别需要阅读的是,涉及到MSD的相关数据类型的编码说明(在3.3.6节中),如BOOLEAN型、INTEGER型、ENUMERATED型、RELATIVE-OID型、字符串与日期型、SEQUENCE型等。
举例:
SEQUENCE类型:
首先,如果有 COMPONENTS OF 语句,则由相应的类型进行替换。
如果 SEQUENCE 类型是可扩展的,则在编码的头部加上一个比特的 bit-field,如果SEQUENCE 的取值中有属于扩展附加部分的成员,则该比特等于 1,否则等于 0。如果 SEQUENCE 的定义中在扩展根部( extension root)有"n"个成员被置为OPTIONAL 或 DEFAULT,则在编码头部再添加"n"个比特的 bit-field,该 bit-field从第一个 bit 开始,依次指示被标记为 OPTIONAL 或 DEFAULT 的成员是否出现。如果为 1,则该成员出现,否则没有出现。如果“ n”小于 64K,则这个 bit-field 应该直接添到码流中。如果"n"大于等于 64K, 按照前面提到的处理方法把“ n”个bit 的 bit-field 分段并添加到域序列中,前面的长度字段 L 就作为一个有约束的整数编码,而约束的上限和下限都等于 n。
接下来就可以具体分析GOST 33465 附录C.5中对MSD数据的具体规定了。
注意:关于OID的分析需要参考文档ISO/IEC 8825-2的第33章节。(这块还没仔细看,待补充...)
分析完后,一种可能的MSD数据结构为(不说是一定,是因为按照ASN.1描述,部分指示位、数据位有可能不存在。此处只列举一种可能性供读者参考):
序号 | Byte | Bit | 所属域 | 含义 | 备注 | |
1 | 0 | 7 | 协议版本 | 如为GOST 33464协议,则必须设置为:0x02 | ||
2 | 6 | |||||
3 | 5 | |||||
4 | 4 | |||||
5 | 3 | |||||
6 | 2 | |||||
7 | 1 | |||||
8 | 0 | |||||
9 | 1 | 7 | MSD数据内容长度 | 表示从第2个字节之后(即从该字节之后)的数据长度 | ||
10 | 6 | |||||
11 | 5 | |||||
12 | 4 | |||||
13 | 3 | |||||
14 | 2 | |||||
15 | 1 | |||||
16 | 0 | |||||
17 | 2 | 7 | Extension of MSDMessage | 0:Absent 1:Present | ||
18 | 6 | optionalAdditionalData | 0:Absent 1:Present | |||
19 | 5 | Extension of MSDStructure Present? | 0:Absent 1:Present | |||
20 | 4 | recentVehicleLocationN1 | 0:Absent 1:Present | |||
21 | 3 | recentVehicleLocationN2 | 0:Absent 1:Present | |||
22 | 2 | numberOfPassengers | 0:Absent 1:Present | |||
23 | 1 | Message Identifier | Message Identifier bit7 | Msg ID是否仅包含8 bits,待确认 | ||
24 | 0 | Message Identifier bit6 | ||||
25 | 3 | 7 | Message Identifier bit5 | |||
26 | 6 | Message Identifier bit4 | ||||
27 | 5 | Message Identifier bit3 | ||||
28 | 4 | Message Identifier bit2 | ||||
29 | 3 | Message Identifier bit1 | ||||
30 | 2 | Message Identifier bit0 | ||||
31 | 1 | Control | Automatic Activation | |||
32 | 0 | Test Call | ||||
33 | 4 | 7 | Position Can Be Trusted | |||
34 | 6 | Vehicle Type | VehicleType Enum value from | 前导(Preamble)bit,当值在根部分时,该bit为0,否则为1. | ||
35 | 5 | Vehicle Type | - passenger vehicle (Category M1) - buses (Category M2) - buses (Category M3) - light trucks (Category N1) - cargo vehicles (Category N2) - cargo vehicles (Category N3) - motor cycles (Category L1e) - motor cycles (Category L2e) - motor cycles (Category L3e) - motor cycles (Category L4e) - motor cycles (Category L5e) - motor cycles (Category L6e) - motor cycles (Category L7e) - …… | 枚举类型值(可扩展类型) | ||
36 | 4 | |||||
37 | 3 | |||||
38 | 2 | |||||
39 | 1 | VIN | VIN[0] | 1)每6 bits表示1位VIN码。 2)VIN码的编码不是ASIC II码。编码值对应关系见“VIN码编码值对照表”。 | ||
40 | 0 | |||||
41 | 5 | 7 | ||||
42 | 6 | |||||
43 | 5 | |||||
44 | 4 | |||||
45 | 3 | VIN[1] | ||||
46 | 2 | |||||
47 | 1 | |||||
48 | 0 | |||||
49 | 6 | 7 | ||||
50 | 6 | |||||
51 | 5 | VIN[2] | ||||
52 | 4 | |||||
53 | 3 | |||||
54 | 2 | |||||
55 | 1 | |||||
56 | 0 | |||||
57 | 7 | 7 | VIN[3] | |||
58 | 6 | |||||
59 | 5 | |||||
60 | 4 | |||||
61 | 3 | |||||
62 | 2 | |||||
63 | 1 | VIN[4] | ||||
64 | 0 | |||||
65 | 8 | 7 | ||||
66 | 6 | |||||
67 | 5 | |||||
68 | 4 | |||||
69 | 3 | VIN[5] | ||||
70 | 2 | |||||
71 | 1 | |||||
72 | 0 | |||||
73 | 9 | 7 | ||||
74 | 6 | |||||
75 | 5 | VIN[6] | ||||
76 | 4 | |||||
77 | 3 | |||||
78 | 2 | |||||
79 | 1 | |||||
80 | 0 | |||||
81 | 10 | 7 | VIN[7] | |||
82 | 6 | |||||
83 | 5 | |||||
84 | 4 | |||||
85 | 3 | |||||
86 | 2 | |||||
87 | 1 | VIN[8] | ||||
88 | 0 | |||||
89 | 11 | 7 | ||||
90 | 6 | |||||
91 | 5 | |||||
92 | 4 | |||||
93 | 3 | VIN[9] | ||||
94 | 2 | |||||
95 | 1 | |||||
96 | 0 | |||||
97 | 12 | 7 | ||||
98 | 6 | |||||
99 | 5 | VIN[10] | ||||
100 | 4 | |||||
101 | 3 | |||||
102 | 2 | |||||
103 | 1 | |||||
104 | 0 | |||||
105 | 13 | 7 | VIN[11] | |||
106 | 6 | |||||
107 | 5 | |||||
108 | 4 | |||||
109 | 3 | |||||
110 | 2 | |||||
111 | 1 | VIN[12] | ||||
112 | 0 | |||||
113 | 14 | 7 | ||||
114 | 6 | |||||
115 | 5 | |||||
116 | 4 | |||||
117 | 3 | VIN[13] | ||||
118 | 2 | |||||
119 | 1 | |||||
120 | 0 | |||||
121 | 15 | 7 | ||||
122 | 6 | |||||
123 | 5 | VIN[14] | ||||
124 | 4 | |||||
125 | 3 | |||||
126 | 2 | |||||
127 | 1 | |||||
128 | 0 | |||||
129 | 16 | 7 | VIN[15] | |||
130 | 6 | |||||
131 | 5 | |||||
132 | 4 | |||||
133 | 3 | |||||
134 | 2 | |||||
135 | 1 | VIN[16] | ||||
136 | 0 | |||||
137 | 17 | 7 | ||||
138 | 6 | |||||
139 | 5 | |||||
140 | 4 | |||||
141 | 3 | Vehicle Propulsion Storage Type | Extension of Vehicle Propulsion Storage Type Present? | 0:Absent 1:Present | ||
142 | 2 | Gasoline Tank Present? | 0:Absent 1:Present | 1)每个bit表示后面对应的指示位是否存在 2)设置为(二进制): 111 1111 | ||
143 | 1 | Diesel Tank Present? | 0:Absent 1:Present | |||
144 | 0 | Compressed Natural Gas Present? | 0:Absent 1:Present | |||
145 | 18 | 7 | Liquid Propane Gas Present? | 0:Absent 1:Present | ||
146 | 6 | Electric Energy Storage Present? | 0:Absent 1:Present | |||
147 | 5 | Hydrogen Storage Present? | 0:Absent 1:Present | |||
148 | 4 | Other Storage Present? | 0:Absent 1:Present | |||
149 | 3 | Gasoline Tank | 0:Absent 1:Present | |||
150 | 2 | Diesel Tank | 0:Absent 1:Present | |||
151 | 1 | Compressed Natural Gas | 0:Absent 1:Present | |||
152 | 0 | Liquid Propane Gas | 0:Absent 1:Present | |||
153 | 19 | 7 | Electric Energy Storage | 0:Absent 1:Present | ||
154 | 6 | Hydrogen Storage | 0:Absent 1:Present | |||
155 | 5 | Other Storage | 0:Absent 1:Present | |||
156 | 4 | time Stamp | time Stamp bit31 | 1)time stamp值为从1970年1月1日开始,到RTA发生是的秒数。 2)如果时间超出合理范围,测试仪器会将time stamp清零显示。 | ||
157 | 3 | time Stamp bit30 | ||||
158 | 2 | time Stamp bit29 | ||||
159 | 1 | time Stamp bit28 | ||||
160 | 0 | time Stamp bit27 | ||||
161 | 20 | 7 | time Stamp bit26 | |||
162 | 6 | time Stamp bit25 | ||||
163 | 5 | time Stamp bit24 | ||||
164 | 4 | time Stamp bit23 | ||||
165 | 3 | time Stamp bit22 | ||||
166 | 2 | time Stamp bit21 | ||||
167 | 1 | time Stamp bit20 | ||||
168 | 0 | time Stamp bit19 | ||||
169 | 21 | 7 | time Stamp bit18 | |||
170 | 6 | time Stamp bit17 | ||||
171 | 5 | time Stamp bit16 | ||||
172 | 4 | time Stamp bit15 | ||||
173 | 3 | time Stamp bit14 | ||||
174 | 2 | time Stamp bit13 | ||||
175 | 1 | time Stamp bit12 | ||||
176 | 0 | time Stamp bit11 | ||||
177 | 22 | 7 | time Stamp bit10 | |||
178 | 6 | time Stamp bit9 | ||||
179 | 5 | time Stamp bit8 | ||||
180 | 4 | time Stamp bit7 | ||||
181 | 3 | time Stamp bit6 | ||||
182 | 2 | time Stamp bit5 | ||||
183 | 1 | time Stamp bit4 | ||||
184 | 0 | time Stamp bit3 | ||||
185 | 23 | 7 | time Stamp bit2 | |||
186 | 6 | time Stamp bit1 | ||||
187 | 5 | time Stamp bit0 | ||||
188 | 4 | Vehicle Location | Position Latitude | Position Latitude bit31 | 1)Position计算时有偏移量,偏移量为:-2147483648 2)注意前面有Position Can be Trusted位 3)计算算法参考GOST 33464协议 | |
189 | 3 | Position Latitude bit30 | ||||
190 | 2 | Position Latitude bit29 | ||||
191 | 1 | Position Latitude bit28 | ||||
192 | 0 | Position Latitude bit27 | ||||
193 | 24 | 7 | Position Latitude bit26 | |||
194 | 6 | Position Latitude bit25 | ||||
195 | 5 | Position Latitude bit24 | ||||
196 | 4 | Position Latitude bit23 | ||||
197 | 3 | Position Latitude bit22 | ||||
198 | 2 | Position Latitude bit21 | ||||
199 | 1 | Position Latitude bit20 | ||||
200 | 0 | Position Latitude bit19 | ||||
201 | 25 | 7 | Position Latitude bit18 | |||
202 | 6 | Position Latitude bit17 | ||||
203 | 5 | Position Latitude bit16 | ||||
204 | 4 | Position Latitude bit15 | ||||
205 | 3 | Position Latitude bit14 | ||||
206 | 2 | Position Latitude bit13 | ||||
207 | 1 | Position Latitude bit12 | ||||
208 | 0 | Position Latitude bit11 | ||||
209 | 26 | 7 | Position Latitude bit10 | |||
210 | 6 | Position Latitude bit9 | ||||
211 | 5 | Position Latitude bit8 | ||||
212 | 4 | Position Latitude bit7 | ||||
213 | 3 | Position Latitude bit6 | ||||
214 | 2 | Position Latitude bit5 | ||||
215 | 1 | Position Latitude bit4 | ||||
216 | 0 | Position Latitude bit3 | ||||
217 | 27 | 7 | Position Latitude bit2 | |||
218 | 6 | Position Latitude bit1 | ||||
219 | 5 | Position Latitude bit0 | ||||
220 | 4 | Position Longitude | Position Longitude bit 31 | 1)Position计算时有偏移量,偏移量为:-2147483648 2)注意前面有Position Can be Trusted位 3)计算算法参考GOST 33464协议 | ||
221 | 3 | Position Longitude bit 30 | ||||
222 | 2 | Position Longitude bit 29 | ||||
223 | 1 | Position Longitude bit 28 | ||||
224 | 0 | Position Longitude bit 27 | ||||
225 | 28 | 7 | Position Longitude bit 26 | |||
226 | 6 | Position Longitude bit 25 | ||||
227 | 5 | Position Longitude bit 24 | ||||
228 | 4 | Position Longitude bit 23 | ||||
229 | 3 | Position Longitude bit 22 | ||||
230 | 2 | Position Longitude bit 21 | ||||
231 | 1 | Position Longitude bit 20 | ||||
232 | 0 | Position Longitude bit 19 | ||||
233 | 29 | 7 | Position Longitude bit 18 | |||
234 | 6 | Position Longitude bit 17 | ||||
235 | 5 | Position Longitude bit 16 | ||||
236 | 4 | Position Longitude bit 15 | ||||
237 | 3 | Position Longitude bit 14 | ||||
238 | 2 | Position Longitude bit 13 | ||||
239 | 1 | Position Longitude bit 12 | ||||
240 | 0 | Position Longitude bit 11 | ||||
241 | 30 | 7 | Position Longitude bit 10 | |||
242 | 6 | Position Longitude bit 9 | ||||
243 | 5 | Position Longitude bit 8 | ||||
244 | 4 | Position Longitude bit 7 | ||||
245 | 3 | Position Longitude bit 6 | ||||
246 | 2 | Position Longitude bit 5 | ||||
247 | 1 | Position Longitude bit 4 | ||||
248 | 0 | Position Longitude bit 3 | ||||
249 | 31 | 7 | Position Longitude bit 2 | |||
250 | 6 | Position Longitude bit 1 | ||||
251 | 5 | Position Longitude bit 0 | ||||
252 | 4 | Vehicle Direction | Vehicle Direction bit7 | 1)GOST 33464中规定分辨率为2°,但测试仪器没有进行分辨率的处理。 | ||
253 | 3 | Vehicle Direction bit6 | ||||
254 | 2 | Vehicle Direction bit5 | ||||
255 | 1 | Vehicle Direction bit4 | ||||
256 | 0 | Vehicle Direction bit3 | ||||
257 | 32 | 7 | Vehicle Direction bit2 | |||
258 | 6 | Vehicle Direction bit1 | ||||
259 | 5 | Vehicle Direction bit0 | ||||
260 | 4 | recentVehicleLocationN1 | Latitude | Recent Vehicle Location N1 Lat bit9 | 1)偏移量:-512 2)注意前面有recentVehicleLocationN1标志位 | |
261 | 3 | Recent Vehicle Location N1 Lat bit8 | ||||
262 | 2 | Recent Vehicle Location N1 Lat bit7 | ||||
263 | 1 | Recent Vehicle Location N1 Lat bit6 | ||||
264 | 0 | Recent Vehicle Location N1 Lat bit5 | ||||
265 | 33 | 7 | Recent Vehicle Location N1 Lat bit4 | |||
266 | 6 | Recent Vehicle Location N1 Lat bit3 | ||||
267 | 5 | Recent Vehicle Location N1 Lat bit2 | ||||
268 | 4 | Recent Vehicle Location N1 Lat bit1 | ||||
269 | 3 | Recent Vehicle Location N1 Lat bit0 | ||||
270 | 2 | Longitude | Recent Vehicle Location N1 Long bit9 | |||
271 | 1 | Recent Vehicle Location N1 Long bit8 | ||||
272 | 0 | Recent Vehicle Location N1 Long bit7 | ||||
273 | 34 | 7 | Recent Vehicle Location N1 Long bit6 | |||
274 | 6 | Recent Vehicle Location N1 Long bit5 | ||||
275 | 5 | Recent Vehicle Location N1 Long bit4 | ||||
276 | 4 | Recent Vehicle Location N1 Long bit3 | ||||
277 | 3 | Recent Vehicle Location N1 Long bit2 | ||||
278 | 2 | Recent Vehicle Location N1 Long bit1 | ||||
279 | 1 | Recent Vehicle Location N1 Long bit0 | ||||
280 | 0 | recentVehicleLocationN2 | Latitude | Recent Vehicle Location N2 Lat bit9 | 1)偏移量:-512 2)注意前面有recentVehicleLocationN2标志位 | |
281 | 35 | 7 | Recent Vehicle Location N2 Lat bit8 | |||
282 | 6 | Recent Vehicle Location N2 Lat bit7 | ||||
283 | 5 | Recent Vehicle Location N2 Lat bit6 | ||||
284 | 4 | Recent Vehicle Location N2 Lat bit5 | ||||
285 | 3 | Recent Vehicle Location N2 Lat bit4 | ||||
286 | 2 | Recent Vehicle Location N2 Lat bit3 | ||||
287 | 1 | Recent Vehicle Location N2 Lat bit2 | ||||
288 | 0 | Recent Vehicle Location N2 Lat bit1 | ||||
289 | 36 | 7 | Recent Vehicle Location N2 Lat bit0 | |||
290 | 6 | Longitude | Recent Vehicle Location N2 Long bit9 | |||
291 | 5 | Recent Vehicle Location N2 Long bit8 | ||||
292 | 4 | Recent Vehicle Location N2 Long bit7 | ||||
293 | 3 | Recent Vehicle Location N2 Long bit6 | ||||
294 | 2 | Recent Vehicle Location N2 Long bit5 | ||||
295 | 1 | Recent Vehicle Location N2 Long bit4 | ||||
296 | 0 | Recent Vehicle Location N2 Long bit3 | ||||
297 | 37 | 7 | Recent Vehicle Location N2 Long bit2 | |||
298 | 6 | Recent Vehicle Location N2 Long bit1 | ||||
299 | 5 | Recent Vehicle Location N2 Long bit0 | ||||
300 | 4 | Number of passengers | Number of passeners bit7 | 1)注意前面有numberOfPassengers标志位 | ||
301 | 3 | Number of passengers bit6 | ||||
302 | 2 | Number of passeners bit5 | ||||
303 | 1 | Number of passeners bit4 | ||||
304 | 0 | Number of passengers bit3 | ||||
305 | 38 | 7 | Number of passeners bit2 | |||
306 | 6 | Number of passeners bit1 | ||||
307 | 5 | Number of passengers bit0 | ||||
308 | 4 | |||||
309 | 3 | |||||
310 | 2 | |||||
311 | 1 | |||||
312 | 0 |
更详细的分析过程待有时间补充。
文中列举的参考文档下载链接为:
链接:https://pan.baidu.com/s/1ETGxVC0G3LTF9YS9Ub6uLA
提取码:0q5i