The data communication is a serial, bit synchronous, character asynchronous format as defined in ISO1177, utilising one start bit, seven data bits, one even parity bit and two stop bits.
I.E. Standard UART serial port data 7N2; Gordon |
There's a drawing of a character to go here, but I'll not bother right now; Gordon |
The character set conforms to the International Alphabet Number 5 (CCITT V3 and ISO646, see Appendix A) referred to in the text as IA5.
The differences from ASCII, probably the most familaiar character set, are all minor and probably of little consequence. Primarily, a few characters change (tilde becomes overline, dollar becomes a generic currency indicator and the control codes are grouped under TC (Transmission Control?), FE (Feed or Form something?), DC (Data Control? Xon, Xoff etc.) and IS (Item Separator?). |
The following control characters have special meaning in the protocol and will be referred to as Transmission Control Characters
SOH Start Of Header. Start of a header of a message.
STX Start Of Text. Precedes a text field and terminates a header.
ETX End Of Text. Terminates a text field
EOT End Of Transmission. Terminates a transaction of one or more texts. Returns control to the Control Station
ENQ Enquiry. Requests a response from a remote station, may include station identity.
(Probably should include station identity; Gordon) |
ACK Acknowledge. Transmitted by the receiving station as a positive response to the sender.
DLE Data Link Escape. Not used.
NAK Negative Acknowledge. Transmitted by the receiving station as a negative response to the sender.
SYN Synchronous Idle. Not used.
ETB End of Transmission Block. Not Used.
Control Characters used to separate and qualify data logically.
US Unit Separator.
RS Record Separator.
GS Group Separator. Not used.
FS File Separator. Not used.
A number of these characters may be prefixed to control information at various stages during the protocol:
May be prefixed with the device address for polling and selecting.
(Probably should be prefixed as stated; Gordon) |
May be prefixed to (with; Gordon) an error identifier if known. The presently defined errors are:
Transmission error. Corrupt character(s) or corrupt BCC received by the station. (BCC: Block Check Character, ISO1155)
Busy. Unable to accept a transaction, e.g., queue full etc.
Invalid message. The type or content of the message was not recognised by this station.
ACK and EOT are not prefixed within the protocol.
Note! Character within ' ' means character according to IA5.
I.E., this is a character 1, 2 or 3, not a binary value 0x01, 0x02 or 0x03; Gordon |