SerCheck

Description:              Check Serial Port. This function returns the immediate or cumulative serial port status.

Returns:                    Numeric

Usage:                       Script

Format:                      SerCheck(Port, Reset)

Parameters:             Port     { numeric }  { required }  { no default: }

                                                Any numeric expression for the serial port number (opened with a ComPort function) or serial stream value (returned from a SerialStream function).

                                    Reset     { Boolean }  { required }  { no default: }

                                                Any logical expression.  If true (non-0), the serial port status register will be cleared.

Comments:               The return value consists of 9 bits that indicate the status of the following:

Bit

Meaning

0

Clear To Send (CTS)

1

Data Set Ready (DSR)

2

Ring Indicator (RI)

3

Carrier Detect (CD)

4

Overrun error

5

Parity error

6

Framing error

7

Break signal detected

8

Receive buffer overflow (always cumulative)

 

Example:

If 1 Send;

[

  parityErr = Cond(And(SerCheck(2, 0), 0b00100000), 1, 0);

  IfThen(parityErr, ForceState("Retry"));

]

In this script, port 2 is checked for a parity error; if there is one, a state transfer to state Retry will occur, otherwise the destination state in the script's trigger (state Send) will be active next.

See Also:

ComPort | SerBreak