Communications Processor (CP)
4-48
MC68302 USER’S MANUAL
MOTOROLA
RCCR, CHARACTER
The UART controller can automatically recognize special characters and generate inter-
rupts. It also allows a convenient method for inserting flow control characters into the
transmit stream. See 4.5.11.7 UART Control Characters and Flow Control for more de-
tails.
If neither of these capabilities are desired, initialize CHARACTER1 to $8000 and
CHARACTER8 to $0000 to disable both functions.
4.5.11.4 UART Programming Model
An SCC configured as a UART uses the same data structure as the other protocols. The
UART data structure supports multibuffer operation. The UART may also be programmed
to perform address comparison whereby messages not destined for a given programmable
address are discarded. Also, the user can program the UART to accept or reject control
characters. If a control character is rejected, an interrupt may be generated. The UART en-
ables the user to transmit break and preamble sequences. Overrun, parity, noise, and fram-
ing errors are reported using the buffer descriptor (BD) table and/or error counters. An
indication of the status of the line (idle) is reported through the status register, and a
maskable interrupt is generated upon a status change.
In its simplest form, the UART can function in a character-oriented environment. Each char-
acter is transmitted with accompanying stop bits and parity (as configured by the user) and
is received into separate one-byte buffers. Reception of each buffer may generate a
maskable interrupt.
Many applications may want to take advantage of the message-oriented capabilities sup-
ported by the UART using linked buffers to receive or transmit data. In this case, data is han-
dled in a message-oriented environment; users can work on entire messages rather than
operating on a character-by-character basis. A message may span several linked buffers.
For example, rather than being interrupted after the reception of each character, a terminal
driver may want to wait until an end-of-line character has been typed by a user before han-
dling the input data.
As another example, when transmitting ASCII files, the data may be transferred as messag-
es ending on the end-of-line character. Each message could be both transmitted and re-
ceived as a circular list of buffers without any intervention from the M68000 core. This
technique achieves both ease in programming and significant savings in processor over-
head.
On the receive side, the user may define up to eight control characters. Each control char-
acter may be configured to designate the end of a message (such as end of line) or to gen-
erate a maskable interrupt without being stored in the data buffer. This latter option is useful
when flow-control characters such as XON or XOFF need to alert the M68000 core, yet do
not belong to the message being received. Flow-control characters may also be transmitted
at any time.
In the message-oriented environment, the data stream is divided into buffers. However, the
physical format of each character (stop bits, parity, etc.) is not altered.