Reading binary values, Integer data types, Table b.2 – Trimble Outdoors SPSX51 User Manual
Page 139

SPSx51 Modular GPS Receivers User Guide
137
GSOF Messages
B
Each message begins with a 4-byte header, followed by the bytes of data in each packet.
The packet ends with a 2-byte trailer. Byte 3 is set to 0 (00h) when the packet contains
no data. Most data is transmitted between the receiver and remote device in binary
format.
Reading binary values
The receivers store numbers in Motorola format. The byte order of these numbers is
the opposite of what personal computers (PCs) expect (Intel format). To supply or
interpret binary numbers (8-byte
DOUBLES
, 4-byte
LONGS,
and 2-byte
INTEGERS
), the
byte order of these values must be reversed. This section contains a detailed
description of the Motorola format.
INTEGER data types
The
INTEGER
data types (
CHAR
,
SHORT
, and
LONG
) can be signed or unsigned. By
default, they are unsigned. All integer data types use two’s complement representation.
The following table lists the integer data types.
FLOATING-POINT data types
Floating-point data types are stored in the
IEEE SINGLE
and
DOUBLE
precision formats.
Both formats have a sign bit field, an exponent field, and a fraction field. The fields
represent floating-point numbers in the following manner:
Floating-Point Number =
Length + 4 CHECKSUM
–
–
(Status + type + length + data bytes)
modulo 256
Length + 5 ETX (03h)
–
–
End transmission
Table B.2
Receiver Status code
Byte
number
Message
Description
Bit 0
1
Reserved
Bit 1
1
Low battery
Bit 2–7
0–63
Reserved
Type
# of bits
Range of values (Signed)
(Unsigned)
CHAR
8
–128 to 127
0 to 255
SHORT
16
–32768 to 32767
0 to 65535
LONG
32
–2147483648 to 2147483647
0 to 4294967295
Table B.1
Report packet 40h structure (GENOUT)
Byte
Item
Type
Value
Meaning