935248790551 [NXP]
IC 2 CHANNEL(S), 1M bps, SERIAL COMM CONTROLLER, PQFP44, 10 X 10 MM, 1.75 MM HEIGHT, PLASTIC, SOT-307-2, QFP-44, Serial IO/Communication Controller;型号: | 935248790551 |
厂家: | NXP |
描述: | IC 2 CHANNEL(S), 1M bps, SERIAL COMM CONTROLLER, PQFP44, 10 X 10 MM, 1.75 MM HEIGHT, PLASTIC, SOT-307-2, QFP-44, Serial IO/Communication Controller 通信 时钟 数据传输 外围集成电路 |
文件: | 总36页 (文件大小:314K) |
中文: | 中文翻译 | 下载: | 下载PDF数据表文档文件 |
INTEGRATED CIRCUITS
SC26C92
Dual universal asynchronous
receiver/transmitter (DUART)
Product specification
2000 Jan 31
Supersedes data of 1998 Nov 09
IC19 Data Handbook
Philips
Semiconductors
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
DESCRIPTION
• Programmable baud rate for each receiver and transmitter
The SC26C92 is a pin and function replacement for the SCC2692
and SCN2681 with added features and deeper FIFOs. Its
configuration on power up is that of the 2692. Its differences from
the 2692 are: 8 character receiver, 8 character transmit FIFOs,
watch dog timer for each receiver, mode register 0 is added,
extended baud rate and overall faster speeds, programmable
receiver and transmitter interrupts. (The SCC2692 is not being
discontinued.)
selectable from:
– 27 fixed rates: 50 to 230.4k baud
– Other baud rates to 230.4k baud at 16X
– Programmable user-defined rates derived from a
programmable counter/timer
– External 1X or 16X clock
• Parity, framing, and overrun error detection
• False start bit detection
The Philips Semiconductors SC26C92 Dual Universal
Asynchronous Receiver/Transmitter (DUART) is a single-chip
CMOS-LSI communications device that provides two full-duplex
asynchronous receiver/transmitter channels in a single package. It
interfaces directly with microprocessors and may be used in a polled
or interrupt driven system and provides modem and DMA interface.
• Line break detection and generation
• Programmable channel mode
– Normal (full-duplex)
– Automatic echo
The operating mode and data format of each channel can be
programmed independently. Additionally, each receiver and
transmitter can select its operating speed as one of 27 fixed baud
rates, a 16X clock derived from a programmable counter/timer, or an
external 1X or 16X clock. The baud rate generator and
counter/timer can operate directly from a crystal or from external
clock inputs. The ability to independently program the operating
speed of the receiver and transmitter make the DUART particularly
attractive for dual-speed channel applications such as clustered
terminal systems.
– Local loopback
– Remote loopback
– Multidrop mode (also called ‘wake-up’ or ‘9-bit’)
• Multi-function 7-bit input port
– Can serve as clock, modem, or control inputs
– Change of state detection on four inputs
– Inputs have typically >100k pull-up resistors
• Multi-function 8-bit output port
Each receiver and transmitter is buffered by eight character FIFOs
to minimize the potential of receiver overrun, transmitter underrun
and to reduce interrupt overhead in interrupt driven systems. In
addition, a flow control capability is provided via RTS/CTS signaling
to disable a remote transmitter when the receiver buffer is full.
– Individual bit set/reset capability
– Outputs can be programmed to be status/interrupt signals
– FIFO states for DMA and modem interface
• Versatile interrupt system
– Single interrupt output with eight maskable interrupting
Also provided on the SC26C92 are a multipurpose 7-bit input port
and a multipurpose 8-bit output port. These can be used as general
purpose I/O ports or can be assigned specific functions (such as
clock inputs or status/interrupt outputs) under program control.
conditions
– Output port can be configured to provide a total of up to six
separate wire-ORable interrupt outputs
The SC26C92 is available in three package versions: 40-pin 0.6”
wide DIP, a 44-pin PLCC and 44–pin plastic quad flat pack (PQFP).
– Each FIFO can be programmed for four different interrupt levels
– Watch dog timer for each receiver
• Maximum data transfer rates:
FEATURES
1X – 1Mb/sec, 16X – 1Mb/sec
• Dual full-duplex independent asynchronous receiver/transmitters
• Automatic wake-up mode for multidrop applications
• Start-end break interrupt/status
• Detects break which originates in the middle of a character
• On-chip crystal oscillator
• 8 character FIFOs for each receiver and transmitter
• Programmable data format
– 5 to 8 data bits plus parity
– Odd, even, no parity or force parity
– 1, 1.5 or 2 stop bits programmable in 1/16-bit increments
• Power down mode
• 16-bit programmable Counter/Timer
• Receiver timeout mode
• Single +5V power supply
• Powers up to emulate SCC2692
ORDERING INFORMATION
1
COMMERCIAL
INDUSTRIAL
DWG #
DESCRIPTION
V
CC
= +5V ±10%, T = 0 to +70°C
V
CC
= +5V ±10%, T = -40 to +85°C
A
A
40-Pin Plastic Dual In-Line Package (DIP)
44-Pin Plastic Leaded Chip Carrier (PLCC)
44–Pin Plastic Quad Flat Pack (PQFP)
SC26C92C1N
SC26C92C1A
SC26C92C1B
SC26C92A1N
SC26C92A1A
SC26C92A1B
SOT129-1
SOT187-2
SOT307–2
2
2000 Jan 31
853–1585 23061
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
NOTE:
1. Commercial devices are tested for the –40 to +85_C.
PIN CONFIGURATIONS
INDEX
CORNER
A0
IP3
A1
1
2
3
4
5
40
V
CC
6
40
39
1
39 IP4
38 IP5
37 IP6
36 IP2
44
34
7
1
33
23
IP1
A2
PLCC
PQFP
A3
IP0
6
7
8
9
35 CEN
34 RESET
33 X2
11
29
28
17
12
WRN
RDN
22
18
TOP VIEW
32 X1/CLK
31 RxDA
30 TxDA
29 OP0
TOP VIEW
RxDB 10
TxDB 11
OP1 12
DIP
PIN/FUNCTION
PIN/FUNCTION
PIN/FUNCTION
PIN/FUNCTION
1
2
3
4
5
6
7
8
9
NC
A0
IP3
A1
IP1
A2
A3
IP0
WRN
23 NC
24 INTRN
25 D6
26 D4
27 D2
1
A3
IP0
23 N/C
24 OP6
25 OP4
26 OP2
27 OP0
28 TxDA
29 RxDA
30 X1/CLK
31 X2
2
3
4
5
6
7
8
9
WRN
RDN
RxDB
TxDB
OP1
OP3
OP5
OP3 13
OP5 14
OP7 15
D1 16
28 OP2
27 OP4
26 OP6
25 D0
28 D0
29 OP6
30 OP4
31 OP2
32 OP0
33 TXDA
34 NC
10 RDN
11 RXDB
12 NC
10 OP7
11 N/C
12 D1
32 RESET
33 CEN
34 IP2
D3 17
24 D2
13 TXDB
14 OP1
15 OP3
16 OP5
17 OP7
18 D1
19 D3
20 D5
21 D7
35 RXDA
36 X1/CLK
37 X2
38 RESET
39 CEN
40 IP2
41 IP6
42 IP5
43 IP4
44 V
CC
13 D3
14 D5
15 D7
16 GND
17 GND
18 INTRN
19 D6
20 D4
21 D2
35 IP6
36 IP5
37 IP4
D5 18
23 D4
D7 19
22 D6
38
39
V
V
CC
CC
20
21 INTRN
40 A0
41 IP3
42 A1
43 IP1
44 A2
V
SS
22
V
22 D0
SS
SD00667
Figure 1. Pin Configurations
3
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
BLOCK DIAGRAM
8
CHANNEL A
D0–D7
BUS BUFFER
8 BYTE TRANSMIT
FIFO
TxDA
RxDA
TRANSMIT
SHIFT REGISTER
OPERATION CONTROL
RDN
8 BYTE RECEIVE
FIFO
WRN
CEN
ADDRESS
DECODE
WATCH DOG TIMER
4
A0–A3
RESET
RECEIVE SHIFT
REGISTER
R/W CONTROL
MRA0, 1, 2
CRA
SRA
INTERRUPT CONTROL
TxDB
RxDB
INTRN
IMR
ISR
CHANNEL B
(AS ABOVE)
INPUT PORT
CHANGE OF
STATE
DETECTORS (4)
TIMING
7
IP0-IP6
BAUD RATE
GENERATOR
IPCR
ACR
CLOCK
SELECTORS
COUNTER/
TIMER
OUTPUT PORT
FUNCTION
SELECT LOGIC
8
OP0-OP7
X1/CLK
X2
XTAL OSC
OPCR
OPR
CSRA
CSRB
ACR
U
CTPL
CTPL
V
CC
V
SS
SD00153
Figure 2. Block Diagram
4
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
PIN DESCRIPTION
PKG
40,44
X
PIN
TYPE
SYMBOL
NAME AND FUNCTION
D0-D7
I/O
Data Bus: Bidirectional 3-State data bus used to transfer commands, data and status between the DUART
and the CPU. D0 is the least significant bit.
CEN
X
I
Chip Enable: Active-Low input signal. When Low, data transfers between the CPU and the DUART are
enabled on D0-D7 as controlled by the WRN, RDN and A0-A3 inputs. When High, places the D0-D7 lines
in the 3-State condition.
WRN
RDN
X
X
I
I
Write Strobe: When Low and CEN is also Low, the contents of the data bus is loaded into the addressed
register. The transfer occurs on the rising edge of the signal.
Read Strobe: When Low and CEN is also Low, causes the contents of the addressed register to be
presented on the data bus. The read cycle begins on the falling edge of RDN.
A0-A3
X
X
I
I
Address Inputs: Select the DUART internal registers and ports for read/write operations.
RESET
Reset: A High level clears internal registers (SRA, SRB, IMR, ISR, OPR, OPCR), puts OP0-OP7 in the
High state, stops the counter/timer, and puts Channels A and B in the inactive state, with the TxDA and
TxDB outputs in the mark (High) state. Sets MR pointer to MR1 and resets MR0.
INTRN
X1/CLK
X2
X
X
X
O
I
Interrupt Request: Active-Low, open-drain, output which signals the CPU that one or more of the eight
maskable interrupting conditions are true. Requires a pullup resistor.
Crystal 1: Crystal connection or an external clock input. A crystal of a clock the appropriate frequency
(nominally 3.6864 MHz) must be supplied at all times. For crystal connections see Figure 7, Clock Timing.
I
Crystal 2: Crystal connection. See Figure 7. If a crystal is not used this pin must be left open or not driving
more than one TTL equivalent load.
RxDA
RxDB
TxDA
X
X
X
I
I
Channel A Receiver Serial Data Input: The least significant bit is received first. “Mark” is High, “space” is Low.
Channel B Receiver Serial Data Input: The least significant bit is received first. “Mark” is High, “space” is Low.
O
Channel A Transmitter Serial Data Output: The least significant bit is transmitted first. This output is held
in the “mark” condition when the transmitter is disabled, idle or when operating in local loopback mode.
“Mark” is High, “space” is Low.
TxDB
X
O
Channel B Transmitter Serial Data Output: The least significant bit is transmitted first. This output is
held in the ‘mark’ condition when the transmitter is disabled, idle, or when operating in local loopback mode.
‘Mark’ is High, ‘space’ is Low.
OP0
OP1
OP2
OP3
X
X
X
X
O
O
O
O
Output 0: General purpose output or Channel A request to send (RTSAN, active-Low). Can be
deactivated automatically on receive or transmit.
Output 1: General purpose output or Channel B request to send (RTSBN, active-Low). Can be
deactivated automatically on receive or transmit.
Output 2: General purpose output, or Channel A transmitter 1X or 16X clock output, or Channel A receiver
1X clock output.
Output 3: General purpose output or open-drain, active-Low counter/timer output or Channel B transmitter
1X clock output, or Channel B receiver 1X clock output.
OP4
OP5
OP6
OP7
IP0
X
X
X
X
X
O
O
O
O
I
Output 4: General purpose output or Channel A open-drain, active-Low, RxA interrupt ISR[1] output.
Output 5: General purpose output or Channel B open-drain, active-Low, RxB interrupt ISR[5] output.
Output 6: General purpose output or Channel A open-drain, active-Low, TxA interrupt ISR[0] output.
Output 7: General purpose output, or Channel B open-drain, active-Low, TxB interrupt ISR[4] output.
Input 0: General purpose input or Channel A clear to send active-Low input (CTSAN). Pin has an internal
V
CC
pull-up device supplying 1 to 4 mA of current.
IP1
IP2
IP3
X
X
X
I
I
I
Input 1: General purpose input or Channel B clear to send active-Low input (CTSBN). Pin has an internal
pull-up device supplying 1 to 4 mA of current.
V
CC
Input 2: General purpose input or counter/timer external clock input. Pin has an internal V pull-up device
CC
supplying 1 to 4 mA of current.
Input 3: General purpose input or Channel A transmitter external clock input (TxCA). When the external
clock is used by the transmitter, the transmitted data is clocked on the falling edge of the clock. Pin has an
internal V pull-up device supplying 1 to 4 mA of current.
CC
IP4
IP5
IP6
X
X
X
I
I
I
Input 4: General purpose input or Channel A receiver external clock input (RxCA). When the external
clock is used by the receiver, the received data is sampled on the rising edge of the clock. Pin has an
internal V pull-up device supplying 1 to 4 mA of current.
CC
Input 5: General purpose input or Channel B transmitter external clock input (TxCB). When the external
clock is used by the transmitter, the transmitted data is clocked on the falling edge of the clock. Pin has an
internal V pull-up device supplying 1 to 4 mA of current.
CC
Input 6: General purpose input or Channel B receiver external clock input (RxCB). When the external
clock is used by the receiver, the received data is sampled on the rising edge of the clock. Pin has an
internal V pull-up device supplying 1 to 4 mA of current.
CC
V
X
X
I
I
Power Supply: +5V supply input.
CC
GND
Ground
5
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
1
ABSOLUTE MAXIMUM RATINGS
SYMBOL
PARAMETER
RATING
Note 4
UNIT
°C
°C
V
2
T
Operating ambient temperature range
A
T
Storage temperature range
-65 to +150
-0.5 to +7.0
STG
3
V
CC
Voltage from V to GND
CC
3
V
P
P
P
Voltage from any pin to GND
-0.5 to V +0.5
V
S
CC
Package power dissipation (DIP40)
Package power dissipation (PLCC44)
Package power dissipation (PQFP44)
Derating factor above 25_C (PDIP40)
Derating factor above 25_C (PLCC44)
Derating factor above 25_C (PQFP44)
2.8
2.4
1.78
22
W
W
D
D
D
W
mW/_C
mW/_C
mW/_C
19
14
NOTES:
1. Stresses above those listed under Absolute Maximum Ratings may cause permanent damage to the device. This is a stress rating only and
functional operation of the device at these or any other condition above those indicated in the operation section of this specification is not
implied.
2. For operating at elevated temperatures, the device must be derated based on +150°C maximum junction temperature.
3. This product includes circuitry specifically designed for the protection of its internal devices from damaging effects of excessive static
charge. Nonetheless, it is suggested that conventional precautions be taken to avoid applying any voltages larger than the rated maxima.
4. Parameters are valid over specified temperature range.
1, 2
DC ELECTRICAL CHARACTERISTICS
V
CC
= 5V ± 10%, T = –40_C to 85_C, unless otherwise specified.
A
LIMITS
Typ
SYMBOL
PARAMETER
TEST CONDITIONS
Min
Max
UNIT
V
V
V
Input low voltage
0.8
V
IL
Input high voltage (except X1/CLK)
Input high voltage (X1/CLK)
–40 to +85°C
2.5
V
V
IH
IH
0.8 V
CC
I
= 2.4mA
V
V
Output low voltage
Output high voltage (except OD outputs)
0.4
V
V
OL
OL
3
V
CC
-0.5
OH
I
= -400µA
OH
I
X1/CLK input current - power down
X1/CLK input low current - operating
X1/CLK input high current - operating
-0.5
-130
+0.5
130
µA
µA
µA
V
= 0 to V
IX1PD
ILX1
IN
CC
I
I
V
IN
= 0
V
= V
IHX1
IN
CC
Input leakage current:
All except input port pins
Input port pins
I
I
V
V
= 0 to V
= 0 to V
-0.5
-8
+0.5
+0.5
µA
µA
IN
IN
CC
CC
I
I
Output off current high, 3-State data bus
Output off current low, 3-State data bus
V
V
= V
CC
0.5
µA
µA
OZH
OZL
IN
= 0V
–0.5
–0.5
IN
I
I
Open-drain output low current in off-state
Open-drain output high current in off-state
V
= 0
µA
µA
ODL
ODH
IN
V
IN
= V
0.5
CC
4
Power supply current
I
Operating mode
Power down mode
CMOS input levels
CMOS input levels
5
2
10
15
mA
mA
CC
5
NOTES:
1. Parameters are valid over specified temperature range.
2. Typical values are at +25°C, typical supply voltages, and typical processing parameters.
3. Test conditions for outputs: C = 150pF, except interrupt outputs. Test conditions for interrupt outputs: C = 50pF, R = 2.7KΩ to V .
CC
L
L
L
4. All outputs are disconnected. Inputs are switching between CMOS levels of V -0.2V and V + 0.2V.
CC
SS
5. See UART application note for power down currents of 5µA or less.
6
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
1, 2, 4
AC CHARACTERISTICS
V
= 5V ± 10%, T = –40_C to 85_C, unless otherwise specified.
CC
A
LIMITS
3
SYMBOL
PARAMETER
Min
Typ
Max
UNIT
Reset Timing (See Figure 3)
t
RESET pulse width
200
ns
RES
5
Bus Timing (See Figure 4)
t
t
t
t
t
t
t
t
t
t
A0-A3 setup time to RDN, WRN Low
A0-A3 hold time from RDN, WRN Low
CEN setup time to RDN, WRN Low
CEN hold time from RDN, WRN High
WRN, RDN pulse width
10
25
0
0
70
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
AS
AH
CS
CH
RW
DD
DF
Data valid after RDN Low
55
25
Data bus floating after RDN High
Data setup time before WRN or CEN High
Data hold time after WRN or CEN High
25
0
30
DS
DH
RWD
5, 6
High time between reads and/or writes
5
Port Timing (See Figure 5)
t
t
t
Port input setup time before RDN Low
Port input hold time after RDN High
OP output valid from WRN High
0
0
ns
ns
ns
PS
PH
PD
100
n
Interrupt Timing (See Figure 6)
INTRN (or OP3-OP7 when used as interrupts) negated from:
Read RxFIFO (RxRDY/FFULL interrupt)
Write TxFIFO (TxRDY interrupt)
Reset command (break change interrupt)
Stop C/T command (counter interrupt)
Read IPCR (input port change interrupt)
Write IMR (clear of interrupt mask bit)
100
100
100
100
100
100
ns
ns
ns
ns
ns
ns
t
IR
Clock Timing (See Figure 7)
t
f
t
f
t
f
X1/CLK High or Low time
X1/CLK frequency
50
0.1
55
0
30
0
0
ns
MHz
ns
MHz
ns
CLK
CLK
CTC
CTC
RX
3.6864
8
8
CTCLK (IP2) High or Low time
CTCLK (IP2) frequency
RxC High or Low time (16X)
RxC frequency (16X)
16
1
MHz
MHz
RX
8
(1X)
t
f
TxC High or Low time (16X)
TxC frequency (16X)
30
0
0
ns
MHz
MHz
TX
16
1
TX
8
(1X)
Transmitter Timing (See Figure 8)
t
t
TxD output delay from TxC external clock input on IP pin
Output delay from TxC low at OP pin to TxD data output
60
30
ns
ns
TXD
5
TCS
Receiver Timing (See Figure 9)
t
t
RxD data setup time before RxC high at external clock input on IP pin
RxD data hold time after RxC high at external clock input on IP pin
50
50
ns
ns
RXS
RXH
NOTES:
1. Parameters are valid over specified temperature range.
2. All voltage measurements are referenced to ground (GND). For testing, all inputs swing between 0.4V and 3.0V with a transition time of 5ns
maximum. For X1/CLK this swing is between 0.4V and 4.4V. All time measurements are referenced at input voltages of 0.8V and 2.0V and
output voltages of 0.8V and 2.0V, as appropriate.
3. Typical values are at +25°C, typical supply voltages, and typical processing parameters.
4. Test conditions for outputs: C = 150pF, except interrupt outputs. Test conditions for interrupt outputs: C = 50pF, R = 2.7KΩ to V .
L
L
L
CC
5. Timing is illustrated and referenced to the WRN and RDN inputs. Also, CEN may be the ‘strobing’ input. CEN and RDN (also CEN and
WRN) are ORed internally. The signal asserted last initiates the cycle and the signal negated first terminates the cycle.
6. If CEN is used as the ‘strobing’ input, the parameter defines the minimum High times between one CEN and the next. The RDN signal must
be negated for t
to guarantee that any status register changes are valid.
RWD
7. Minimum frequencies are not tested but are guaranteed by design. Crystal frequencies 2 to 4 MHz.
8. Clocks for 1X mode should be symmetrical.
7
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
Counter–Timer
Block Diagram
The SC26C92 DUART consists of the following eight major sections:
data bus buffer, operation control, interrupt control, timing,
communications Channels A and B, input port and output port.
Refer to the Block Diagram.
The Counter/Timer is a programmable 16–bit divider that is used for
generating miscellaneous clocks or generating timeout periods.
These clocks may be used by any or all of the receivers and trans-
mitters in the DUART or may be directed to an I/O pin for miscella-
neous use.
Data Bus Buffer
The data bus buffer provides the interface between the external and
internal data buses. It is controlled by the operation control block to
allow read and write operations to take place between the controlling
CPU and the DUART.
Counter/Timer programming
The counter timer is a 16–bit programmable divider that operates in
one of three modes: counter, timer, and time out.
• Timer mode generates a square wave.
Operation Control
The operation control logic receives operation commands from the
CPU and generates appropriate signals to internal sections to
control device operation. It contains address decoding and read and
write circuits to permit communications with the microprocessor via
the data bus.
• Counter mode generates a time delay.
• Time out mode counts time between received characters.
The C/T uses the numbers loaded into the Counter/Timer Lower
Register (CTPL) and the Counter/Timer Upper Register (CTPU) as
its divisor. The counter timer is controlled with six commands: Start/
Stop C/T, Read/Write Counter/Timer lower register and Read/Write
Counter/Timer upper register. These commands have slight differ-
ences depending on the mode of operation. Please see the detail of
the commands under the CTPL/CTPU register descriptions.
Interrupt Control
A single active-Low interrupt output (INTRN) is provided which is
activated upon the occurrence of any of eight internal events.
Associated with the interrupt system are the Interrupt Mask Register
(IMR) and the Interrupt Status Register (ISR). The IMR can be
programmed to select only certain conditions to cause INTRN to be
asserted. The ISR can be read by the CPU to determine all
currently active interrupting conditions.
Baud Rate Generation with the C/T
When the timer is selected as baud rates for receiver or transmitter
via the Clock Select register their output will be configured as a 16x
clock. Therefore one needs to program the timer to generate a
clock 16 times faster than the data rate. The formula for calculating
’n’, the number loaded to the CTPU and CTPL registers, based on a
particular input clock frequency is shown below.
Outputs OP3-OP7 can be programmed to provide discrete interrupt
outputs for the transmitter, receivers, and counter/timer.
When OP3 to OP7 are programmed as interrupts, their output
buffers are changed to the open drain active low configuration.
These pins may be used for DMA and modem control.
For the timer mode the formula is as follows:
TIMING CIRCUITS
Clockinputfrequency
n=
2 16 Baudratedesired
Crystal Clock
The timing block consists of a crystal oscillator, a baud rate
generator, a programmable 16-bit counter/timer, and four clock
selectors. The crystal oscillator operates directly from a crystal
connected across the X1/CLK and X2 inputs. If an external clock of
the appropriate frequency is available, it may be connected to
X1/CLK. The clock serves as the basic timing reference for the
Baud Rate Generator (BRG), the counter/timer, and other internal
circuits. A clock signal within the limits specified in the
specifications section of this data sheet must always be supplied to
the DUART.
NOTE: ‘n’ may not assume values of 0 and 1.
The frequency generated from the above formula will be at a rate 16
times faster than the desired baud rate. The transmitter and receiv-
er state machines include divide by 16 circuits, which provide the
final frequency and provide various timing edges used in the qualify-
ing the serial data bit stream. Often this division will result in a non–
integer value: 26.3 for example. One may only program integer
numbers to a digital divider. There for 26 would be chosen. If 26.7
were the result of the division then 27 would be chosen. This gives
a baud rate error of 0.3/26.3 or 0.3/26.7 that yields a percentage
error of 1.14% or 1.12% respectively, well within the ability of the
asynchronous mode of operation. Higher input frequency to the
counter reduces the error effect of the fractional division
If an external is used instead of a crystal, X1 should be driven using
a configuration similar to the one in Figure 7.
BRG
The baud rate generator operates from the oscillator or external
clock input and is capable of generating 27 commonly used data
communications baud rates ranging from 50 to 38.4K baud.
Programming bit 0 of MR0 to a “1” gives additional baud rates to
230.4kB. These will be in the 16X mode. A 3.6864MHz crystal or
external clock must be used to get the standard baud rates. The
clock outputs from the BRG are at 16X the actual baud rate. The
counter/timer can be used as a timer to produce a 16X clock for any
other baud rate by counting down the crystal clock or an external
clock. The four clock selectors allow the independent selection, for
each receiver and transmitter, of any of these baud rates or external
timing signal.
One should be cautious about the assumed benign effects of small
errors since the other receiver or transmitter with which one is com-
municating may also have a small error in the precise baud rate. In
a ”clean” communications environment using one start bit, eight data
bits and one stop bit the total difference allowed between the trans-
mitter and receiver frequency is approximately 4.6%. Less than
eight data bits will increase this percentage.
Communications Channels A and B
Each communications channel of the SC26C92 comprises a
full-duplex asynchronous receiver/transmitter (UART). The
8
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
operating frequency for each receiver and transmitter can be
selected independently from the baud rate generator, the
counter/timer, or from an external input.
RxRDY) they will be switched to an open drain configuration. In this
configuration an external pull–up device will be required
OPERATION
Transmitter
The transmitter accepts parallel data from the CPU, converts it to a
serial bit stream, inserts the appropriate start, stop, and optional
parity bits and outputs a composite serial stream of data on the TxD
output pin.
The SC26C92 is conditioned to transmit data when the transmitter is
enabled through the command register. The SC26C92 indicates to
the CPU that it is ready to accept a character by setting the TxRDY
bit in the status register. This condition can be programmed to
generate an interrupt request at OP0, OP1 and INTRN. When the
transmitter is initially enabled the TxRDY and TxEMT bits will be set
in the status register. When a character is loaded to the transmit
FIFO the TxEMT bit will be reset. The TxEMT will not set until: 1)
the transmit FIFO is empty and the transmit shift register has
finished transmitting the stop bit of the last character written to the
transmit FIFO, or 2) the transmitter is disabled and then re–enabled.
The TxRDY bit is set whenever the transmitter is enabled and the
TxFIFO is not full. Data is transferred from the holding register to
transmit shift register when it is idle or has completed transmission
of the previous character. Characters cannot be loaded into the
TxFIFO while the transmitter is disabled.
The receiver accepts serial data on the RxD pin, converts this serial
input to parallel format, checks for start bit, stop bit, parity bit (if any),
or break condition and sends an assembled character to the CPU
via the receive FIFO. Three status bits (Break Received, Framing
and Parity Errors) are also FIFOed with each data character.
Input Port
The inputs to this unlatched 7-bit port can be read by the CPU by
performing a read operation at address H’D’. A High input results in
a logic 1 while a Low input results in a logic 0. D7 will always read
as a logic 1. The pins of this port can also serve as auxiliary inputs
to certain portions of the DUART logic or modem and DMA control.
Four change-of-state detectors are provided which are associated
with inputs IP3, IP2, IP1 and IP0. A High-to-Low or Low-to-High
transition of these inputs, lasting longer than 25 - 50µs, will set the
corresponding bit in the input port change register. The bits are
cleared when the register is read by the CPU. Any change-of-state
can also be programmed to generate an interrupt to the CPU.
The transmitter converts the parallel data from the CPU to a serial
bit stream on the TxD output pin. It automatically sends a start bit
followed by the programmed number of data bits, an optional parity
bit, and the programmed number of stop bits. The least significant
bit is sent first. Following the transmission of the stop bits, if a new
character is not available in the TxFIFO, the TxD output remains
High and the TxEMT bit in the Status Register (SR) will be set to 1.
Transmission resumes and the TxEMT bit is cleared when the CPU
loads a new character into the TxFIFO.
The input port pulse detection circuitry uses a 38.4KHz sampling
clock derived from one of the baud rate generator taps. This results
in a sampling period of slightly more than 25µs (this assumes that
the clock input is 3.6864MHz). The detection circuitry, in order to
guarantee that a true change in level has occurred, requires two
successive samples at the new logic level be observed. As a
consequence, the minimum duration of the signal change is 25µs if
the transition occurs “coincident with the first sample pulse”. The
50µs time refers to the situation in which the change-of-state is “just
missed” and the first change-of-state is not detected until 25µs later.
All the IP pins have a small pull-up device that will source 1 to 4 mA
If the transmitter is disabled, it continues operating until the charac-
ter currently being transmitted and any characters in the TxFIFO
including parity and stop bit(s) have been completed.
Note the differences between the transmitter disable and the trans-
mitter reset: reset stops all transmission immediately, effectively
clears the TxFIFO and resets all status and Tx interrupt conditions.
Transmitter disable clears all Tx status and interrupts BUT allows
the Tx to complete the transmission of all data in the TxFIFO and in
the shift register. While the Tx is disabled the TxFIFO can not be
loaded with data.
of current from V . These pins do not require pull-up devices or
CC
V
CC
connections if they are not used.
Output Port
The output ports are controlled from five places: the OPCR register,
SOPR, ROPR, the MR registers and the command register (CR).
The OPCR register controls the source of the data for the output
ports OP2 through OP7. The data source for output ports OP0 and
OP1 is controlled by the MR and CR registers. Normally the data
source for the OP pins is from the OPR register. The OP pin drive
the inverted level (complement) of the OPR register. Example:
when the SOPR is used to set the OPR bit to a logical 1 then the
associated OP pin will drive a logical 0.
The transmitter can be forced to send a continuous Low condition by
issuing a send break command from the command register. The
transmitter output is returned to the normal high with a stop break
command.
The transmitter can be reset through a software command. If it is
reset, operation ceases immediately and the transmitter must be
enabled through the command register before resuming operation.
If the CTS option is enabled (MR2[4] = 1), the CTSN input at IP0 or
IP1 must be low in order for the character to be transmitted. The
transmitter will check the state of the CTS input at the beginning of
each character transmitted. If it is found to be High, the transmitter
will delay the transmission of any following characters until the CTS
has returned to the low state. CTS going high during the serializa-
tion of a character will not affect that character.
The content of the OPR register is controlled by the “Set Output Port
Bits Command” and the “Reset Output Bits Command”. These com-
mands are at E and F, respectively. When these commands are
used, action takes place only at the bit locations where ones exist.
For example, a one in bit location 5 of the data word used with the
“Set Output Port Bits” command will result in OPR(5) being set to
one. The OP5 would then be set to zero (VSS ). Similarly, a one in
bit position 5 of the data word associated with the “Reset Output
Ports Bits” command would set OPR(5) to zero and, hence, the pin
OP5 to a one (Vdd).
Transmitter “RS485 turnaround”
The transmitter can also control the RTSN outputs, OP0 or OP1 via
MR2[5]. When this mode of operation is set, the meaning of the
OP0 and OP1 signal will usually be ‘end of message’. See
description of the MR2[5] bit for more detail.
Please note that these pins drive both high and low. However when
they are programmed to represent interrupt type functions (such as
9
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
This feature may be used automatically “turnaround” a transceiver
when operating in a simplex system.
edges since the clock of the controller is not synchronous to
the X1 clock.
Transmitter Disable Note (W.R.T. Turnaround)
Receiver FIFO
When the TxEMT bit is set the sequence of instructions: enable
transmitter — load transmit holding register — disable transmitter
will often result in nothing being sent. In the condition of the TxEMT
being set do not issue the disable until the TxRDY bit goes active
again after the character is loaded to the TxFIFO. The data is not
sent if the time between the end of loading the transmit holding
register and the disable command is less that 3/16 bit time in the
16x mode. One bit time in the 1x mode.
The RxFIFO consists of a First-In-First-Out (FIFO) stack with a
capacity of eight characters. Data is loaded from the receive shift
register into the topmost empty position of the FIFO. The RxRDY bit
in the status register is set whenever one or more characters are
available to be read, and a FFULL status bit is set if all eight stack
positions are filled with data. Either of these bits can be selected to
cause an interrupt. A read of the RxFIFO outputs the data at the top
of the FIFO. After the read cycle, the data FIFO and its associated
status bits (see below) are ‘popped’ thus emptying a FIFO position
for new data.
This is sometimes the condition when the RS485 automatic “turn-
around” is enabled . It will also occur when only one character is to
be sent and it is desired to disable the transmitter immediately after
the character is loaded.
Receiver Status Bits
There are five (5) status bits that are evaluated with each byte (or
character) received: received break, framing error, parity error, over-
run error, and change of break. The first three are appended to
each byte and stored in the RxFIFO. The last two are not necessar-
ily related to the byte being received or a byte that is in the RxFIFO.
They are however developed by the receiver state machine.
In general, when it is desired to disable the transmitter before the
last character is sent AND the TxEMT bit is set in the status register
be sure the TxRDY bit is active immediately before issuing the
transmitter disable instruction. (TxEMT is always set if the transmit-
ter has underrun or has just been enabled), TxRDY sets at the end
of the “start bit” time. It is during the start bit that the data in the
transmit holding register is transferred to the transmit shift register.
The received break, framing error, parity error and overrun error (if
any) are strobed into the RxFIFO at the received character bound-
ary, before the RxRDY status bit is set. For character mode (see
below) status reporting the SR (Status Register) indicates the condi-
tion of these bits for the character that is the next to be read from the
FIFO
Transmitter Flow control
The transmitter may be controlled by the CTSN input when enabled
by MR2(4). The CTSN input would be connected to RTSN output of
the receiver to which it is communicating. See further description in
the MR 1 and MR2 register descriptions.
The ”received break” will always be associated with a zero byte in
the RxFIFO. It means that zero character was a break character
and not a zero data byte. The reception of a break condition will
always set the ”change of break” (see below) status bit in the Inter-
rupt Status Register (ISR). The Change of break condition is reset
by a reset error status command in the command register
Receiver
The SC26C92 is conditioned to receive data when enabled through
the command register. The receiver looks for a High-to-Low
(mark-to-space) transition of the start bit on the RxD input pin. If a
transition is detected, the state of the RxD pin is sampled each 16X
clock for 7-1/2 clocks (16X clock mode) or at the next rising edge of
the bit time clock (1X clock mode). If RxD is sampled High, the start
bit is invalid and the search for a valid start bit begins again. If RxD
is still Low, a valid start bit is assumed and the receiver continues to
sample the input at one bit time intervals at the theoretical center of
the bit, until the proper number of data bits and parity bit (if any)
have been assembled, and one stop bit has been detected. The
least significant bit is received first. The data is then transferred to
the Receive FIFO and the RxRDY bit in the SR is set to a 1. This
condition can be programmed to generate an interrupt at OP4 or
OP5 and INTRN. If the character length is less than 8 bits, the most
significant unused bits in the RxFIFO are set to zero.
Break Detection
If a break condition is detected (RxD is Low for the entire character
including the stop bit), a character consisting of all zeros will be
loaded into the RxFIFO and the received break bit in the SR is set to
1. The change of break bit also sets in the ISR The RxD input must
return to high for two (2) clock edges of the X1 crystal clock for the
receiver to recognize the end of the break condition and begin the
search for a start bit.
This will usually require a high time of one X1 clock period or 3
X1 edges since the clock of the controller is not synchronous
to the X1 clock.
Framing Error
After the stop bit is detected, the receiver will immediately look for
the next start bit. However, if a non-zero character was received
without a stop bit (framing error) and RxD remains Low for one half
of the bit period after the stop bit was sampled, then the receiver
operates as if a new start bit transition had been detected at that
point (one-half bit time after the stop bit was sampled).
A framing error occurs when a non–zero character whose parity bit
(if used) and stop; bit are zero. If RxD remains low for one half of
the bit period after the stop bit was sampled, then the receiver
operates as if the start bit of the next character had been detected.
The parity error indicates that the receiver–generated parity was not
the same as that sent by the transmitter.
The parity error, framing error, and overrun error (if any) are strobed
into the SR at the received character boundary, before the RxRDY
status bit is set. If a break condition is detected (RxD is Low for the
entire character including the stop bit), a character consisting of all
zeros will be loaded into the RxFIFO and the received break bit in
the SR is set to 1. The RxD input must return to high for two (2)
clock edges of the X1 crystal clock for the receiver to recognize the
end of the break condition and begin the search for a start bit. This
will usually require a high time of one X1 clock period or 3 X1
The framing, parity and received break status bits are reset when
the associated data byte is read from the RxFIFO since these “error”
conditions are attached to the byte that has the error
Overrun Error
The overrun error occurs when the RxFIFO is full, the receiver shift
register is full, and another start bit is detected. At this moment the
receiver has 9 valid characters and the start bit of the 10 has been
th
10
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
seen. At this point the host has approximately 6/16–bit time to read
a byte from the RxFIFO or the overrun condition will be set. The
10 character then overruns the 9 and the 11 the 10 and so on
until an open position in the RxFIFO is seen. (“seen” meaning at
least one byte was read from the RxFIFO.)
If the receiver is disabled, the FIFO characters can be read. Howev-
er, no additional characters can be received until the receiver is
enabled again. If the receiver is reset, the FIFO and all of the re-
ceiver status, and the corresponding output ports and interrupt are
reset. No additional characters can be received until the receiver is
enabled again.
th
th
th
th
Overrun is cleared by a use of the “error reset” command in the
command register.
Receiver Reset and Disable
Receiver disable stops the receiver immediately – data being
assembled in the receiver shift register is lost. Data and status in
the FIFO is preserved and may be read. A re-enable of the receiver
after a disable will cause the receiver to begin assembling
characters at the next start bit detected. A receiver reset will discard
the present shift register date, reset the receiver ready bit (RxRDY),
clear the status of the byte at the top of the FIFO and re-align the
FIFO read/write pointers.
The fundamental meaning of the overrun is that data has been lost.
Data in the RxFIFO remains valid. The receiver will begin placing
characters in the RxFIFO as soon as a position becomes vacant.
Note: Precaution must be taken when reading an overrun FIFO.
There will be 8 valid characters in the receiver FIFO. There will
be one character in the receiver shift register. However it will
NOT be known if more than one “over–running” character has
th
been received since the overrun bit was set. The 9 character
A ‘watchdog timer’ is associated with each receiver. Its interrupt is
enabled by MR0[7]. The purpose of this timer is to alert the control
processor that characters are in the RxFIFO which have not been
read and/or the data stream has stopped. This situation may occur
at the end of a transmission when the last few characters received
are not sufficient to cause an interrupt.
is received and read as valid but it will not be known how many
th
characters were lost between the two characters of the 8 and
th
9
reads of the RxFIFO
The ”Change of break” means that either a break has been detected
or that the break condition has been cleared. This bit is available in
the ISR. The break change bit being set in the ISR and the received
break bit being set in the SR will signal the beginning of a break. At
the termination of the break condition only the change of break in
the ISR will be set. After the break condition is detected the ter-
mination of the break will only be recognized when the RxD input
has returned to the high state for two successive edges of the 1x
clock; 1/2 to 1 bit time (see above).
This counter times out after 64 bit times. It is reset each time a
character is transferred from the receiver shift register to the
RxFIFO or a read of the RxFIFO is executed.
Receiver Timeout Mode
In addition to the watch dog timer described in the receiver section,
the counter/timer may be used for a similar function. Its
programmability, of course, allows much greater precision of time
out intervals.
The receiver is disabled by reset or via CR commands. A disabled
receiver will not interrupt the host CPU under any circumstance in
the normal mode of operation. If the receiver is in the multi–drop or
special mode, it will be partially enabled and thus may cause an
interrupt. Refer to section on Wake–Up and the register description
for MR1 for more information.
The timeout mode uses the received data stream to control the
counter. Each time a received character is transferred from the shift
register to the RxFIFO, the counter is restarted. If a new character
is not received before the counter reaches zero count, the counter
ready bit is set, and an interrupt can be generated. This mode can
be used to indicate when data has been left in the RxFIFO for more
than the programmed time limit. Otherwise, if the receiver has been
programmed to interrupt the CPU when the receive FIFO is full, and
the message ends before the FIFO is full, the CPU may not know
there is data left in the FIFO. The CTU and CTL value would be
programmed for just over one character time, so that the CPU would
be interrupted as soon as it has stopped receiving continuous data.
This mode can also be used to indicate when the serial line has
been marking for longer than the programmed time limit. In this
case, the CPU has read all of the characters from the FIFO, but the
last character received has started the count. If there is no new
data during the programmed time interval, the counter ready bit will
get set, and an interrupt can be generated.
Receiver Status Modes (block and character)
In addition to the data word, three status bits (parity error, framing
error, and received break) are also appended to each data character
in the FIFO (overrun is not). Status can be provided in two ways, as
programmed by the error mode control bit in the mode register. In
the ‘character’ mode, status is provided on a character–by–charac-
ter basis; the status applies only to the character at the top of the
FIFO. In the ‘block’ mode, the status provided in the SR for these
three bits is the logical–OR of the status for all characters coming to
the top of the FIFO since the last ‘reset error’ command was issued.
In either mode reading the SR does not affect the FIFO. The FIFO
is ‘popped’ only when the RxFIFO is read. Therefore the status
register should be read prior to reading the FIFO.
Receiver Flow Control
The timeout mode is enabled by writing the appropriate command to
the command register. Writing an ‘Ax’ to CRA or CRB will invoke
the timeout mode for that channel. Writing a ‘Cx’ to CRA or CRB will
disable the timeout mode. The timeout mode should only be used
by one channel at once, since it uses the C/T. If, however, the
timeout mode is enabled from both receivers, the timeout will occur
only when both receivers have stopped receiving data for the
timeout period. CTU and CTL must be loaded with a value greater
than the normal receive character period. The timeout mode
disables the regular START/STOP Counter commands and puts the
C/T into counter mode under the control of the received data stream.
Each time a received character is transferred from the shift register
to the RxFIFO, the C/T is stopped after 1 C/T clock, reloaded with
The receiver can control the deactivation of RTS. If programmed to
operate in this mode, the RTSN output will be negated when a valid
start bit was received and the FIFO is full. When a FIFO position
becomes available, the RTSN output will be re–asserted automati-
cally. This feature can be used to prevent an overrun, in the receiv-
er, by connecting the RTSN output to the CTSN input of the
transmitting device.
Note: The transmitter may also control the “RTSN” pin. When
under transmitter control the meaning is completely changed.
The meaning is the transmission has ended. This signal is
usually used to switch (turnaround) a bi–directional driver from
transmit to receive.
11
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
the value in CTU and CTL and then restarted on the next C/T clock.
If the C/T is allowed to end the count before a new character has
been received, the counter ready bit, ISR[3], will be set. If IMR[3] is
set, this will generate an interrupt. Receiving a character after the
C/T has timed out will clear the counter ready bit, ISR[3], and the
interrupt. Invoking the ‘Set Timeout Mode On’ command, CRx = ‘Ax’,
will also clear the counter ready bit and stop the counter until the
next character is received.
the MR registers) will return the OP pins pin to the control of the
OPR register.
Multidrop Mode (9-bit or Wake-Up)
The DUART is equipped with a wake up mode for multidrop
applications. This mode is selected by programming bits MR1A[4:3]
or MR1B[4:3] to ‘11’ for Channels A and B, respectively. In this
mode of operation, a ‘master’ station transmits an address character
followed by data characters for the addressed ‘slave’ station. The
slave stations, with receivers that are normally disabled, examine
the received data stream and ‘wakeup’ the CPU (by setting RxRDY)
only upon receipt of an address character. The CPU compares the
received address to its station address and enables the receiver if it
wishes to receive the subsequent data characters. Upon receipt of
another address character, the CPU may disable the receiver to
initiate the process again.
Time Out Mode Caution
When operating in the special time out mode, it is possible to
generate what appears to be a “false interrupt”, i.e., an interrupt
without a cause. This may result when a time-out interrupt occurs
and then, BEFORE the interrupt is serviced, another character is
received, i.e., the data stream has started again. (The interrupt
latency is longer than the pause in the data stream.) In this case,
when a new character has been receiver, the counter/timer will be
restarted by the receiver, thereby withdrawing its interrupt. If, at this
time, the interrupt service begins for the previously seen interrupt, a
read of the ISR will show the “Counter Ready” bit not set. If nothing
else is interrupting, this read of the ISR will return a x’00 character.
A transmitted character consists of a start bit, the programmed
number of data bits, and Address/Data (A/D) bit, and the
programmed number of stop bits. The polarity of the transmitted
A/D bit is selected by the CPU by programming bit
MR1A[2]/MR1B[2]. MR1A[2]/MR1B[2] = 0 transmits a zero in the
A/D bit position, which identifies the corresponding data bits as data
while MR1A[2]/MR1B[2] = 1 transmits a one in the A/D bit position,
which identifies the corresponding data bits as an address. The
CPU should program the mode register prior to loading the
corresponding data bits into the TxFIFO.
The CTS, RTS, CTS Enable Tx signals
CTS (Clear To Send) is usually meant to be a signal to the transmit-
ter meaning that it may transmit data to the receiver. The CTS input
is on pin IP0 or IP1 for the transmitter. The CTS signal is active low;
thus, it is called CTSN. RTS is usually meant to be a signal from the
receiver indicating that the receiver is ready to receive data. It is
also active low and is, thus, called RTSN. RTSN is on pin OP0 or
OP1. A receiver’s RTS output will usually be connected to the CTS
input of the associated transmitter. Therefore, one could say that
RTS and CTS are different ends of the same wire!
In this mode, the receiver continuously looks at the received data
stream, whether it is enabled or disabled. If disabled, it sets the
RxRDY status bit and loads the character into the RxFIFO if the
received A/D bit is a one (address tag), but discards the received
character if the received A/D bit is a zero (data tag). If enabled, all
received characters are transferred to the CPU via the RxFIFO. In
either case, the data bits are loaded into the data FIFO while the
A/D bit is loaded into the status FIFO position normally used for
parity error (SRA[5] or SRB[5]). Framing error, overrun error, and
break detect operate normally whether or not the receive is enabled.
MR2(4) is the bit that allows the transmitter to be controlled by the
CTS pin ( IP0 or IP1). When this bit is set to one AND the CTS
input is driven high, the transmitter will stop sending data at the end
of the present character being serialized. It is usually the RTS out-
put of the receiver that will be connected to the transmitter’s CTS
input. The receiver will set RTS high when the receiver FIFO is full
AND the start bit of the ninth character is sensed. Transmission
then stops with nine valid characters in the receiver. When MR2(4)
is set to one, CTSN must be at zero for the transmitter to operate. If
MR2(4) is set to zero, the IP0 or IP1 pin will have no effect on the
operation of the transmitter.
PROGRAMMING
The operation of the DUART is programmed by writing control words
into the appropriate registers. Operational feedback is provided via
status registers which can be read by the CPU. The addressing of
the registers is described in Table 1.
The contents of certain control registers are initialized to zero on
RESET. Care should be exercised if the contents of a register are
changed during operation, since certain changes may cause
operational problems.
MR1(7) is the bit that allows the receiver to control OP0 or OP1.
When OP0 or OP1 is controlled by the receiver, the meaning of that
pin will be RTS. However, a point of confusion arises in that these
pins may also be controlled by the transmitter. When the transmit-
ter is controlling them the meaning is not RTS at all. It is, rather, that
the transmitter has finished sending its last data byte.
For example, changing the number of bits per character while the
transmitter is active may cause the transmission of an incorrect
character. In general, the contents of the MR, the CSR, and the
OPCR should only be changed while the receiver(s) and
transmitter(s) are not enabled, and certain changes to the ACR
should only be made while the C/T is stopped.
Programming the OP0 or OP1 pin to be controlled by the receiver
and the transmitter at the same time is allowed, but would usually be
incompatible.
RTS can also be controlled by the commands 1000 and 1001 in the
command register. RTS is expressed at the OP0 or OP1 pin which
is still an output port. Therefore, the state of OP0 or OP1 should be
set low (either by commands of the CR register or by writing to the
SOPR or ROPR (Set or Reset Output Port Registers) for the receiv-
er to generate the proper RTS signal. The logic at the output is
basically a NAND of the bit in OPR(0) or OPR(1) register and the
RTS signal as generated by the receiver. When the RTS flow con-
trol is selected via the MR1(7) bit the state of the OPR(0) or OPR(1)
register is not changed. Terminating the use of “Flow Control” (via
Each channel has 3 mode registers (MR0, 1, 2) which control the
basic configuration of the channel. Access to these registers is
controlled by independent MR address pointers. These pointers are
set to 0 or 1 by MR control commands in the command register
“Miscellaneous Commands”. Each time the MR registers are
accessed the MR pointer increments, stopping at MR2. It remains
pointing to MR2 until set to 0 or 1 via the miscellaneous commands
of the command register. The pointer is set to 1 on reset for
compatibility with previous Philips Semiconductors UART software.
12
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
Mode, command, clock select, and status registers are duplicated
for each channel to provide total independent operation and control.
Refer to Table 2 for register bit descriptions. The reserved
registers at addresses H‘02’ and H‘0A’ should never be read during
normal operation since they are reserved for internal diagnostics.
Table 1. SC26C92 Register Addressing
A3
A2
A1
A0
READ (RDN = 0)
WRITE (WRN = 0)
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
Mode Register A (MR0A, MR1A, MR2A)
Status Register A (SRA)
Reserved
Rx Holding Register A (RxFIFOA)
Input Port Change Register (IPCR)
Interrupt Status Register (ISR)
Counter/Timer Upper Value (CTU)
Counter/Timer Lower Value (CTL)
Mode Register B (MR0B, MR1B, MR2B)
Status Register B (SRB)
Mode Register A (MR0A, MR1A, MR2A)
Clock Select Register A (CSRA)
Command Register A (CRA)
Tx Holding Register A (TxFIFOA)
Aux. Control Register (ACR)
Interrupt Mask Register (IMR)
C/T Upper Preset Value (CTPU)
C/T Lower Preset Value (CTPL)
Mode Register B (MR0B, MR1B, MR2B)
Clock Select Register B (CSRB)
Command Register B (CRB)
Tx Holding Register B (TxFIFOB)
User Defined Flag/Status Flag
Output Port Conf. Register (OPCR)
Set Output Port Bits Command (SOP12)
Reset Output Port Bits Command (ROP12)
Reserved
Rx Holding Register B (RxFIFOB)
User Defined Flag/Status Flag
Input Ports IP0 to IP6
Start Counter Command
Stop Counter Command
NOTE:
The three MR Registers are accessed via the MR Pointer and Commands 1xh and Bxh. (Where “x” represents receiver and transmitter enable/
disable control)
The following named registers are the same for Channels
A and B
These registers control the functions which service both
Channels
Mode Register
Status Register
Clock Select
MRnA
SRA
MRnB
SRB
R/W
Input Port Change Register
Auxiliary Control Register
Interrupt Status Register
Interrupt Mask Register
Counter Timer Upper Value
Counter Timer Lower Value
Counter Timer Preset Upper
Counter Timer Preset Lower
Input Port Register
IPCR
ACR
ISR
R
W
R
R only
W only
W only
R only
W only
CSRA
CSRB
Command Register
Receiver FIFO
Transmitter FIFO
CRA
CRB
IMR
W
R
CTU
RxFIFOA
TxFIFOA
RxFIFOB
TxFIFOB
CTL
R
CTPU
CTPL
IPR
W
W
R
Output Configuration Register
Set Output Port Bits
OPCR
SOPR
ROPR
W
W
W
Reset Output Port Bits
Table 2. Register Bit Formats
BIT 7
BIT 6
BIT 5 BIT 4
TxINT (1:0)
BIT 3
BIT 2
BIT 1
BIT 0
MR0A, MR0B
MR0B[3:0] are
reserved
Rx WATCH
DOG
RxINT BIT 2
DON’T
CARE
BAUD RATE TEST 2 BAUD RATE
EXTENDED II
EXTENDED 1
0 = Disable
1 = Enable
See Tables in
MR0 description
Set to 0
Returns 1 on read
0 = Normal
1 = Extend II
Set to 0
0 = Normal
1 = Extend
Returns F on read
BIT 7
BIT 6
BIT 5
ERROR
MODE
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
Rx CONTROLS
RTS
Rx INT
BIT 1
PARITY
TYPE
BITS PER
PARITY MODE
MR1A
MR1B
0x00
CHARACTER
00 = With Parity
01 = Force Parity
10 = No Parity
00 = 5
01 = 6
10 = 7
11 = 8
0 = No
1 = Yes
0 = RxRDY
1 = FFULL
0 = Char
1 = Block
0 = Even
1 = Odd
11 = Multidrop Mode
NOTE: *In block error mode, block error conditions must be cleared by using the error reset command (command 4x) or a receiver reset.
13
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
Tx CONTROLS
RTS
CTS
ENABLE Tx
CHANNEL MODE
STOP BIT LENGTH*
MR2A
MR2B
0x00
00 = Normal
0 = 0.563
1 = 0.625
2 = 0.688
3 = 0.750
4 = 0.813
5 = 0.875
6 = 0.938
7 = 1.000
8 = 1.563
9 = 1.625
A = 1.688
B = 1.750
C = 1.813
D = 1.875
E = 1.938
F = 2.000
01 = Auto-Echo
10 = Local loop
11 = Remote loop
0 = No
1 = Yes
0 = No
1 = Yes
NOTE: *Add 0.5 to values shown for 0 – 7 if channel is programmed for 5 bits/char.
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
CSRA
CSRB
0x01
RECEIVER CLOCK SELECT
TRANSMITTER CLOCK SELECT
See Text
See Text
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
CRA
CRB
0x01
MISCELLANEOUS COMMANDS*
DISABLE Tx
ENABLE Tx
DISABLE Rx
ENABLE Rx
0 = No
1 = Yes
0 = No
1 = Yes
0 = No
1 = Yes
0 = No
1 = Yes
See Text
NOTE: Access to the miscellaneous commands should be separated by 3 X1 clock edges. A disabled transmitter cannot be loaded.
14
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
Table 2. Register Bit Formats (Continued)
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
SRA
SRB
0x01
RECEIVED
BREAK*
FRAMING
ERROR*
PARITY
ERROR*
OVERRUN
ERROR
TxEMT
TxRDY
FFULL
RxRDY
0 = No
0 = No
0 = No
0 = No
0 = No
0 = No
0 = No
0 = No
1 = Yes
1 = Yes
1 = Yes
1 = Yes
1 = Yes
1 = Yes
1 = Yes
1 = Yes
NOTE: *These status bits are appended to the corresponding data character in the receive FIFO. A read of the status provides these bits
(7:5) from the top of the FIFO together with bits (4:0). These bits are cleared by a “reset error status” command. In character mode they are
discarded when the corresponding data character is read from the FIFO. In block error mode, block error conditions must be cleared by using
the error reset command (command 4x) or a receiver reset.
BIT 7
OP7
BIT 6
OP6
BIT 5
OP5
BIT 4
OP4
BIT 3
BIT 2
BIT 1
BIT 0
OP3
OP2
OPCR
0x0D
00 = OPR[3]
00 = OPR[2]
0 = OPR[5]
1 = RxRDY/
FFULLB
0 = OPR[4]
1 = RxRDY/
FFULLA
01 = C/T OUTPUT
10 = TxCB(1X)
11 = RxCB(1X)
01 = TxCA(16X)
10 = TxCA(1X)
11 = RxCA(1X)
0 = OPR[7]
1 = TxRDYB 1 = TxRDYA
0 = OPR[6]
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
SOPR
0x0E
See Note
See Note
See Note
See Note
See Note
See Note
See Note
See Note
NOTE: 0 = No Change; 1 = Set
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
ROPR
0x0F
See Note
See Note
See Note
See Note
See Note
See Note
See Note
See Note
NOTE: 0 = No Change; 1 = Reset
BIT 7
BIT 6
OP 6
BIT 5
OP 5
BIT 4
OP 4
BIT 3
OP 3
BIT 2
OP 2
BIT 1
OP 1
BIT 0
OP 0
OP 7
OPR
0 = Pin High
1 = Pin Low
0 = Pin High
1 = Pin Low
0 = Pin High 0 = Pin High 0 = Pin High
0 = Pin High
1 = Pin Low
0 = Pin High
1 = Pin Low
0 = Pin High
1 = Pin Low
1 = Pin Low
1 = Pin Low
1 = Pin Low
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
BRG SET
SELECT
COUNTER/TIMER
MODE AND SOURCE
DELTA
IP 3 INT
DELTA
IP 2 INT
DELTA
IP 1 INT
DELTA
IP 0 INT
ACR
0x04
0 = set 1
1 = set 2
0 = Off
1 = On
0 = Off
1 = On
0 = Off
1 = On
0 = Off
1 = On
See Table 6
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
IP 3
BIT 2
IP 2
BIT 1
IP 1
BIT 0
IP 0
DELTA
IP 3
DELTA
IP 2
DELTA
IP 1
DELTA
IP 0
IPCR
0x04
0 = No
1 = Yes
0 = No
1 = Yes
0 = No
1 = Yes
0 = No
1 = Yes
0 = Low
1 = High
0 = Low
1 = High
0 = Low
1 = High
0 = Low
1 = High
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
INPUT
PORT
CHANGE
DELTA
BREAK B
RxRDY/
FFULLB
COUNTER
READY
DELTA
BREAK A
RxRDY/
FFULLA
TxRDYB
TxRDYA
ISR
0x05
0 = No
1 = Yes
0 = No
1 = Yes
0 = No
1 = Yes
0 = No
1 = Yes
0 = No
1 = Yes
0 = No
1 = Yes
0 = No
1 = Yes
0 = No
1 = Yes
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
IN. PORT
CHANGE
INT
DELTA
BREAK B
INT
RxRDY/
FFULLB
INT
COUNTER
READY
INT
DELTA
BREAK A
INT
RxRDY/
FFULLA
INT
TxRDYB
INT
TxRDYA
INT
IMR
0x05
0 = Off
1 = On
0 = Off
1 = On
0 = Off
1 = On
0 = Off
1 = On
0 = Off
1 = On
0 = Off
1 = On
0 = Off
1 = On
0 = Off
1 = On
15
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
CTPU
0x06
C/T[15]
C/T[14]
C/T[13]
C/T[12]
C/T[11]
C/T[10]
C/T[9]
C/T[8]
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
CTPL
0x07
C/T[7]
C/T[6]
C/T[5]
C/T[4]
C/T[3]
C/T[2]
C/T[1]
C/T[0]
100 Extended mode II
Other combinations should not be used
REGISTER DESCRIPTIONS Mode Registers
MR0 is accessed by setting the MR pointer to 0 via the command
register command B.
Note: MR0[3:0] are not used in channel B and should be set to 0.
MR0A
MR1A
MR0[7] – This bit controls the receiver watch dog timer. 0 = disable,
1 = enable. When enabled, the watch dog timer will generate a
receiver interrupt if the receiver FIFO has not been accessed within
64 bit times of the receiver 1X clock. This is used to alert the control
processor that data is in the RxFIFO that has not been read. This
situation may occur when the byte count of the last part of a
message is not large enough to generate an interrupt.
MR1A is accessed when the Channel A MR pointer points to MR1.
The pointer is set to MR1 by RESET or by a ‘set pointer’ command
applied via CR command 1. After reading or writing MR1A, the
pointer will point to MR2A.
MR1A[7] – Channel A Receiver Request-to-Send Control
(Flow Control)
This bit controls the deactivation of the RTSAN output (OP0) by the
receiver. This output is normally asserted by setting OPR[0] and
negated by resetting OPR[0].
MR0[6] – Bit 2 of receiver FIFO interrupt level. This bit along with Bit
6 of MR1 sets the fill level of the 8 byte FIFO that generates the
receiver interrupt.
MR1A[7] = 1 causes RTSAN to be negated (OP0 is driven to a ‘1’
[V ]) upon receipt of a valid start bit if the Channel A FIFO is full.
CC
Table 3. Receiver FIFO Interrupt Fill Level
This is the beginning of the reception of the ninth byte. If the FIFO is
not read before the start of the tenth byte, an overrun condition will
occur and the tenth byte will be lost. However, the bit in OPR[0] is
not reset and RTSAN will be asserted again when an empty FIFO
position is available. This feature can be used for flow control to
prevent overrun in the receiver by using the RTSAN output signal to
control the CTSN input of the transmitting device.
MR0[6]
MR1[6]
Interrupt Condition
0
0
1 or more bytes in FIFO
(Rx RDY)
0
1
1
1
0
1
3 or more bytes in FIFO
6 or more bytes in FIFO
8 bytes in FIFO
(Rx FULL)
MR1[6] – Bit 1 of the receiver interrupt control. See description
For the receiver these bits control the number of FIFO positions
empty when the receiver will attempt to interrupt. After the reset the
receiver FIFO is empty. The default setting of these bits cause the
receiver to attempt to interrupt when it has one or more bytes in it.
under MR0[6].
MR1A[5] – Channel A Error Mode Select
This bit select the operating mode of the three FIFOed status bits
(FE, PE, received break) for Channel A. In the ‘character’ mode,
status is provided on a character-by-character basis; the status
applies only to the character at the top of the FIFO. In the ‘block’
mode, the status provided in the SR for these bits is the
accumulation (logical-OR) of the status for all characters coming to
the top of the FIFO since the last ‘reset error’ command for Channel
A was issued.
MR0[5:4] – Tx interrupt fill level.
Table 4. Transmitter FIFO Interrupt Fill Level
MR0[5]
MR0[4]
Interrupt Condition
0
0
8 bytes empty
(Tx EMPTY)
0
1
1
1
0
1
4 or more bytes empty
6 or more bytes empty
1 or more bytes empty
(Tx RDY)
MR1A[4:3| – Channel A Parity Mode Select
If ‘with parity’ or ‘force parity’ is selected a parity bit is added to the
transmitted character and the receiver performs a parity check on
incoming data MR1A[4:3] = 11 selects Channel A to operate in the
special multidrop mode described in the Operation section.
For the transmitter these bits control the number of FIFO positions
empty when the receiver will attempt to interrupt. After the reset the
transmit FIFO has 8 bytes empty. It will then attempt to interrupt as
soon as the transmitter is enabled. The default setting of the MR0
bits (00) condition the transmitter to attempt to interrupt only when it
is completely empty. As soon as one byte is loaded, it is no longer
empty and hence will withdraw its interrupt request.
MR1A[2] – Channel A Parity Type Select
This bit selects the parity type (odd or even) if the ‘with parity’ mode
is programmed by MR1A[4:3], and the polarity of the forced parity bit
if the ‘force parity’ mode is programmed. It has no effect if the ‘no
parity’ mode is programmed. In the special multidrop mode it
selects the polarity of the A/D bit.
MR0[3] – Not used. Should be set to 0.
MR1A[1:0] – Channel A Bits Per Character Select
This field selects the number of data bits per character to be
transmitted and received. The character length does not include the
start, parity, and stop bits.
MR0[2:0] – These bits are used to select one of the six baud rates
(see Table 5).
000 Normal mode
001 Extended mode I
16
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
8. A delay of one bit time is seen at the remote receiver.
MR2A – Channel A Mode Register 2
MR2A is accessed when the Channel A MR pointer points to MR2,
which occurs after any access to MR1A. Accesses to MR2A do not
change the pointer.
The user must exercise care when switching into and out of the
various modes. The selected mode will be activated immediately
upon mode selection, even if this occurs in the middle of a received
or transmitted character. Likewise, if a mode is deselected the
device will switch out of the mode immediately. An exception to this
is switching out of autoecho or remote loopback modes: if the
de-selection occurs just after the receiver has sampled the stop bit
(indicated in autoecho by assertion of RxRDY), and the transmitter
is enabled, the transmitter will remain in autoecho mode until the
entire stop has been re-transmitted.
MR2A[7:6] – Channel A Mode Select
Each channel of the DUART can operate in one of four modes.
MR2A[7:6] = 00 is the normal mode, with the transmitter and
receiver operating independently.
MR2A[7:6] = 01 places the channel in the automatic echo mode,
which automatically retransmits the received data. The following
conditions are true while in automatic echo mode:
1. Received data is reclocked and retransmitted on the TxDA out-
put.
MR2A[5] – Channel A Transmitter Request-to-Send Control
This bit controls the deactivation of the RTSAN output (OP0) by the
transmitter. This output is normally asserted by setting OPR[0] and
negated by resetting OPR[0].
2. The receive clock is used for the transmitter. Data is received on
the rising edge of the RxC1x clock and retransmitted on the next
fall of the RxC!x clock.
MR2A[5] = 1 caused OPR[0] to be reset automatically one bit time
after the characters in the Channel A transmit shift register and in
the TxFIFO, if any, are completely transmitted including the
programmed number of stop bits. If the transmitter is not enabled,
this feature can be used to automatically terminate the transmission
of a message as follows:
3. The receiver must be enabled, but the transmitter need not be
enabled.
4. The Channel A TxRDY and TxEMT status bits are inactive.
5. The received parity is checked, but is not regenerated for trans-
mission, i.e. transmitted parity bit is as received.
1. Program auto-reset mode: MR2A[5] = 1.
6. Character framing is checked, but the stop bits are retransmitted
as received.
2. Enable transmitter.
3. Asset RTSAN: OPR[0] = 1.
4. Send message.
7. A received break is echoed as received until the next valid start
bit is detected.
5. Disable transmitter after the last character is loaded into the
Channel A TxFIFO. Tx status and Tx interrupts will be disabled
at this time.
8. CPU to receiver communication continues normally, but the CPU
to transmitter link is disabled.
MR2A(7:6) = 10 selects the local loop back diagnostic mode. In this
mode:
1. The transmitter output is internally connected to the receiver
input.
6. The last character will be transmitted and OPR[0] will be reset
one bit time after the last stop bit, causing RTSAN to be negated.
In this mode, the meaning of “RTSAN” is that the transmission is
ended.
2. The transmit clock is used for the receiver.
3. The TxDA output is held High.
4. The RxDA input is ignored.
MR2A[4] – Channel A Clear-to-Send Control
If this bit is 0, CTSAN has no effect on the transmitter. If this bit is a
1, the transmitter checks the state of CTSAN (IPO) each time it is
ready to send a character. If IPO is asserted (Low), the character is
transmitted. If it is negated (High), the TxDA output remains in the
marking state and the transmission is delayed until CTSAN goes
low. Changes in CTSAN while a character is being transmitted do
not affect the transmission of that character..
5. The transmitter must be enabled, but the receiver need not be
enabled.
6. CPU to transmitter and receiver communications continue nor-
mally.
MR2A[3:0] – Channel A Stop Bit Length Select
MR2A[7:6] = 11 selects a remote loop back diagnostic mode. In this
This field programs the length of the stop bit appended to the
transmitted character. Stop bit lengths of 9/16 to 1 and 1-9/16 to 2
bits, in increments of 1/16 bit, can be programmed for character
lengths of 6, 7, and 8 bits. For a character lengths of 5 bits, 1-1/16
to 2 stop bits can be programmed in increments of 1/16 bit. In all
cases, the receiver only checks for a ‘mark’ condition at the center
of the stop bit position (one–half bit time after the last data bit, or
after the parity bit if enabled is sampled).
mode:
1. Received data is reclocked and retransmitted on the TxDA out-
put.
2. The receive clock is used for the transmitter.
3. Received data is not sent to the local CPU, and the error status
conditions are inactive.
4. The received parity is not checked and is not regenerated for
transmission, i.e., transmitted parity is as received.
If an external 1X clock is used for the transmitter, MR2A[3] = 0
selects one stop bit and MR2A[3] = 1 selects two stop bits to be
transmitted.
5. The receiver must be enabled.
6. Character framing is not checked, and the stop bits are retrans-
mitted as received.
MR0B – Channel B Mode Register 0
MR0B is accessed when the Channel B MR pointer points to MR1.
The pointer is set to MR0 by RESET or by a ‘set pointer’ command
7. A received break is echoed as received until the next valid start
bit is detected.
17
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
applied via CRB. After reading or writing MR0B, the pointer will
point to MR1B.
The receiver clock is always a 16X clock except for CSRB[7:4] = 1111.
CSRA[3:0] – Channel A Transmitter Clock Select
The bit definitions for this register are identical to MR0A, except that
all control actions apply to the Channel B receiver and transmitter
and the corresponding inputs and outputs. MR0B[3:0] are reserved.
This field selects the baud rate clock for the Channel A transmitter.
The field definition is as shown in Table 5, except as follows:
CSRA[3:0]
ACR[7] = 0
ACR[7] = 1
MR1B – Channel B Mode Register 1
1110
1111
IP3-16X
IP3-1X
IP3-16X
IP3-1X
MR1B is accessed when the Channel B MR pointer points to MR1.
The pointer is set to MR1 by RESET or by a ‘set pointer’ command
applied via CRB. After reading or writing MR1B, the pointer will
point to MR2B.
The transmitter clock is always a 16X clock except for CSR[3:0] = 1111.
CSRB – Channel B Clock Select Register
CSRB[7:4] – Channel B Receiver Clock Select
This field selects the baud rate clock for the Channel B receiver.
The field definition is as shown in Table 5, except as follows:
The bit definitions for this register are identical to MR1A, except that
all control actions apply to the Channel B receiver and transmitter
and the corresponding inputs and outputs.
CSRB[7:4]
ACR[7] = 0
ACR[7] = 1
MR2B – Channel B Mode Register 2
MR2B is accessed when the Channel B MR pointer points to MR2,
which occurs after any access to MR1B. Accesses to MR2B do not
change the pointer.
1110
1111
IP6-16X
IP6-1X
IP6-16X
IP6-1X
The receiver clock is always a 16X clock except for CSRB[7:4] = 1111.
The bit definitions for mode register are identical to the bit
definitions for MR2A, except that all control actions apply to the
Channel B receiver and transmitter and the corresponding inputs
and outputs.
CSRB[3:0] – Channel B Transmitter Clock Select
This field selects the baud rate clock for the Channel B transmitter.
The field definition is as shown in Table 5, except as follows:
CSRB[3:0]
ACR[7] = 0
ACR[7] = 1
CSRA – Channel A Clock Select Register
CSRA[7:4] – Channel A Receiver Clock Select
This field selects the baud rate clock for the Channel A receiver.
The field definition is shown in Table 5.
1110
1111
IP5-16X
IP5-1X
IP5-16X
IP5-1X
The transmitter clock is always a 16X clock except for
CSRB[3:0] = 1111.
CSRB[7:4]
ACR[7] = 0
ACR[7] = 1
1110
1111
IP4-16X
IP4-1X
IP4-16X
IP4-1X
Table 5. Baud Rate (Base on a 3.6864MHz crystal clock)
MR0[0] = 0 (Normal Mode)
MR0[0] = 1 (Extended Mode I)
MR0[2] = 1 (Extended Mode II)
CSRA[7:4]
ACR[7] = 0
ACR[7] = 1
ACR[7] = 0
ACR[7] = 1
ACR[7] = 0
ACR[7] = 1
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111
50
110
134.5
200
300
600
1,200
1,050
2,400
4,800
7,200
9,600
38.4K
Timer
IP4-16X
IP4-1X
75
110
134.5
150
300
600
1,200
2,000
2,400
4,800
1,800
9,600
19.2K
Timer
IP4-16X
IP4-1X
300
110
134.5
1200
1800
3600
450
110
134.5
900
1800
3600
7,200
2,000
14.4K
28.8K
1,800
57.6K
115.2K
Timer
IP4-16X
IP4-1X
4,800
880
7,200
880
1,076
19.2K
28.8K
57.6K
115.2K
1,050
57.6K
4,800
57.6K
9,600
38.4K
Timer
IP4-16X
IP4-1X
1,076
14.4K
28.8K
57.6K
115.2K
2,000
57.6K
4,800
14.4K
9,600
19.2K
Timer
IP4-16X
IP4-1X
7200
1,050
14.4K
28.8K
7,200
57.6K
230.4K
Timer
IP4-16X
IP4-1X
NOTE: The receiver clock is always a 16X clock except for CSRA[7:4] = 1111.
18
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
prior to placing the DUART into power down mode. This
command is in CRA only.
1111 Disable Power Down Mode. This command restarts the
oscillator. After invoking this command, wait for the oscillator
to start up before writing further commands to the CR. This
command is in CRA only. For maximum power reduction
CRA – Channel A Command Register
CRA is a register used to supply commands to Channel A. Multiple
commands can be specified in a single write to CRA as long as the
commands are non-conflicting, e.g., the ‘enable transmitter’ and
‘reset transmitter’ commands cannot be specified in a single
command word.
input pins should be at V or V
.
SS
DD
CRA[7:4] – Miscellaneous Commands
CRA[3] – Disable Channel A Transmitter
Execution of the commands in the upper four bits of this register
must be separated by 3 X1 clock edges. Other reads or writes
(including writes tot he lower four bits) may be inserted to achieve
this separation.
This command terminates transmitter operation and reset the
TxDRY and TxEMT status bits. However, if a character is being
transmitted or if a character is in the TxFIFO when the transmitter is
disabled, the transmission of the character(s) is completed before
assuming the inactive state.
CRA[7:4] – Command
0000 No command.
0001 Reset MR pointer. Causes the Channel A MR pointer to point
to MR1.
0010 Reset receiver. Resets the Channel A receiver as if a
hardware reset had been applied. The receiver is disabled
and the FIFO is flushed.
CRA[2] – Enable Channel A Transmitter
Enables operation of the Channel A transmitter. The TxRDY and
TxEMT status bits will be asserted if the transmitter is idle.
CRA[1] – Disable Channel A Receiver
This command terminates operation of the receiver immediately – a
character being received will be lost. The command has no effect
on the receiver status bits or any other control registers. If the
special multidrop mode is programmed, the receiver operates even
if it is disabled. See Operation section.
0011 Reset transmitter. Resets the Channel A transmitter as if a
hardware reset had been applied.
0100 Reset error status. Clears the Channel A Received Break, Parity
Error, and Overrun Error bits in the status register (SRA[7:4]).
Used in character mode to clear OE status (although RB, PE
and FE bits will also be cleared) and in block mode to clear all
error status after a block of data has been received.
0101 Reset Channel A break change interrupt. Causes the
Channel A break detect change bit in the interrupt status
register (ISR[2]) to be cleared to zero.
CRA[0] – Enable Channel A Receiver
Enables operation of the Channel A receiver. If not in the special
wakeup mode, this also forces the receiver into the search for
start-bit state.
0110 Start break. Forces the TxDA output Low (spacing). If the
transmitter is empty the start of the break condition will be
delayed up to two bit times. If the transmitter is active the
break begins when transmission of the character is
completed. If a character is in the TxFIFO, the start of the
break will be delayed until that character, or any other loaded
subsequently are transmitted. The transmitter must be
enabled for this command to be accepted.
CRB – Channel B Command Register
CRB is a register used to supply commands to Channel B. Multiple
commands can be specified in a single write to CRB as long as the
commands are non-conflicting, e.g., the ‘enable transmitter’ and
‘reset transmitter’ commands cannot be specified in a single
command word.
0111 Stop break. The TxDA line will go High (marking) within two
bit times. TxDA will remain High for one bit time before the
next character, if any, is transmitted.
1000 Assert RTSN. Causes the RTSN output to be asserted
(Low).
The bit definitions for this register are identical to the bit definitions
for CRA, with the exception of commands “Ex” and “Fx” which are
used for power downmode. These two commands are not used in
CRB. All other control actions that apply to CRA also apply to CRB.
1001 Negate RTSN. Causes the RTSN output to be negated
(High).
SRA – Channel A Status Register
SRA[7] – Channel A Received Break
1010 Set Timeout Mode On. The receiver in this channel will
restart the C/T as each receive character is transferred from
the shift register to the RxFIFO. The C/T is placed in the
counter mode, the START/STOP counter commands are
disabled, the counter is stopped, and the Counter Ready Bit,
ISR[3], is reset. (See also Watchdog timer description in the
receiver section.)
This bit indicates that an all zero character of the programmed
length has been received without a stop bit. Only a single FIFO
position is occupied when a break is received: further entries to the
FIFO are inhibited until the RxDA line returns to the marking state
for at least one-half a bit time two successive edges of the internal
or external 1X clock. This will usually require a high time of one
X1 clock period or 3 X1 edges since the clock of the controller
is not synchronous to the X1 clock.
1011 Set MR pointer to ‘0’
1100 Disable Timeout Mode. This command returns control of the
C/T to the regular START/STOP counter commands. It does
not stop the counter, or clear any pending interrupts. After
disabling the timeout mode, a ‘Stop Counter’ command
should be issued to force a reset of the ISR(3) bit.
1101 Not used.
When this bit is set, the Channel A ‘change in break’ bit in the ISR
(ISR[2]) is set. ISR[2] is also set when the end of the break
condition, as defined above, is detected.
The break detect circuitry can detect breaks that originate in the
middle of a received character. However, if a break begins in the
middle of a character, it must persist until at least the end of the next
character time in order for it to be detected.
1110 Power Down Mode On. In this mode, the DUART oscillator is
stopped and all functions requiring this clock are suspended.
The execution of commands other than disable power down
mode (1111) requires a X1/CLK. While in the power down
mode, do not issue any commands to the CR except the
disable power down mode command. The contents of all
registers will be saved while in this mode. . It is
recommended that the transmitter and receiver be disabled
This bit is reset by command 4 (0100) written to the command
register or by receiver reset.
19
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
SRA[6] – Channel A Framing Error
OPCR – Output Port Configuration Register
OPCR[7] – OP7 Output Select
This bit programs the OP7 output to provide one of the following:
This bit, when set, indicates that a stop bit was not detected (not a
logical 1) when the corresponding data character in the FIFO was
received. The stop bit check is made in the middle of the first stop
bit position.
0
The complement of OPR[7].
1
The Channel B transmitter interrupt output which is the comple-
ment of ISR[4]. When in this mode OP7 acts as an open- drain
output. Note that this output is not masked by the contents of the
IMR.
SRA[5] – Channel A Parity Error
This bit is set when the ‘with parity’ or ‘force parity’ mode is
programmed and the corresponding character in the FIFO was
received with incorrect parity.
OPCR[6] – OP6 Output Select
In the special multidrop mode the parity error bit stores the receive
A/D (Address/Data) bit.
This bit programs the OP6 output to provide one of the following:
0
The complement of OPR[6].
1
The Channel A transmitter interrupt output which is the comple-
ment of ISR[0]. When in this mode OP6 acts as an open- drain
output. Note that this output is not masked by the contents of the
IMR.
SRA[4] – Channel A Overrun Error
This bit, when set, indicates that one or more characters in the
received data stream have been lost. It is set upon receipt of a new
character when the FIFO is full and a character is already in the
receive shift register waiting for an empty FIFO position. When this
occurs, the character in the receive shift register (and its break
detect, parity error and framing error status, if any) is lost.
OPCR[5] – OP5 Output Select
This bit programs the OP5 output to provide one of the following:
0
The complement of OPR[5].
This bit is cleared by a ‘reset error status’ command.
1
The Channel B receiver interrupt output which is the complement
of ISR[5]. When in this mode OP5 acts as an open-drain output.
Note that this output is not masked by the contents of the IMR.
SRA[3] – Channel A Transmitter Empty (TxEMTA)
This bit will be set when the transmitter underruns, i.e., both the
TxEMT and TxRDY bits are set. This bit and TxRDY are set when
the transmitter is first enabled and at any time it is re-enabled after
either (a) reset, or (b) the transmitter has assumed the disabled
state. It is always set after transmission of the last stop bit of a
character if no character is in the THR awaiting transmission.
OPCR[4] – OP4 Output Select
This field programs the OP4 output to provide one of the following:
0
The complement of OPR[4].
1
The Channel A receiver interrupt output which is the complement
of ISR[1]. When in this mode OP4 acts as an open-drain output.
Note that this output is not masked by the contents of the IMR.
It is reset when the THR is loaded by the CPU, a pending
transmitter disable is executed, the transmitter is reset, or the
transmitter is disabled while in the underrun condition.
OPCR[3:2] – OP3 Output Select
This bit programs the OP3 output to provide one of the following:
00 The complement of OPR[3].
SRA[2] – Channel A Transmitter Ready (TxRDYA)
This bit, when set, indicates that the transmit FIFO is not full and
ready to be loaded with another character. This bit is cleared when
the transmit FIFO is loaded by the CPU and there are (after this
load) no more empty locations in the FIFO. It is set when a
character is transferred to the transmit shift register. TxRDYA is
reset when the transmitter is disabled and is set when the
transmitter is first enabled. Characters loaded to the TxFIFO while
this bit is 0 will be lost. This bit has different meaning from ISR[0].
01 The counter/timer output, in which case OP3 acts as an open-
drain output. In the timer mode, this output is a square wave at
the programmed frequency. In the counter mode, the output
remains High until terminal count is reached, at which time it
goes Low. The output returns to the High state when the counter
is stopped by a stop counter command. Note that this output is
not masked by the contents of the IMR.
10 The 1X clock for the Channel B transmitter, which is the clock
that shifts the transmitted data. If data is not being transmitted, a
free running 1X clock is output.
SRA[1] – Channel A FIFO Full (FFULLA)
This bit is set when a character is transferred from the receive shift
register to the receive FIFO and the transfer causes the FIFO to
become full, i.e., all eight FIFO positions are occupied. It is reset
when the CPU reads the receive FIFO. If a character is waiting in
the receive shift register because the FIFO is full, FFULLA will not
be reset when the CPU reads the receive FIFO. This bit has
different meaning from ISR1 when MR1 6 is programmed to a ‘1’.
11 The 1X clock for the Channel B receiver, which is the clock that
samples the received data. If data is not being received, a free
running 1X clock is output.
OPCR[1:0] – OP2 Output Select
This field programs the OP2 output to provide one of the following:
00 The complement of OPR[2].
SRA[0] – Channel A Receiver Ready (RxRDYA)
01 The 16X clock for the Channel A transmitter. This is the clock
selected by CSRA[3:0], and will be a 1X clock if CSRA[3:0] =
1111.
This bit indicates that a character has been received and is waiting
in the FIFO to be read by the CPU. It is set when the character is
transferred from the receive shift register to the FIFO and reset
when the CPU reads the receive FIFO, only if (after this read) there
are no more characters in the FIFO. The RxFIFO becomes empty.
10 The 1X clock for the Channel A transmitter, which is the clock
that shifts the transmitted data. If data is not being transmitted, a
free running 1X clock is output.
11 The 1X clock for the Channel A receiver, which is the clock that
samples the received data. If data is not being received, a free
running 1X clock is output.
SRB – Channel B Status Register
The bit definitions for this register are identical to the bit definitions
for SRA, except that all status applies to the Channel B receiver and
transmitter and the corresponding inputs and outputs.
20
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
SOPR – Set the Output Port Bits (OPR)
Table 7. ACR 6:4 Field Definition
ACR
6:4
SOPR[7:0] – Ones in the byte written to this register will cause the
corresponding bit positions in the OPR to set to 1. Zeros have no
effect.
MODE
CLOCK SOURCE
000
001
Counter
Counter
External (IP2)
TxCA – 1X clock of Channel A
transmitter
TxCB – 1X clock of Channel B
transmitter
Crystal or external clock
(X1/CLK) divided by 16
External (IP2)
External (IP2) divided by 16
Crystal or external clock
(X1/CLK)
ROPR – Reset Output Port Bits (OPR)
010
011
Counter
Counter
ROPR[7:0] – Ones in the byte written to the ROPR will cause the
corresponding bit positions in the OPR to set to 0. Zeros have no effect.
Table 6. Bit Rate Generator Characteristics
Crystal or Clock = 3.6864MHz
100
101
110
Timer (square wave)
Timer (square wave)
Timer (square wave)
NORMAL RATE
(BAUD)
ACTUAL 16X
CLOCK (kHz)
ERROR (%)
111
Timer (square wave)
Crystal or external clock
(X1/CLK) divided by 16
50
75
0.8
1.2
0
0
NOTE: The timer mode generates a squarewave.
110
134.5
150
200
300
1.759
2.153
2.4
3.2
4.8
-0.069
0.059
ACR[6:4] – Counter/Timer Mode And Clock Source Select
This field selects the operating mode of the counter/timer and its
clock source as shown in Table 7.
0
0
0
600
9.6
16.756
19.2
28.8
32.056
38.4
0
ACR[3:0] – IP3, IP2, IP1, IP0 Change-of-State Interrupt Enable
This field selects which bits of the input port change register (IPCR)
cause the input change bit in the interrupt status register (ISR[7]) to
be set. If a bit is in the ‘on’ state the setting of the corresponding bit
in the IPCR will also result in the setting of ISR[7], which results in
the generation of an interrupt output if IMR[7] = 1. If a bit is in the
‘off’ state, the setting of that bit in the IPCR has no effect on ISR[7].
1050
1200
1800
2000
2400
4800
7200
9600
14.4K
19.2K
28.8K
38.4K
57.6K
115.2K
230.4K
-0.260
0
0
0.175
0
0
0
0
0
0
0
0
0
0
0
76.8
115.2
153.6
230.4
307.2
460.8
614.4
921.6
1843.2K
3686.4K
IPCR – Input Port Change Register
IPCR[7:4] – IP3, IP2, IP1, IP0 Change-of-State
These bits are set when a change-of-state, as defined in the input
port section of this data sheet, occurs at the respective input pins.
They are cleared when the IPCR is read by the CPU. A read of the
IPCR also clears ISR[7], the input change bit in the interrupt status
register. The setting of these bits can be programmed to generate
an interrupt to the CPU.
NOTE: Duty cycle of 16X clock is 50% ± 1%.
IPCR[3:0] – IP3, IP2, IP1, IP0 Change-of-State
These bits provide the current state of the respective inputs. The
information is unlatched and reflects the state of the input pins at the
time the IPCR is read.
Asynchronous UART communications can tolerate frequency error
of 4.1% to 6.7% in a “clean” communications channel. The percent
of error changes as the character length changes. The above
percentages range from 5 bits not parity to 8 bits with parity and one
stop bit. The error with 8 bits no parity and one stop bit is 4.6%. If a
stop bit length of 9/16 is used, the error tolerance will approach 0
due to a variable error of up to 1/16 bit time in receiver clock phase
alignment to the start bit.
ISR – Interrupt Status Register
This register provides the status of all potential interrupt sources.
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’, the INTRN output will be asserted (Low). If
the corresponding bit in the IMR is a zero, the state of the bit in the
ISR has no effect on the INTRN output. Note that the IMR does not
mask the reading of the ISR – the true status will be provided
regardless of the contents of the IMR. The contents of this register
ACR – Auxiliary Control Register
ACR[7] – Baud Rate Generator Set Select
This bit selects one of two sets of baud rates to be generated by the
BRG (see Table 5).
are initialized to H‘00’ when the DUART is reset.
The selected set of rates is available for use by the Channel A and
B receivers and transmitters as described in CSRA and CSRB.
Baud rate generator characteristics are given in Table 6.
21
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
ISR[7] – Input Port Change Status
CTPU and CTPL – Counter/Timer Registers
This bit is a ‘1’ when a change-of-state has occurred at the IP0, IP1,
IP2, or IP3 inputs and that event has been selected to cause an
interrupt by the programming of ACR[3:0]. The bit is cleared when
the CPU reads the IPCR.
The CTPU and CTPL hold the eight MSBs and eight LSBs,
respectively, of the value to be used by the counter/timer in either
the counter or timer modes of operation. The minimum value which
may be loaded into the CTPU/CTPL registers is H‘0002’. Note that
these registers are write-only and cannot be read by the CPU.
ISR[6] – Channel B Change In Break
This bit, when set, indicates that the Channel B receiver has
detected the beginning or the end of a received break. It is reset
when the CPU issues a Channel B ‘reset break change interrupt’
command.
In the timer mode, the C/T generates a square wave whose period is
twice the value (in C/T clock periods) of the CTPU and CTPL. The
waveform so generated is often used for a data clock. The formula
for calculating the divisor n to load to the CTPU and CTPL for a
particular 1X data clock is shown below.
ISR[5] – RxB Interrupt
counter clock frequency
n +
This bit indicates that the channel B receiver is interrupting
according to the fill level programmed by the MR0 and MR1
registers. This bit has a different meaning than the receiver
ready/full bit in the status register.
16 x 2 x baud rate desired
Often this division will result in a non-integer number; 26.3, for
example. One can only program integer numbers in a digital divider.
Therefore, 26 would be chosen. This gives a baud rate error of
0.3/26.3 which is 1.14%; well within the ability asynchronous mode
of operation.
ISR[4] – TxB Interrupt
This bit indicates that the channel B transmitter is interrupting
according to the interrupt level programmed in the MR0[5:4] bits.
This bit has a different meaning than the Tx RDY bit in the status
register.
If the value in CTPU and CTPL is changed, the current half-period
will not be affected, but subsequent half periods will be. The C/T will
not be running until it receives an initial ‘Start Counter’ command
(read at address A3-A0 = 1110). After this, while in timer mode, the
C/T will run continuously. Receipt of a start counter command (read
with A3-A0 = 1110) causes the counter to terminate the current
timing cycle and to begin a new cycle using the values in CTPU and
CTPL.
ISR[3] – Counter Ready.
In the counter mode, this bit is set when the counter reaches
terminal count and is reset when the counter is stopped by a stop
counter command.
In the timer mode, this bit is set once each cycle of the generated
square wave (every other time that the counter/timer reaches zero
count). The bit is reset by a stop counter command. The command,
however, does not stop the counter/timer.
The counter ready status bit (ISR[3]) is set once each cycle of the
square wave. The bit is reset by a stop counter command (read
with A3-A0 = H’F’). The command however, does not stop the C/T.
The generated square wave is output on OP3 if it is programmed
to be the C/T output.
ISR[2] – Channel A Change in Break
This bit, when set, indicates that the Channel A receiver has
detected the beginning or the end of a received break. It is reset
when the CPU issues a Channel A ‘reset break change interrupt’
command.
In the counter mode, the value C/T loaded into CTPU and CTPL by
the CPU is counted down to 0.. Counting begins upon receipt of a
start counter command. Upon reaching terminal count H‘0000’, the
counter ready interrupt bit (ISR[3]) is set. The counter continues
counting past the terminal count until stopped by the CPU. If OP3 is
programmed to be the output of the C/T, the output remains High
until terminal count is reached, at which time it goes Low. The
output returns to the High state and ISR[3] is cleared when the
counter is stopped by a stop counter command. The CPU may
change the values of CTPU and CTPL at any time, but the new
count becomes effective only on the next start counter commands.
If new values have not been loaded, the previous count values are
preserved and used for the next count cycle
ISR[1] – RxA Interrupt
This bit indicates that the channel A receiver is interrupting
according to the fill level programmed by the MR0 and MR1
registers. This bit has a different meaning than the receiver
ready/full bit in the status register.
ISR[0] – TxA Interrupt
This bit indicates that the channel A transmitter is interrupting
according to the interrupt level programmed in the MR0[5:4] bits.
This bit has a different meaning than the Tx RDY bit in the status
register.
In the counter mode, the current value of the upper and lower 8 bits
of the counter (CTU, CTL) may be read by the CPU. It is
recommended that the counter be stopped when reading to prevent
potential problems which may occur if a carry from the lower 8 bits
to the upper 8 bits occurs between the times that both halves of the
counter are read. However, note that a subsequent start counter
command will cause the counter to begin a new count cycle using
the values in CTPU and CTPL.
IMR – Interrupt Mask Register
The programming of this register selects which bits in the ISR
causes an interrupt output. If a bit in the ISR is a ‘1’ and the
corresponding bit in the IMR is also a ‘1’ the INTRN output will be
asserted. If the corresponding bit in the IMR is a zero, the state of
the bit in the ISR has no effect on the INTRN output. Note that the
IMR does not mask the programmable interrupt outputs OP3-OP7 or
the reading of the ISR.
When the C/T clock divided by 16 is selected, the maximum divisor
becomes 1,048,575.
22
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
RESETN
t
RES
SD00133
Figure 3. Reset Timing
A0–A3
t
AS
t
AH
CEN
t
t
CH
CS
t
t
RWD
RW
RDN
t
t
DF
DD
NOT
VALID
D0–D7
(READ)
FLOAT
VALID
FLOAT
t
RWD
WDN
t
DS
t
DH
D0–D7
(WRITE)
VALID
SD00087
Figure 4. Bus Timing
RDN
t
t
PS
PH
IP0–IP6
(a) INPUT PINS
WRN
t
PD
OP0–OP7
OLD DATA
NEW DATA
(b) OUTPUT PINS
SD00135
Figure 5. Port Timing
23
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
V
M
WRN
t
IR
1
INTERRUPT
V
+0.5V
OL
OUTPUT
V
OL
V
M
RDN
t
IR
1
INTERRUPT
V
+0.5V
OL
OUTPUT
V
OL
NOTES:
1. INTRN or OP3-OP7 when used as interrupt outputs.
2. The test for open-drain outputs is intended to guarantee switching of the output transistor. Measurement of this response is referenced from the midpoint of the switching
signal, V , to a point 0.5V above V . This point represents noise margin that assures true switching has occurred. Beyond this level, the effects of external circuitry and
M
OL
test environment are pronounced and can greatly affect the resultant measurement.
SD00136
Figure 6. Interrupt Timing
t
t
t
t
+5V
CLK
CTC
Rx
NOTE:
RESISTOR REQUIRED
FOR TTL INPUT.
470Ω
Tx
X1/CLK
CTCLK
RxC
CLK
X1
TxC
t
t
t
t
CLK
CTC
Rx
X2*
*NOTE: X2 MUST BE LEFT OPEN.
SC26C92
Tx
X1
3pF
2pF
C1
50kΩ
to
100kΩ
C2
4pF
X2
TO UART
CIRCUIT
3.6864MHz
3pF
C1 = C2 24pF FOR C = 20pF
L
C1 and C2 should be chosen according to the crystal manufacturer’s specification.
C1 and C2 values will include any parasitic capacitance of the wiring and X1 X2 pins.
Gain at 3.6864MHz: 9 to 13 dB
Phase at 3.6864MHz: 272 to 276 degrees.
Package capacitance approximately 4pF.
SD00697
Figure 7. Clock Timing
24
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
1 BIT TIME
(1 OR 16 CLOCKS)
TxC
(INPUT)
t
TXD
TxD
t
TCS
TxC
(1X OUTPUT)
SD00138
Figure 8. Transmitter External Clocks
RxC
(1X INPUT)
t
t
RXH
RXS
RxD
SD00139
Figure 9. Receiver External Clock
TxD
D1
D2
D3
BREAK
D4
D6
TRANSMITTER
ENABLED
TxRDY
(SR2)
WRN
D1
D8
D9
START
BREAK
D10
STOP
BREAK
D11 WILL
NOT BE
D12
WRITTEN TO
THE TxFIFO
1
CTSN
(IP0)
2
RTSN
(OP0)
OPR(0) = 1
OPR(0) = 1
NOTES:
1. Timing shown for MR2(4) = 1.
2. Timing shown for MR2(5) = 1.
SD00155
Figure 10. Transmitter Timing
25
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
D1
D2
D8
D9
D10
D11
D12
D13
RxD
D12, D13 WILL BE LOST
DUE TO RECEIVER DISABLE.
RECEIVER
ENABLED
RxRDY
(SR0)
FFULL
(SR1)
RxRDY/
FFULL
2
(OP5)
RDN
STATUS DATA
STATUS DATA STATUS DATA STATUS DATA
D11 WILL BE LOST
DUE TO OVERRUN
D1
D2
D3
D10
OVERRUN
(SR4)
RESET BY COMMAND
1
RTS
(OP0)
OPR(0) = 1
NOTES:
1. Timing shown for MR1(7) = 1.
2. Shown for OPCR(4) = 1 and MR(6) = 0.
SD00156
Figure 11. Receiver Timing
MASTER STATION
TxD
BIT 9
BIT 9
BIT 9
1
ADD#1
1
D0
0
ADD#2
TRANSMITTER
ENABLED
TxRDY
(SR2)
WRN
MR1(4–3) = 11
MR1(2) = 1
ADD#1 MR1(2) = 0 D0
MR1(2) = 1 ADD#2
PERIPHERAL STATION
BIT 9
BIT 9
1
BIT 9
0
BIT 9
BIT 9
0
0
ADD#1
D0
ADD#2 1
RxD
RECEIVER
ENABLED
RxRDY
(SR0)
RDN/WRN
MR1(4–3) = 11
ADD#1
STATUS DATA
STATUS DATA
ADD#2
D0
SD00096
Figure 12. Wake-Up Mode
26
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter (DUART)
SC26C92
2.7K
+5V
INTRN
50pF
+5V
I = 2.4mA V
OL
OH
I = 400µA V
D0–D7
TxDA/B
OP0–OP7
150pF
SD00157
Figure 13. Test Conditions on Outputs
27
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter
(DUART)
SC26C92
DIP40: plastic dual in-line package; 40 leads (600 mil)
SOT129-1
28
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter
(DUART)
SC26C92
PLCC44: plastic leaded chip carrier; 44 leads
SOT187-2
29
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter
(DUART)
SC26C92
QFP44: plastic quad flat package; 44 leads (lead length 1.3 mm); body 10 x 10 x 1.75 mm
SOT307-2
30
2000 Jan 31
Philips Semiconductors
Product specification
Dual universal asynchronous receiver/transmitter
(DUART)
SC26C92
Data sheet status
[1]
Data sheet
status
Product
status
Definition
Objective
specification
Development
This data sheet contains the design target or goal specifications for product development.
Specification may change in any manner without notice.
Preliminary
specification
Qualification
This data sheet contains preliminary data, and supplementary data will be published at a later date.
Philips Semiconductors reserves the right to make changes at any time without notice in order to
improve design and supply the best possible product.
Product
specification
Production
This data sheet contains final specifications. Philips Semiconductors reserves the right to make
changes at any time without notice in order to improve design and supply the best possible product.
[1] Please consult the most recently issued datasheet before initiating or completing a design.
Definitions
Short-form specification — The data in a short-form specification is extracted from a full data sheet with the same type number and title. For
detailed information see the relevant data sheet or data handbook.
Limiting values definition — Limiting values given are in accordance with the Absolute Maximum Rating System (IEC 134). Stress above one
or more of the limiting values may cause permanent damage to the device. These are stress ratings only and operation of the device at these or
at any other conditions above those given in the Characteristics sections of the specification is not implied. Exposure to limiting values for extended
periods may affect device reliability.
Application information — Applications that are described herein for any of these products are for illustrative purposes only. Philips
Semiconductors make no representation or warranty that such applications will be suitable for the specified use without further testing or
modification.
Disclaimers
Life support — These products are not designed for use in life support appliances, devices or systems where malfunction of these products can
reasonably be expected to result in personal injury. Philips Semiconductors customers using or selling these products for use in such applications
do so at their own risk and agree to fully indemnify Philips Semiconductors for any damages resulting from such application.
Righttomakechanges—PhilipsSemiconductorsreservestherighttomakechanges, withoutnotice, intheproducts, includingcircuits,standard
cells, and/or software, described or contained herein in order to improve design and/or performance. Philips Semiconductors assumes no
responsibility or liability for the use of any of these products, conveys no license or title under any patent, copyright, or mask work right to these
products, and makes no representations or warranties that these products are free from patent, copyright, or mask work right infringement, unless
otherwise specified.
Philips Semiconductors
811 East Arques Avenue
P.O. Box 3409
Copyright Philips Electronics North America Corporation 2000
All rights reserved. Printed in U.S.A.
Sunnyvale, California 94088–3409
Telephone 800-234-7381
Date of release: 01-00
Document order number:
9397 750 06829
Philips
Semiconductors
it Q
Philips Semiconductors Home
ProducBuy
MySemContac
Product Information
catalogonline
Information as of 2003-04-22
My.Semiconductors.COM.
Your personal service from Use right mouse button to
Philips Semiconductors.
Please register now !
Stay informed
SC26C92; Dual
universal
asynchronous
receiver/transmitter
(DUART)
download datasheet
Download datasheet
Products
MultiMarket
Semiconductors
•
•
•
Product Selector
Catalog by
Function
General description
Features
Datasheet
Applications
Buy online
Parametrics
Support & tools
Similar products
Email/translate
Block diagram
Products & packages
Catalog by
System
•
General description
Cross-reference
Packages
•
•
The SC26C92 is a pin and function replacement for the SCC2692 and SCN2681 with added features and deeper
FIFOs. Its configuration on power up is that of the 2692. Its differences from the 2692 are: 8 character receiver,
8 character transmit FIFOs, watch dog timer for each receiver, mode register 0 is added, extended baud rate and
overall faster speeds, programmable receiver and transmitter interrupts. (The SCC2692 is not being
discontinued.)
End of Life
information
Distributors Go
Here!
•
•
Models
•
•
The Philips Semiconductors SC26C92 Dual Universal Asynchronous Receiver/Transmitter (DUART) is a single-
chip CMOS-LSI communications device that provides two full-duplex asynchronous receiver/transmitter
channels in a single package. It interfaces directly with microprocessors and may be used in a polled or interrupt
driven system and provides modem and DMA interface.
SoC solutions
The operating mode and data format of each channel can be programmed independently. Additionally, each
receiver and transmitter can select its operating speed as one of 27 fixed baud rates, a 16X clock derived from a
programmable counter/timer, or an external 1X or 16X clock. The baud rate generator and counter/timer can
operate directly from a crystal or from external clock inputs. The ability to independently program the operating
speed of the receiver and transmitter make the DUART particularly attractive for dual-speed channel
applications such as clustered terminal systems.
Each receiver and transmitter is buffered by eight character FIFOs to minimize the potential of receiver overrun,
transmitter underrun and to reduce interrupt overhead in interrupt driven systems. In addition, a flow control
capability is provided via RTS/CTS signaling to disable a remote transmitter when the receiver buffer is full.
Also provided on the SC26C92 are a multipurpose 7-bit input port and a multipurpose 8-bit output port. These
can be used as general purpose I/O ports or can be assigned specific functions (such as clock inputs or
status/interrupt outputs) under program control.
The SC26C92 is available in three package versions: 40-pin 0.6" wide DIP, a 44-pin PLCC and 44-pin plastic
quad flat pack (PQFP).
Features
●
●
●
Dual full-duplex independent asynchronous receiver/transmitters
8 character FIFOs for each receiver and transmitter
Programmable data format
❍
❍
❍
5 to 8 data bits plus parity
Odd, even, no parity or force parity
1, 1.5 or 2 stop bits programmable in 1/16-bit increments
●
●
16-bit programmable Counter/Timer
Programmable baud rate for each receiver and transmitter selectable from:
❍
❍
❍
❍
27 fixed rates: 50 to 230.4k baud
Other baud rates to 230.4k baud at 16X
Programmable user-defined rates derived from a programmable counter/timer
External 1X or 16X clock
●
●
●
●
Parity, framing, and overrun error detection
False start bit detection
Line break detection and generation
Programmable channel mode
❍
❍
❍
❍
❍
Normal (full-duplex)
Automatic echo
Local loopback
Remote loopback
Multidrop mode (also called ‘wake-up’ or ‘9-bit’)
●
●
●
Multi-function 7-bit input port
❍
❍
❍
Can serve as clock, modem, or control inputs
Change of state detection on four inputs
Inputs have typically >100k pull-up resistors
Multi-function 8-bit output port
❍
❍
❍
Individual bit set/reset capability
Outputs can be programmed to be status/interrupt signals
FIFO states for DMA and modem interface
Versatile interrupt system
❍
Single interrupt output with eight maskable interrupting conditions
❍
Output port can be configured to provide a total of up to six separate wire-ORable interrupt
outputs
❍
❍
Each FIFO can be programmed for four different interrupt levels
Watch dog timer for each receiver
●
●
●
●
●
●
●
●
●
Maximum data transfer rates: 1X - 1Mb/sec, 16X - 1Mb/sec
Automatic wake-up mode for multidrop applications
Start-end break interrupt/status
Detects break which originates in the middle of a character
On-chip crystal oscillator
Power down mode
Receiver timeout mode
Single +5V power supply
Powers up to emulate SCC2692
Datasheet
Type
number
Title
Publication
release date
Datasheet status Page
File Datasheet
count size
(kB)
SC26C92
Dual universal
asynchronous
receiver/transmitter
(DUART)
1/31/2000
Product
specification
31
221
Download
Parametrics
Type number Package Application
FUNCTION
Operating No. Receiver/Transmitter
temp.(Cel) of Type
Pins
SOT187-2
(PLCC44)
Data
Communication
SC26C92A1A
SC26C92A1B
SC26C92A1N
Receivers/Transmitters -40~85
Receivers/Transmitters -40~85
Receivers/Transmitters -40~85
44 Dual UARTs
44 Dual UARTs
40 Dual UARTs
SOT307-2
(QFP44)
Data
Communication
SOT129-1
(DIP40)
Data
Communication
Products, packages, availability and ordering
Type number North
American
type number
Ordering code Marking/Packing Package Device
Buy online
IC packing info
(12NC)
status
SOT187-
2
Standard Marking
* Tube Dry Pack
Full production
SC26C92A1A SC26C92A1A 9351 939 90512
(PLCC44)
SOT187-
2
Standard Marking
9351 939 90518 * Reel Dry Pack,
SMD, 13"
SC26C92A1A-
T
Full production
Full production
(PLCC44)
SOT187-
2
SC26C92A1A-
S
9351 939 90529
-
(PLCC44)
Standard Marking SOT307-
SC26C92A1
B
2
Full production
Full production
SC26C92A1B
9352 630 28528 * Reel Dry Pack,
SMD, 13",Turned
(QFP44)
Standard Marking SOT307-
SC26C92A1
B
2
9352 630 28551 * Tray Dry Pack,
Bakeable, Single
(QFP44)
Standard Marking
* Tray Dry Pack,
Bakeable,
Multiple
SOT307-
2
Full production
SC26C92A1B 9352 630 28557
(QFP44)
SOT129-
Standard Marking
* Tube
1 (DIP40) Full production
SC26C92A1N SC26C92A1N 9352 148 90112
SOT129-
SC26C92A1N-
9352 148 90129
S
1 (DIP40) Full production
SOT187-
Standard Marking
* Tube Dry Pack
2
Full production
SC26C92C1A SC26C92C1A 9350 515 10512
(PLCC44)
SOT187-
Standard Marking
9350 515 10518 * Reel Dry Pack,
SMD, 13"
SC26C92C1A-
T
2
Full production
(PLCC44)
SOT187-
SC26C92C1A-
S
2
Full production
9350 515 10529
(PLCC44)
Standard Marking SOT307-
SC26C92C1
B
2
Full production
Full production
SC26C92C1B
9352 487 90528 * Reel Dry Pack,
SMD, 13",Turned
(QFP44)
Standard Marking SOT307-
SC26C92C1
B
2
9352 487 90551 * Tray Dry Pack,
Bakeable, Single
(QFP44)
Standard Marking
* Tray Dry Pack,
Bakeable,
Multiple
SOT307-
2
Full production
SC26C92C1B 9352 487 90557
(QFP44)
SOT129-
SC26C92C1N-
9350 515 20129
S
1 (DIP40) Full production
SC26C92C1N
Standard Marking SOT129-
1 (DIP40) Full production
SC26C92C1N 9350 515 20602 * Tube
(Signetics)
Products in the above table are all in production. Some variants are discontinued; click here for information on
these variants.
Similar products
SC26C92 links to the similar products page containing an overview of products that are similar in function
or related to the type number(s) as listed on this page. The similar products page includes products from the
same catalog tree(s), relevant selection guides and products from the same functional category.
Support & tools
Philips Data Communication Industrial UART Product Line Chart(date 07-Jun-02)
Philips Innovative Uart Solutions(date 19-Dec-02)
Email/translate this product information
●
●
Email this product information.
Translate this product information page from English to:
Translate
French
The English language is the official language used at the semiconductors.philips.com website and webpages. All
translations on this website are created through the use of Google Language Tools and are provided for
convenience purposes only. No rights can be derived from any translation on this website.
About this Web Site
| Copyright © 2003 Koninklijke Philips N.V. All rights reserved. | Privacy Policy |
| Koninklijke Philips N.V. | Access to and use of this Web Site is subject to the following Terms of Use. |
相关型号:
SI9130DB
5- and 3.3-V Step-Down Synchronous ConvertersWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9135LG-T1
SMBus Multi-Output Power-Supply ControllerWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9135LG-T1-E3
SMBus Multi-Output Power-Supply ControllerWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9135_11
SMBus Multi-Output Power-Supply ControllerWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9136_11
Multi-Output Power-Supply ControllerWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9130CG-T1-E3
Pin-Programmable Dual Controller - Portable PCsWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9130LG-T1-E3
Pin-Programmable Dual Controller - Portable PCsWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9130_11
Pin-Programmable Dual Controller - Portable PCsWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9137
Multi-Output, Sequence Selectable Power-Supply Controller for Mobile ApplicationsWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9137DB
Multi-Output, Sequence Selectable Power-Supply Controller for Mobile ApplicationsWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9137LG
Multi-Output, Sequence Selectable Power-Supply Controller for Mobile ApplicationsWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9122E
500-kHz Half-Bridge DC/DC Controller with Integrated Secondary Synchronous Rectification DriversWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
©2020 ICPDF网 联系我们和版权申明