B&B Electronics Zlinx ZP Series User Manual

Page 65

Advertising
background image

Manual Documentation Number: ZP24D-250RM-SR-2508

61

B&B Electronics Mfg Co Inc – 707 Dayton Rd - PO Box 1040 - Ottawa IL 61350 - Ph 815-433-5100 - Fax 815-433-5104 – www.bb-elec.com

B&B Electronics – Westlink Commercial Park – Oranmore, Galway, Ireland – Ph +353 91-792444 – Fax +353 91-792445 – www.bb-europe.com


API Operation (AP parameter = 1)
When this API mode is enabled (AP = 1), the UART data frame structure is
defined as follows:

UART Data Frame Structure:


MSB = Most Significant Byte, LSB = Least Significant Byte

API Operation - with Escape Characters (AP parameter = 2)
When this API mode is enabled (AP = 2), the UART data frame structure is
defined as follows:

UART Data Frame Structure with escape control characters:

MSB = Most Significant Byte, LSB = Least Significant Byte

Escape characters

. When sending or receiving a UART data frame, specific

data values must be escaped (flagged) so they do not interfere with the
UART or UART data frame operation. To escape an interfering data byte,
insert 0x7D and follow it with the byte to be escaped XOR’d with 0x20.

Data bytes that need to be escaped:
• 0x7E – Frame Delimiter
• 0x7D – Escape
• 0x11 – XON
• 0x13 – XOFF


Note: In the above example, the length of the raw data (excluding the checksum) is
0x0002 and the checksum of the non-escaped data (excluding frame delimiter and
length) is calculated as:
0xFF - (0x23 + 0x11) = (0xFF - 0x34) = 0xCB.

Checksum
To test data integrity, a checksum is calculated and verified on non-escaped data.

To calculate: Not including frame delimiters and length, add all bytes keeping only
the lowest 8 bits of the result and subtract from 0xFF.

Example - Raw UART Data Frame (before escaping interfering bytes):
0x7E 0x00 0x02 0x23 0x11 0xCB
0x11 needs to be escaped which results in the following frame:
0x7E 0x00 0x02 0x23 0x7D 0x31 0xCB

Advertising