Instructions
UM-0085-B09 DT80 Range User Manual Page 350
RG
Serial Data Transmission and Reception
If a job contains one or more SERIAL channel definitions then the selected serial ports (host and/or serial sensor) are
activated. Data may then be received from a connected serial device at any time whilst the job is loaded. As data is
received, it is stored in an area of memory called the serial channel receive buffer. A separate receive buffer is
maintained for each serial port.
When a SERIAL channel is evaluated (i.e. when the schedule of which it is part executes), the DT80 processes the
control string from left to right. Output actions involve data being sent from the DT80, so they are performed there and
then, as they are encountered in the control string. If the data cannot be sent (e.g. due to flow control) within the timeout
period (10 seconds by default) then evaluation of the
SERIAL channel will be terminated and its status code set to 21
(transmit timeout).
When the DT80 finds an input action in the control string it will read any previously received data from the receive buffer
and attempt to match it against the format specified in the input action. If no data is present in the receive buffer at the
time that the input action is processed then the DT80 will wait up to 10 seconds (this timeout is configurable) for more
data to arrive. Then:
• If the incoming data matches that required by the input action then the DT80 will move on to the next input
action in the string. If the end of the control string is reached then the
SERIAL channel will return and set its
status code to 0 (success).
• If the timeout expires while the DT80 is waiting for more data then evaluation of the SERIAL channel will be
terminated and its status code set to 20 (receive timeout).
• If the timeout expires while the DT80 is waiting for a particular CTS state (i.e.
\c0 or \c1 Control String – Input
Actions (P353)) then evaluation of the
SERIAL channel will be terminated and its status code set to 5 (CTS
timeout).
• If data is received which violates the input action specification then evaluation of the SERIAL channel will be
terminated and its status code set to 29 (Scan Error).
Once the
SERIAL channel has completed and set either a success or failure status code, the DT80 will then move on to
evaluating the next channel (if any) in the schedule. Depending on how the input actions are specified, the return value of
the channel may be either the status code or a scanned data value. See Return Value (P354).
The following sections describe in detail the various output and input actions that can be specified in a control string.