SA.45s Chip-Scale Atomic Clock
SA.45s CSAC User Guide Revision D
18
In general, commands are to be preceded by an exclamation point ( ) and followed by a carriage-return
!
/linefeed
pair (ASCII 0x0D 0x0A). For convenience and efficiency, most commands also provide
[CRLF]
a single-character shortcut, which is executed immediately, that is without bracketing by and
.
!
[CRLF]
For example, the single character shortcut is functionally identical to
.
^
!^[CRLF]
After transmitting but prior to sending
, a command may be aborted by sending the escape
!
[CRLF]
character (ASCII 0x1B).
All commands produce a response from the CSAC, which are human readable, with individual lines
ending in
. If an unsupported or improperly formatted command is received, the CSAC responds
[CRLF]
with
.
?[CRLF]
3.4.1.1
Checksum (Error-Checking Option for Telemetry Interface Communications)
For improved communications reliability, an NMEA-style checksum may be enabled through bit 6
(0x0040) of the mode register (see
"Set/Clear Operating Modes (M)" (see page 24)
the checksum is required for all input commands and is present on all replies from the CSAC.
The checksum is a two-byte ASCII representation (in hexadecimal) of the XOR of all characters in the
command between—but not including—the and the
characters. The checksum is preceded
!
[CRLF]
by a * character and appended to the command immediately prior to the
. Because commands
[CRLF]
including checksum are inherently multi-character, single-character shortcuts are not available when
checksum is enabled.
Example (enable analog tuning through mode register):
Command:
!MA*0C[CRLF]
Unit response:
0x0041*4D[CRLF]
Example (disable checksum through mode register)
Command:
!Mc*2E[CRLF]
Unit response:
0x0000[CRLF]
If the checksum is not present or if the checksum value is invalid, then the command is not executed and
the CSAC responds with
.
*[CRLF]
Example (malformed checksum):
Command:
!Mc*2D[CRLF]
Unit response:
*[CRLF]
To experiment with checksum in CSACdemo and observe the calculated checksums in the Trace window,
select
checkbox on the Options… panel, as shown in the following screen shot.
Require Cksum