Encoding the crc as ascii characters, Nmea 0183 v3.0 checksum computation – Vaisala WXT520 User Manual

Page 164

Advertising
background image

User’s Guide ______________________________________________________________________

162 _________________________________________________________________ M210906EN-C

Encoding the CRC as ASCII Characters

The 16 bit CRC is encoded to three ASCII characters by using the
following algorithm:

1st character = 0x40 OR (CRC shifted right 12 bits)

2nd character = 0x40 OR ((CRC shifted right 6 bits) AND 0x3F)

3rd character = 0x40 OR (CRC AND 0x3F)

The three ASCII characters are placed between the data and <cr><lf>.
Parity is applied to all three characters, if selected for the character
frame.

The CRC computation code is added to the end of the response, if the
first letter of the command is sent by using lower case.

NMEA 0183 v3.0 Checksum Computation

The checksum is the last field in the NMEA sentence and follows the
checksum delimiter character "*". It is the 8-bit exclusive OR of all
characters in the sentence, including "," and "^" delimiters, between but
not including the "$" or "!" and the "*" delimiters. The hexadecimal
value of the most significant and least significant four bits of the result
is converted to two ASCII characters (0-9,A-F) for transmission. The
most significant character is transmitted first.

Advertising