Silicon Laboratories C8051F344 Manuel D’Utilisation

Page de 282
Rev. 0.5
223
C8051F340/1/2/3/4/5/6/7
byte in the FIFO. After SBUF1 is read, the next byte in the FIFO is loaded into SBUF1, and space is made 
available in the FIFO for another incoming byte. If enabled, an interrupt will occur when RI1 is set.
If the extra bit function is enabled (XBE1 = ‘1’) and the parity function is disabled (PE1 = ‘0’), the extra bit 
for the oldest byte in the FIFO can be read from the RBX1 bit (SCON1.2). If the extra bit function is not 
enabled, the value of the stop bit for the oldest FIFO byte will be presented in RBX1. When the parity func-
tion is enabled (PE1 = ‘1’), hardware will check the received parity bit against the selected parity type 
(selected with S1PT[1:0]) when receiving data. If a byte with parity error is received, the PERR1 flag will be 
set to ‘1’. This flag must be cleared by software. Note: when parity is enabled, the extra bit function is not 
available.
19.3.3. Multiprocessor Communications
UART1 supports multiprocessor communication between a master processor and one or more slave pro-
cessors by special use of the extra data bit. When a master processor wants to transmit to one or more 
slaves, it first sends an address byte to select the target(s). An address byte differs from a data byte in that 
its extra bit is logic 1; in a data byte, the extra bit is always set to logic 0.
Setting the MCE1 bit (SMOD1.7) of a slave processor configures its UART such that when a stop bit is 
received, the UART will generate an interrupt only if the extra bit is logic 1 (RBX1 = 1) signifying an 
address byte has been received. In the UART interrupt handler, software will compare the received 
address with the slave's own assigned address. If the addresses match, the slave will clear its MCE1 bit to 
enable interrupts on the reception of the following data byte(s). Slaves that weren't addressed leave their 
MCE1 bits set and do not generate interrupts on the reception of the following data bytes, thereby ignoring 
the data. Once the entire message is received, the addressed slave resets its MCE1 bit to ignore all trans-
missions until it receives the next address byte.
Multiple addresses can be assigned to a single slave and/or a single address can be assigned to multiple 
slaves, thereby enabling "broadcast" transmissions to more than one slave simultaneously. The master 
processor can be configured to receive all transmissions or a protocol can be implemented such that the 
master/slave role is temporarily reversed to enable half-duplex transmission between the original master 
and slave(s).
Figure 19.6. UART Multi-Processor Mode Interconnect Diagram
Master
Device
Slave
Device
TX
RX
RX
TX
Slave
Device
RX
TX
Slave
Device
RX
TX
V+