8 supporting 9th bit communication protocols, 9 rabbit-only master/slave protocol, 10 data framing/modbus – Jameco Electronics Rabbit 3000 User Manual

Page 205

Advertising
background image

196

Rabbit 3000 Microprocessor

12.9.8 Supporting 9th Bit Communication Protocols

This section describes how 9th bit communication protocols work. 9th bit communication
protocols are supported by processors such as the 8051 and the Z180, and by companies
such as Cimentrics Technology. The data bytes have an extra 9th bit appended where a
parity bit would normally be placed. Requests from the network master to one of its slaves
consist of a frame of bytes—the first byte has the 9th bit set to "1" (as the signal is
observed at the Tx pin of the processor) and the following bytes have the 9th bit set to "0."
The first byte is identified as the address byte, which specifies the slave unit where the
message is directed. This enables a slave to find the start of a message, which is the byte
with the 9th bit set, and to determine if the message is directed to it. If the message is
directed to a particular slave, the slave will then read the characters in the rest of the mes-
sage; otherwise the slave will continue to scan for a start of message character containing
its address.

Normally the 9th bit is set to "1" only on the first byte of a request transmitted by the net-
work master. The subsequent bytes and the slave replies have the 9th bit set to zero. Since
the majority of the traffic has a 9th bit set low, it is only necessary to stretch the stop bit for
the first bytes or address bytes. This can be done without sacrificing performance by send-
ing a dummy character (transmitter disconnected) after the address byte.

Some microprocessor serial ports have a “wake up” mode of operation. In this mode, char-
acters without the 9th bit set to "1" are ignored, and no interrupt is generated. When the
start of a frame is detected, an interrupt takes place on that byte. If the byte contains the
address of the slave, then the “wake up” mode is turned off so that the remaining charac-
ters in the frame can be read. This scheme reduces the overhead associated with messages
directed to other slaves, but it does not really help with the worst-case load. In most cases,
the worst-case compute load is the governing factor for embedded systems. In addition, it
is quite easy for the interrupt driver to dismiss characters not directed to the system. For
these reasons, the “wake up” mode was not implemented for the Rabbit.

The 9th bit protocols suffer from a major problem that the IBM-PC uarts can support the
9th bit only by using special drivers.

12.9.9 Rabbit-Only Master/Slave Protocol

If only Rabbit microprocessors are connected, the 9th bit low can be set on the address
byte, and the remaining bytes can be transmitted in the normal 8-bit mode. This is more
efficient than other 9th bit protocols because only the first byte requires 11 baud times; the
remaining bytes are transmitted in 10 baud times.

12.9.10 Data Framing/Modbus

Some protocols, for example, Modbus, depend on a gap in the data frame to detect the
beginning of the next frame. The 9th bit protocol is another way to detect the start of a
data frame.

The Modbus protocol requires that data frames begin with a minimum 3.5-character quiet
time. The receiver uses this 3.5-character gap to detect the start of a frame. In order for

Advertising
This manual is related to the following products: