Chapter 16. UART Modules
16-27
Operation
The two error modes are selected by UMR1n[ERR] as follows:
•
In character mode (UMR1n[ERR] = 0), status is given in the USRn for the character
at the top of the FIFO.
•
In block mode, the USRn shows a logical OR of all characters reaching the top of
the FIFO stack since the last
RESET
ERROR
STATUS
command. Status is updated as
characters reach the top of the FIFO stack. Block mode offers a data-reception speed
advantage where the software overhead of error-checking each character cannot be
tolerated. However, errors are not detected until the check is performed at the end of
an entire message—the faulting character in the block is not identified.
In either mode, reading the USRn does not affect the FIFO. The FIFO is popped only when
the receive buffer is read. The USRn should be read before reading the receive buffer. If all
24 receiver holding registers are full, a new character is held in the receiver shift register
until space is available. However, if a second new character is received, the character in the
receiver shift register is lost, the FIFO is unaffected, and USRn[OE] is set when the receiver
detects the start bit of the new overrunning character.
Visibility into the status of the FIFO is provided by various bits and interrupts, as shown in
Table 16-17.
To support flow control, the receiver can be programmed to automatically negate and assert
RTS, in which case the receiver automatically negates RTS when a valid start bit is detected
and the FIFO stack is full. The receiver asserts RTS when a FIFO position becomes
available; therefore, overrun errors can be prevented by connecting RTS to the CTS input
of the transmitting device.
NOTE:
The receiver can still read characters in the FIFO stack if the
receiver is disabled. If the receiver is reset, the FIFO stack, RTS
control, all receiver status bits, and interrupt requests are reset.
No more characters are received until the receiver is reenabled.
Table 16-17. Receiver FIFO Status Bits
Status Bit
Indicated Condition
Interrupt
USR[FFULL] = 1
All FIFO positions contain data
Yes
USR[RxRDY] = 1
At least one character is available to be read by the CPU.
Yes
USR[RxFIFO] = 1
The programmed level of fullness (UTF[RXS]) has been reached.
Yes
USR[RxFTO] = 1
The receiver FIFO holds unread data, and the FIFO status has not
changed in at least 64 receiver clocks.
Yes
URF[RXS]
Indicates the level of fullness of the receiver FIFO
URF[RXB]
Indicates the number of characters, 0–24, in the receiver FIFO.
Содержание DigitalDNA ColdFire MCF5272
Страница 1: ...MCF5272UM D Rev 0 02 2001 MCF5272 ColdFire Integrated Microprocessor User s Manual ...
Страница 38: ...xxxviii MCF5272 User s Manual TABLES Table Number Title Page Number ...
Страница 58: ...1 10 MCF5272 User s Manual MCF5272 Specific Features ...
Страница 90: ...2 42 MCF5272 User s Manual Exception Processing Overview ...
Страница 96: ...3 6 MCF5272 User s Manual MAC Instruction Execution Timings ...
Страница 158: ...5 46 MCF5272 User s Manual Motorola Recommended BDM Pinout ...
Страница 184: ...7 12 MCF5272 User s Manual Interrupt Controller Registers ...
Страница 338: ...13 44 MCF5272 User s Manual Application Examples ...
Страница 414: ...18 6 MCF5272 User s Manual PWM Programming Model ...
Страница 452: ...19 38 MCF5272 User s Manual Power Supply Pins ...
Страница 482: ...20 30 MCF5272 User s Manual Reset Operation ...
Страница 492: ...21 10 MCF5272 User s Manual Non IEEE 1149 1 Operation ...
Страница 548: ...INDEX Index 12 MCF5272 User s Manual ...