RS 232 COMMUNICATION DESCRIPTION
Communication Format
• 8 data bit
• no parity
• 1 stop bit
• baud rate: 600/1200/2400/4800/9600
programmable
Communication Protocol
The communication protocol is a MASTER/SLAVE
type where:
• Host = MASTER
• Controller = SLAVE
The communication is performed in the following
way:
1. the host (MASTER) send a MESSAGE + CRC to
the controller (SLAVE);
2. the controller answer with an ANSWER + CRC
to the host.
The MESSAGE is a string with the following format:
<STX>+<ADR>+<WIN>+<COM>+<DATA>+<ETX>+
<CRC>
where:
NOTE
When a data is indicated between two quotes ('...')
it means that the indicated data is the correspond-
ing ASCII character.
− <STX> (Start of transmission) = 0x02
− <ADR> (Unit address) = 0x80
− <WIN> (Window) = a string of 3 numeric char-
acter indicating the window number (from '000'
to '999'); for the meaning of each window see
the relevant paragraph.
− <COM> (Command) = 0x30 to read the window,
0x31 to write into the window
− <DATA> = an alphanumeric ASCII string with
the data to be written into the window. In case
of a reading command this field is not present.
The field length is variable according to the data
type as per the following table:
DATA TYPE
LENGTH
Logic (L)
Numeric (N)
Alphanumeric
(A)
− <ETX> (End of transmission) = 0x03
− <CRC> = XOR of all characters subsequent to
<STX> and including the <ETX> terminator. The
value is hexadecimal coded and indicated by
two ASCII character.
The addressed SLAVE will respond with an AN-
SWER whose structure depends from the MESSAGE
type.
When the MESSAGE is a reading command, the
SLAVE will respond transmitting a string with the
same structure of the MESSAGE.
Examples:
− reading request of logic window n. 10 which
contains a logic variable whose value is '0'
(OFF):
MASTER to SLAVE: <0x02> + <0x80> +
<'010'> + <0x30> + <0x03> + <'82'>
SLAVE to MASTER: <0x02> + <0x80> +
<'010'> + <0x30> + <'0'> + <0x03> +
<'B2'>
− reading request of numeric window n. 10 whose
value is '123':
MASTER to SLAVE: <0x02> + <0x80> +
<'010'> + <0x30> + <0x03> + <'82'>
SLAVE to MASTER: <0x02> + <0x80> +
<'010'> + <0x30> + <'000123'> +
<0x03> + <'82'>
When the MESSAGE is a writing command, the
SLAVE will respond transmitting a string with the
following structure:
<STX>+<ADR>+<ACK>+<ETX>+<CRC>
where <STX>, <ADR>, <ETX> and <CRC> have
the meaning previously discussed, while <ACK> =
0x6.
Example:
− writing request of logic window n. 10 with the
logic value '0' (OFF):
MASTER to SLAVE: <0x02> + <0x80> +
<'010'> + <0x31> + <0> + <0x03> +
<'82'>
SLAVE to MASTER: <0x02> + <0x80> +
<0x6> + <0x03> + <'B2'>
32
TECHNICAL INFORMATION
FIELD
VALID
CHARACTERS
1
'0' = OFF
'1' = ON
6
'-', '.', '0' . . . '9' right
justified with '0'
10
from blank to '_' (ASCII)
87-900-920-01(B)