ST16C552
ST16C552A
DUAL UART WITH 16-BYTE FIFO AND
PARALLEL PRINTER PORT
December 2003
DESCRIPTION
The ST16C552/ST16C552A (552/552A) is a dual universal asynchronous receiver and transmitter (UART) with
an added bi-directional parallel port that is directly compatible with a CENTRONICS type printer. The parallel port
is designed such that the user can configure it as general purpose I/O interface, or for connection to other printer
devices. The 552/552A provides enhanced UART functions with 16 byte FIFO’s, a modem control interface, and
data rates up to 1.5Mbps. Onboard status registers provide the user with error indications and operational status.
The system interrupts and control may be tailored to meet user requirements. An internal loop-back capability
allows onboard diagnostics. A programmable baud rate generator is provided to select transmit and receive clock
rates from 50 bps to 1.5 Mbps. The 552/552A is available in a 68 pin PLCC package. The 552/552A is compatible
with the 16C450 and 16C550. The difference between the ST16C552 and ST16C552A is the logic state of the
printer port, INTP interrupt. The INTP interrupt is active high (logic 1) on the ST16C552 whereas INTP is active
low (logic 0) on the ST16C552A part when the interrupt latch mode is selected. The 552/552A is fabricated in an
advanced CMOS process with power down mode to reduce the power consumption. The 552A does not support
the power down mode.
FEATURES
-RXRDYA
PLCC Package
-RXRDYB
61
60
59
58
57
56
55
54
ERROR
63
-DSRB
BIDEN
-BUSY
SLCT
-CDB
-CSB
GND
GND
VCC
ACK
RXB
62
-RIB
CLK
Added features in device revision "F" and newer:
•
5V Tolerant Inputs
•
Pin to pin and functional compatible to ST16C452/
452PS, TL16C552
•
2.97 to 5.5 volt operation
•
Software compatible with INS8250, NS16C550
•
1.5 Mbps transmit/receive operation (24MHz)
•
16 byte transmit FIFO
•
16 byte receive FIFO with error flags
•
Independent transmit and receive control
•
Modem and printer status registers
•
UART port and printer port Bi-directional
•
Printer port direction set by single control bit or 8 bit
pattern (AA/55)
•
Modem control signals (-CTS, -RTS, -DSR, -DTR,
-RI, -CD)
•
Programmable character lengths (5, 6, 7, 8)
•
Even, odd, or no parity bit generation and detection
•
TTL compatible inputs, outputs
•
Power down mode
68
67
PE
66
65
TXB
-DTRB
-RTSB
-CTSB
D0
D1
D2
D3
D4
D5
D6
D7
-TXRDYA
VCC
-RTSA
-DTRA
TXA
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
64
9
8
7
6
5
4
3
2
1
INTB
INTP
-SLCTIN
INIT
-AUTOFDXT
-STROBE
GND
PD0
PD1
PD2
PD3
PD4
PD5
PD6
PD7
INTA
RDOUT
ST16C552CJ68
ST16C552ACJ68
53
52
51
50
49
48
47
46
45
44
-IOW
A2
A1
A0
-RESET
-CTSA
-CSA
-CSP
RXA
-RIA
-TXRDYB
-DSRA
-CDA
GND
VCC
-IOR
ORDERING INFORMATION
Part number
Pins
Package
Operating temperature
Device Status
ST16C552CJ68
ST16C552ACJ68
ST16C552IJ68
ST16C552AIJ68
68
68
68
68
PLCC
PLCC
PLCC
PLCC
0° C to + 70° C
0° C to + 70° C
-40° C to + 85° C
-40° C to + 85° C
Active
Active
Active
Active
Rev. 3.40
EXAR
Corporation, 48720 Kato Road, Fremont, CA 94538
•
(510) 668-7000
•
FAX (510) 668-7017
INTSEL
ST16C552/552A
Figure 1, Block Diagram
Data bus
&
Control Logic
D0-D7
-IOR
-IOW
-RESET
BIDEN
Transmit
FIFO
Registers
Transmit
Shift
Register
TX A,B
Receive
FIFO
Registers
Receive
Shift
Register
RX A,B
Inter Connect Bus Lines
&
Control signals
Printer
Data
Ports
PD0-PD7
-STROBE
INIT
-AUTOFDX
-SELCTIN
PE, SELECT
-BUSY, -ACK
ERROR
-DTR A,B
-RTS A,B
A0-A2
-CSA
-CSB
-CSP
Register
Select
Logic
Printer
Control
Logic
INT A,B
INTP
-RXRDY
-TXRDY
Clock
&
Baud Rate
Generator
Interrupt
Control
Logic
Modem
Control
Logic
-CTS A,B
-RI A,B
-CD A,B
-DSR A,B
Rev. 3.40
2
CLK
ST16C552/552A
SYMBOL DESCRIPTION
Symbol
A0
A1
A2
-ACK
Pin
35
34
33
68
Signal Type
I
I
I
I
Pin Description
Address-0 Select Bit - Internal registers address selection.
Address-1 Select Bit - Internal registers address selection.
Address-2 Select Bit - Internal registers address selection.
Acknowledge (with internal pull-up) - General purpose input
or line printer acknowledge (active low). a logic 0 from the
printer, indicates successful data transfer to the print buffer.
General purpose I/O (open drain, with internal pull-up) or
automatic line feed (open drain input with internal pull-up).
When this signal is low the printer should automatically line
feed after each line is printed.
Bi-Direction Enable - PD7-PD0 direction select. A logic 0
sets the parallel port for I/O Select Register Control. A logic
1 sets the parallel port for Control Register Bit-5 Control.
Busy (with internal pull-up) - General purpose input or line
printer busy (active high). can be used as an output from the
printer to indicate printer is not ready to accept data.
Clock Input. - An external clock must be connected to this
pin to clock the baud rate generator and internal circuitry
(see Programmable Baud Rate Generator). This input is not
5V tolerant.
Chip Select A - A logic 0 at this pin enables the serial
channel-A UART registers for CPU data transfers.
Chip Select B - A logic 0 at this pin enables the serial
channel-B UART registers for CPU data transfers.
Printer Port Chip Select - (active low). A logic 0 at this pin
enables the parallel printer port registers and/or PD7-PD0
for external CPU data transfers.
Data Bus (Bi-directional) - These pins are the eight bit, three
state data bus for transferring information to or from the
controlling CPU. D0 is the least significant bit and the first
data bit in a transmit or receive serial data stream.
-AutoFDXT
56
I/O
BIDEN
1
I
BUSY
66
I
CLK
4
I
-CSA
32
I
-CSB
3
I
-CSP
38
I
D0-D7
14-21
I/O
Rev. 3.40
3
ST16C552/552A
SYMBOL DESCRIPTION
Symbol
Pin
Signal Type
Pin Description
-ERROR
63
I
Error, Printer (with internal pull-up) - General purpose input
or line printer error. This pin may be connected to the active
low (logic 0) output of a printer to indicate an error condition.
Signal and Power Ground.
GND
2,7,54
27
57
Pwr
INIT
I/O
Initialize (open drain, with internal pull-up) - General pur-
pose I/O signal. This pin may be connected for initialization
service of a connected line printer. Generally when this
signal is a logic 0, any connected printer will be initialized.
Interrupt output A/B ( three state active high) - These pins
provide individual channel interrupts, INT A-B. INT A-B are
enabled when MCR bit-3 is set to a logic 1, interrupts are
enabled in the interrupt enable register (IER), and when an
interrupt condition exists. Interrupt conditions include: re-
ceiver errors, available receiver buffer data, transmit buffer
empty, or when a modem status flag is detected.
Printer Interrupt, - This pin can be used to signal the
interrupt status of a connected printer. This pin basically
tracks the -ACK input pin, When INTSEL is a logic 0 and
interrupts are enabled by bit-4 in the control register. A
latched mode can be selected by setting INTSEL to a logic
1. In this case the interrupt -INTP is generated normally but
does not return to the inactive state until the trailing edge of
the read cycle (-IOR pin). -INTP is three stated until CON
bit-4 is set to a logic 1. The difference between the
ST16C552 and ST16C552A is the output state of INTP.
INTP is active high (logic 1) on the ST16C552 whereas
INTP is active low (logic 0) on the ST16C552A part when the
interrupt latch mode is selected.
Interrupt Select mode - This pin selects the interrupt type for
the printer port (-INTP). When this pin is a logic 0, the
external -ACK signal state is generally followed, minus
some minor propagation delay. Making this pin a logic 1 or
connecting it to VCC will set the interrupt latched mode. In this
case the printer interrupt (-INTP) will not return to a logic 0 on
the 552 or a logic 1 on the 552A (552A is inverted), until the
INT A/B
45,60
O
-INTP
59
O
INTSEL
43
I
Rev. 3.40
4
ST16C552/552A
SYMBOL DESCRIPTION
Symbol
Pin
Signal Type
Pin Description
trailing edge of -IOR (end of the external CPU read cycle).
-IOR
37
I
Read strobe.- A logic 0 transition on this pin will place the
contents of an Internal register defined by address bits A0-
A2 for either UART channels A/B or A0-A1 for the printer
port, onto D0-D7 data bus for a read cycle by an external
CPU.
Write strobe.- A logic 0 transition on this pin will transfer the
data on the internal data bus (D0-D7), as defined by either
address bits A0-A2 for UART channels A/B or A0-A1 for the
printer port, into an internal register during a write cycle from
an external CPU.
Printer Data port (Bi-directional three state) - These pins are
the eight bit, three state data bus for transferring information
to or from an external device (usually a printer). D0 is the
least significant bit. PD7-PD0 are latched during a write
cycle (output mode).
Paper Empty - General purpose input or line printer paper
empty (Internal pull-up). This pin can be connected to
provide a printer out of paper indication.
Read Out (active high) - This pin goes to a logic 1 when the
external CPU is reading data from the 552/552A. This signal
can be used to enable/disable external transceivers or other
logic functions.
Master Reset (active low) - a logic 0 on this pin will reset the
internal registers and all the outputs. The UART transmitter
output and the receiver input will be disabled during reset
time. (See ST16C552/552A External Reset Conditions for
initialization details.)
Receive Ready A/B (active low). This function is associated
with the dual channel UARTs and provide the RX FIFO/
RHR status for individual receive channels (A-B). A logic 0
indicates there is receive data to read/unload, i.e., receive
ready status with one or more RX characters available in the
FIFO/RHR. This pin is a logic 1 when the FIFO/RHR is
empty or when the programmed trigger level has not been
-IOW
36
I
PD7-PD0
46-53
I/O
PE
67
I
RDOUT
44
O
-RESET
39
I
-RXRDY A/B
9,61
O
Rev. 3.40
5