Digi International Inc XBEEPRO2 Manual Do Utilizador

Página de 155
© 2011 Digi International, Inc.
     99
9.  API Operation
As an alternative to Transparent Operation, API (Application Programming Interface) Operations are available. API 
operation requires that communication with the module be done through a structured interface (data is communicated in 
frames in a defined order). The API specifies how commands, command responses and module status messages are sent 
and received from the module using a UART Data Frame. 
Please note that Digi may add new API frames to future versions of firmware, so please build into your software interface 
the ability to filter out additional API frames with unknown Frame Types.
API Frame Specifications
Two API modes are supported and both can be enabled using the AP (API Enable) command. Use the following AP 
parameter values to configure the module to operate in a particular mode:
•AP = 1: API Operation
•AP = 2: API Operation (with escaped characters)
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
Any data received prior to the start delimiter is silently discarded. If the frame is not received correctly or if 
the checksum fails, the module will reply with a module status frame indicating the nature of the failure.
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 data frame sequencing. To escape an interfering data byte, 
insert 0x7D and follow it with the byte to be escaped XOR’d with 0x20.
Length
(Bytes 2-3)
Checksum
(Byte n + 1)
MSB
LSB
1 Byte
Start Delimiter 
(Byte 1)
0x7E
Frame Data
(Bytes 4-n
API-specific Structure
Start Delimiter
(Byte 1)
Length
(Bytes 2-3)
Frame Data
(Bytes 4-n)
Checksum
(Byte n + 1)
0x7E
MSB
LSB
API-specific Structure
1 Byte
Characters Escaped If Needed