Philips Semiconductors Product data sheet
SC28L202Dual UART
2005 Nov 01
28
ISR – Interrupt Status Register A and B
Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
I/O Port
Change
of
state
Receiver
Watch-dog
Time-out
Address
recognition event
Xon/off
event
C/T
Ready
Break
Change
Of
state
RxINT
Receiver entered the
arbitration process.
TxINT
Transmitter entered
the arbitration process.
This register provides the status of all potential interrupt sources for
a UART channel. When generating an interrupt arbitration value, the
contents of this register are masked by the interrupt mask register
(IMR). If a bit in the ISR is a ’1’ and the corresponding bit in the IMR
is also a ‘1’; interrupt arbitration for this source will begin. If the
corresponding bit in the IMR is a zero, the state of the bit in the ISR
can have no affect on the IRQN output. Note that the IMR may or
may not mask the reading of the ISR as determined by GCCR[06].
If GCCR[0] is cleared, the reset and power on default, the ISR is
read without modification. If GCCR[0] is set, the read of the ISR
gives a value of the ISR ANDed with the IMR.
ISR[7] – Input Change of State.
This bit is set when a change of state occurs at the I/O1 or I/O0
input pins. It is reset when the CPU reads the Input Port Register,
IPR.
ISR[6] Fixed Watchdog Time-out.
This bit is set when the receiver’s watchdog timer has counted more
than 64 bit times since the last RxFIFO event. RxFIFO events are a
read of the RxFIFO or GRxFIFO, or the load of a received character
into the FIFO. The interrupt will be cleared automatically when the
RxFIFO or GRxFIFO is read. The receiver watch-dog timer is
included to allow detection of the very last characters of a received
message that may be waiting in the RxFIFO, but are too few in
number to successfully initiate an interrupt. Refer to the watchdog
timer description for details of how the interrupt system works after a
watchdog time-out.
ISR[5] – Address Recognition Status Change.
This bit is set when a change in receiver state has occurred due to
an Address character being received from an external source and
matches the reference address in ARCR. The bit and interrupt is
negated by a write to the CR with command x11011, Reset Address
Recognition Status.
ISR[4] – Xon/Xoff Status Change.
This bit is set when a Xon/Xoff character being received from an
external source. The bit is negated by a read of the channel
Xon/Xoff Interrupt Status Register, XISR.
ISR[3] – Counter Timer Status
The C/T has timed out or the count passed through 0. This bit is
cleared by issuing the ‘stop C/T ’ command.
ISR[2] – Change in Channel Break Status.
This bit, when set, indicates that the receiver has detected the
beginning or the end of a received break. It is reset when the CPU
issues a reset break change interrupt command via the CR.
ISR[1] – RxINT. (Also Rx DMA hand shake at I/O pins)
The general function of this bit is to indicate that the RxFIFO has
data available and that it has entered the arbitration process. The
particular meaning of this bit is programmed by RxFIL register. If
programmed as receiver ready (MR2[3:2] = 00), it indicates that at
least one character has been received and is waiting in the RxFIFO
to be read by the host CPU. It is set when the character is
transferred from the receive shift register to the RxFIFO and reset
when the CPU reads the last character from the RxFIFO.
If RxFIL is programmed as FIFO full, ISR[1] is set when a character
is transferred from the receive holding register to the RxFIFO and
the transfer causes the RxFIFO to become full, i.e. all 256 FIFO
positions are occupied. It is reset whenever RxFIFO is not full. If
there is a character waiting in the receive shift register because the
FIFO is full, the bit is set again when the waiting character is
transferred into the FIFO.
The other two conditions of these bits, 3/4 and half full operate in a
similar manner. The ISR[1] bit is set when the RxFIFO fill level
meets or exceeds the value; it is reset when the fill level is less. See
the description of the MR2 register.
NOTE: This bit must be at a one (1) for the receiver to enter the
arbitration process. It is the fact that this bit is zero (0) when the
RxFIFO is empty that stops an empty FIFO from entering the
interrupt arbitration. Also note that the meaning if this bit is not quite
the same as the similar bit in the status register (SR).
ISR[0] – TxINT. (Also Tx DMA hand shake at I/O pins)
The general function of this bit is to indicate that the TxFIFO has an
at least one empty space for data. The particular meaning of the bit
is controlled by MR0 [5:4] indicates the TxFIFO may be loaded with
one or more characters. If MR0[5:4] = 00 (the default condition) this
bit will not set until the TxFIFO is empty—256 bytes available. If the
fill level of the TxFIFO is below the trigger level programmed by the
TxINT field of the Mode Register 0, this bit will be set. A one in this
position indicates that at least one character can be sent to the
TxFIFO. It is turned off as the TxFIFO is filled above the level
programmed by MR0[5:4. This bit turns on as the FIFO empties.
(Note that the RxFIFO bit turns on as the FIFO fills.) This often a
point of confusion in programming interrupt functions for the receiver
and transmitter FIFOs.
NOTE: This bit must be at a one (1) for the transmitter to enter the
arbitration process. It is the fact that this bit is zero (0) when the
TxFIFO is full that stops a full TxFIFO from entering the interrupt
arbitration. Also note that the meaning if this bit is not quite the same
as the similar bit in the status register (SR).
Philips Semiconductors Product data sheet
SC28L202Dual UART
2005 Nov 01
29
IMR – Interrupt Mask Register A and B
Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
I/O Port Change of state Rx Watch-dog
Time-out
Address
recognition event
Xon/off
event
C/T
Ready
Break Change
Of State
RxRDY
interrupt
TxRDY
interrupt
The programming of this register selects which bits in the ISR cause
an interrupt output. If a bit in the ISR is a ’1’ and the corresponding
bit in the IMR is a ’1’, the interrupt source is presented to the internal
interrupt arbitration circuits, eventually resulting in the IRQN output
being asserted (low). If the corresponding bit in the IMR is a zero,
the state of the bit in the ISR has no affect on the IRQN output.
IMR[7] COS enable
Allows a change of state in the inputs equipped with input change
detectors to cause an interrupt.
IMR[6] Fixed Watchdog Enable
Controls the generation of an interrupt watchdog timer event. If set,
a count of 64 idle bit times in the receiver will begin interrupt
arbitration.
IMR[5] Address recognition enable
Enables the generation of an interrupt in response to changes in the
Address Recognition circuitry of the Special Mode (multi-drop or
wake-up mode).
IMR[4] Xon/Xoff Enable
Enables the generation of an interrupt in response to recognition of
an in-band flow control character.
IMR[3] Counter/Timer Enable
Enable the C/T interrupt when the C/T reaches 0 count.[2] Enables
the generation of an interrupt when a Break condition has been
detected by the channel receiver.
IMR[1] Receiver (Rx) Enable
Enables the generation of an interrupt when servicing for the
RxFIFO is desired.
IMR[0] Transmitter (Tx) Enable
Enables the generation of an interrupt when servicing for the
TxFIFO is desired.
RxFIFO – Receiver FIFO, A and B
Bit[10] Bit[9] Bit[8] Bits [7:0]
These bits are sent to the status register This the data byte sent to the data bus on RxFIFO read
Break
Received Status
Framing
Error Status
Parity
Error Status
8 data bits
MSBs =0 for 7,6,5 bit data
The FIFO for the receiver is 11 bits wide and 256 ‘words’ deep. The
status of each byte received is stored with that byte and is moved
along with the byte as the characters are read from the FIFO. The
upper three bits are presented in the STATUS register and they
change in the status register each time a data byte is read from the
FIFO. Therefor the status register should be read BEFORE the byte
is read from the RxFIFO if one wishes to ascertain the quality of the
byte.
The foregoing applies to the ‘character error’ mode of status
reporting. See MR1[5] and ‘RxFIFO Status’ descriptions for ‘block
error’ status reporting. Briefly, ‘Block Error’ gives the accumulated
error of all bytes received by the RxFIFO since the last ‘Reset Error
command was issued. (CR = 0x04)
TxFIFO – Transmitter FIFO, A and B
Bits 7:0
8 data bits. MSBs are ignored to 0 for 7, 6, 5 bit data
The FIFO for the transmitter is 8 bits wide by 256 bytes deep. For character lengths less than 8 bits the upper bits will be ignored by the
transmitter state machine and thus are effectively discarded.
RxFIL – Receiver FIFO Interrupt Level, A and B
Bits 7:0
Any one of 256 FIFO fill positions
The position in the Rx FIFO that causes the receiver will enter the interrupt arbitration process. This register is used to offset the effect of the
arbitration threshold. It use may yield moderate improvements in the interrupt service. It will also ‘equalize’ interrupt latency and allow for larger
aggregate block transfers between fast and slow channels. Writing to this register removes the interrupt control established in MR0 and MR1.
RxFL – Receiver FIFO Fill Level Register
Bits 7:0
Channel byte count code ** (1) = implied ‘1’
00000001 = 1
00000010 = 2
to
11111111 = 255
**(1)00000000 = 256 if RxRDY status bit is set.
The number of bytes filled in the receiver FIFO
Philips Semiconductors Product data sheet
SC28L202Dual UART
2005 Nov 01
30
TxFIL – Transmitter FIFO Interrupt Level A and B
Bits 7:0
Any one of 256 FIFO empty positions
The position in the Tx FIFO that caused the transmitter will enter the interrupt arbitration process. This register is used to offset the effect of the
arbitration threshold. It use may yield moderate improvements in the interrupt service. It will also ‘equalize’ interrupt latency and allow for larger
aggregate block transfers between fast and slow channels. Writing to this register removes the interrupt control established in MR0 and MR1.
TxEL – Transmitter FIFO Empty Level Register
Bits 7:0
Channel byte count code ** (1) = implied ‘1’
00000001 = 1
00000010 = 2
to
11111111 = 255
**(1)00000000 = 256 if TxRDY status bit is set.
The number of empty bytes in the Transmitter FIFO.
Registers for Character Recognition
Please not that, although the names of the registers imply a particular function, there is not any hardware function directly attached to them.
They are just three characters that may be used for any function requiring recognition or simple character stripping.
It is only when other internal logic is enabled that the reception of a recognized character will trigger particular chip functions and/or interrupts.
XonCR – Xon/Xoff Character Register A and B
Bits 7:0
8 Bits of the Xon Character Recognition (Resets to 0x11)
An 8-bit character register that contains the compare value for a Xon character.
XoffCR – Xoff Character Register A and B
Bits 7:0
8 Bits of the Xoff Character Recognition (Resets to 0x13)
An 8-bit character register that contains the compare value for a Xoff character.
ARCR – Address Recognition Character Register A and B
Bits 7:0
8 Bits of the Multi-Drop Address Character Recognition (Resets to 0x00)
An 8 bit character register that contains the compare value for the wake-up address character.

SC28L202A1DGG,129

Mfr. #:
Manufacturer:
NXP Semiconductors
Description:
UART Interface IC 3-5V 2CH UART 3MBPS
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union