The MAX14830 is an advanced quad universal asynchronous receiver-transmitter (UART), each UART having 128 words of receive and transmit first-in/first-out
(FIFO) and a high-speed serial peripheral interface
(SPIK) or I
baud-rate generators allow a high degree of flexibility in
baud-rate programming and reference clock selection.
Each of the four UARTs is selected by in-band SPI/I
addressing. Logic-level translation on the transceiver
and controller interfaces allows ease of interfacing to
microcontrollers, FPGAs, and transceivers that are powered by differing supply voltages.
Extensive features simplify transceiver control in halfduplex communication applications. The MAX14830
features the ability to synchronize the start of individual
UART’s transmission by SPI-based triggering. On-board
timers allow programming of delays between transmitters as well as clock generation on GPIOs.
The 128-word FIFOs have advanced FIFO control reducing host processor data flow management.
The MAX14830 is available in a 48-pin TQFN (7mm x
7mm) package and is specified to operate over the
extended -40NC to +85NC temperature range.
Applications
2
C controller interface. A PLL and fractional
Industrial Control Systems
Programmable Logic Controllers (PLC)
IO-Link Master Controllers
Automotive Infotainment Systems
Medical Systems
Point-of-Sales Systems
Airplane Communication Buses
2
C
Features
S SPI Up to 26MHz Clock Rate
S Fast-Mode Plus (Fm+) I
S 128-Word Transmit and Receive FIFOs Per UART
S 6Mbaud (max) Data Rate in 16x Sampling Mode
S 12/24Mbaud (max) Data Rate in 2x/4x Rate Modes
S Fractional Baud-Rate Generators, Predivider, and
2
C Interface Up to 1MHz
Phase-Locked Loop (PLL)
S Transmitter Synchronization Through SPI
Commands
S Four Timers Routed to GPIOs
S Automatic Hardware Flow Control Using RTS_
and CTS_ Outputs and Inputs
S Automatic Software Flow Control (XON/XOFF)
S Auto Transceiver Direction Control
S Programmable Setup and Hold Times for
Transceiver Control
S Auto Transmitter Disable
S Half-Duplex Echo Suppression
S Special Character Detection
S 9-Bit Multidrop Mode Address Detection and
Filtering
S SIR- and MIR-Compliant IrDA
S 16 Flexible GPIOs with 20mA Drive Capability
S +2.35V to +3.6V Supply Range
S Logic-Level Translation Down to 1.61V on
®
Encoder/Decoders
Controller and Transceiver Interfaces
S Small TQFN (7mm x 7mm) Package
Ordering Information
MAX14830
PARTTEMP RANGEPIN-PACKAGE
Typical Operating Circuits appear at end of data sheet.
SPI is a trademark of Motorola, Inc.
IrDA is a registered service mark of Infrared Data Association
Note 1: Package thermal resistances were obtained using the method described in JEDEC specification JESD51-7, using a four-
layer board. For detailed information on package thermal considerations, refer to www.maxim-ic.com/thermal-tutorial.
Stresses beyond those listed under “Absolute Maximum Ratings” may cause permanent damage to the device. These are stress ratings only, and functional
operation of the device at these or any other conditions beyond those indicated in the operational sections of the specifications is not implied. Exposure to absolute
maximum rating conditions for extended periods may affect device reliability.
(Note 1)
DC ELECTRICAL CHARACTERISTICS
(VA = +2.35V to +3.6V, VL = +1.71V to +3.6V, V
are at VA = +2.5V, VL = +1.8V, V
PARAMETERSYMBOLCONDITIONSMINTYPMAXUNITS
Digital Interface Supply VoltageV
Analog Supply VoltageV
UART Interface Logic Supply
Voltage
Logic Supply VoltageV
CURRENT CONSUMPTION
VA Supply CurrentI
VA Shutdown Supply CurrentI
VL Shutdown or Sleep Supply
Current
V
Shutdown Supply CurrentI
EXT
= +2.8V, TA = +25NC.) (Notes 2, 3)
EXT
L
A
V
EXT
18
A
ASHDN
I
L
EXT
= +1.71V to +3.6V, TA = -40NC to +85NC, unless otherwise noted. Typical values
= +1.71V to +3.6V, TA = -40NC to +85NC, unless otherwise noted. Typical values
EXT
14MHz
0.535MHz
(Note 5)96MHz
Quad Serial UART with 128-Word FIFOs
AC ELECTRICAL CHARACTERISTICS (continued)
(VA = +2.35V to +3.6V, VL = +1.71V to +3.6V, V
are at VA = +2.8V, VL = +1.8V, V
PARAMETERSYMBOLCONDITIONSMINTYPMAXUNITS
I2C BUS: TIMING CHARACTERISTICS (SEE FIGURE 1)
SCL Clock Frequencyf
Bus Free Time Between a STOP
and START Condition
Hold Time for START Condition
and Repeated START Condition
Low Period of the SCL Clockt
High Period of the SCL Clockt
Data Hold Timet
Data Setup Timet
Setup Time for Repeated START
Condition
Rise Time of SDA and SCL
Signals Receiving
Fall Time of SDA and SCL
Signals
Setup Time for STOP Conditiont
Capacitive Load for SDA and
SCL (Note 4)
= +2.5V, TA = +25NC.) (Notes 2, 3)
EXT
SCL
t
BUF
t
HD:STA
LOW
HIGH
HD:DAT
SU:DAT
t
SU:STA
t
R
t
F
SU:STO
C
b
= +1.71V to +3.6V, TA = -40NC to +85NC, unless otherwise noted. Typical values
EXT
Standard mode100
Fast mode plus1000
Standard mode4.7
Fast mode1.3
Fast mode plus0.5
Standard mode4.0
Fast mode0.6
Fast mode plus0.26
Standard mode4.7
Fast mode1.3
Fast mode plus0.5
Standard mode4.0
Fast mode0.6
Fast mode plus0.26
Standard mode00.9
Fast mode00.9
Fast mode plus0
Standard mode250
Fast mode plus50
Standard mode4.7
Fast mode0.6
Fast mode plus0.26
Standard mode (0.3 x VL to 0.7 x VL)
(Note 6)
Fast mode (0.3 x VL to 0.7 x VL) (Note 6)
Fast mode plus120
Standard mode (0.7 x VL to 0.3 x VL)
(Note 6)
Fast mode (0.7 x VL to 0.3 x VL) (Note 6)
Fast mode plus120
Standard mode4.7
Fast mode0.6
Fast mode plus0.26
Standard mode400
Fast mode plus550
20 +
0.1C
20 +
0.1C
20 +
0.1C
20 +
0.1C
MAX14830
kHzFast mode400
Fs
Fs
Fs
Fs
Fs
nsFast mode100
Fs
b
b
b
b
1000
300
300
300
ns
ns
Fs
pFFast mode400
11
Quad Serial UART with 128-Word FIFOs
AC ELECTRICAL CHARACTERISTICS (continued)
(VA = +2.35V to +3.6V, VL = +1.71V to +3.6V, V
are at VA = +2.8V, VL = +1.8V, V
PARAMETERSYMBOLCONDITIONSMINTYPMAXUNITS
SCL and SDA I/O CapacitanceC
Pulse Width of Spike
Suppressed
SPI BUS: TIMING CHARACTERISTICS (SEE FIGURE 2)
MAX14830
SCLK Clock Periodt
SCLK Pulse Width Hight
SCLK Pulse Width Lowt
CS Fall to SCLK Rise Time
MOSI Hold Timet
MOSI Setup Timet
Output Data Propagation Delay t
MISO Rise and Fall Timest
CS Hold Time
Note 2: All devices are production tested at TA = +25NC. Specifications over temperature are guaranteed by design.
Note 3: Currents entering the IC are negative, and currents exiting the IC are positive.
Note 4: When V18 is powered by an external voltage regulator, the external power supply must have current capability above or
equal to I18.
Note 5: Not production tested. Guaranteed by design.
Note 6: Cb is the total capacitance of either the clock or data line of the synchronous bus in pF.
= +2.5V, TA = +25NC.) (Notes 2, 3)
EXT
I/O
t
SP
CH+CL
CH
CL
t
CSS
DH
DS
DO
FT
t
CSH
= +1.71V to +3.6V, TA = -40NC to +85NC, unless otherwise noted. Typical values
EXT
(Note 5)10pF
50ns
38.4ns
16ns
16ns
0ns
3ns
5ns
20ns
10ns
30ns
12
Quad Serial UART with 128-Word FIFOs
Test Circuits/Timing Diagrams
MAX14830
START CONDITION
(S)
SDA
t
HD:STA
SCL
Figure 1. I2C Timing Diagram
CS
SCLK
t
CSS
t
HD:DAT
t
t
DS
t
SU:DAT
HIGH
t
DH
REPEATED START CONDITION
t
SU:STA
t
R
t
CL
t
F
t
CH
(Sr)
t
t
HD:STA
t
LOW
R
t
SU:STO
t
F
STOP CONDITION
t
CSH
(P)
t
BUF
START CONDITION
(S)
MOSI
MISO
Figure 2. SPI Timing Diagram
t
DO
13
Quad Serial UART with 128-Word FIFOs
04
04
Typical Operating Characteristics
(T
= +25°C, unless otherwise noted.)
A
GPIO_ OUTPUT HIGH VOLTAGE
vs. SOURCE CURRENT (PUSH-PULL)
70
60
MAX14830
50
40
(mA)
30
SOURCE
I
20
10
V
EXT
V
= 1.8V
EXT
0
= 2.5V
VOH (V)
GPIO_ OUTPUT LOW VOLTAGE
vs. SINK CURRENT (PUSH-PULL)
160
V
= 3.3V
EXT
321
MAX14830 toc01
TRANSMITTER SYNCHRONIZATION
200µs/div
MAX14830 toc03
140
120
100
(mA)
80
SINK
I
60
40
20
0
TX0
2V/div
138.46kbaud
TX1
2V/div
19.23kbaud
TX2
2V/div
9.615kbaud
TX3
2V/div
6.41kbaud
V
EXT
VOL (V)
= 1.8V
V
= 3.3V
EXT
V
= 2.5V
EXT
321
MAX14830 toc02
14
Quad Serial UART with 128-Word FIFOs
Pin Configuration
MAX14830
TOP VIEW
GPIO14
37
GPIO15
38
39
RTS3
40
CTS3
RX3
41
TX3
42
43
V
EXT
44
XOUT
45
XIN
AGND
46
V
47
A
48
V
18
*CONNECT EP TO AGND.
GPIO12
GPIO13
35
34 33 32 31 30 29 28 27
36
TX2
RX2
CTS2
MAX14830
+
2
345678910
1
SPI/I2C
LDOEN
SCLK/SCL
MISO/SDA
CS/A0
(7mm
RTS2
MOSI/A1
TQFN
×
GPIO11
IRQ
7mm)
GPIO10
RST
GPIO9
L
V
*EP
GPIO8
26
11
DGND
TX1
25
12
GPIO0
RX1
GPIO1
24
CTS1
23
RTS1
22
GPIO7
21
GPIO6
GPIO5
20
GPIO4
19
18
TX0
17
RX0
16
CTS0
15
RTS0
GPIO3
14
13
GPIO2
Pin Description
PINNAMEFUNCTION
1
2LDOEN
3MISO/SDA
4SCLK/SCL
5
6MOSI/A1
7
8
SPI/I2CSPI or Active-Low I2C Selector Input. Drive SPI/I2C high to enable SPI. Drive SPI/I2C low to enable I2C.
LDO Enable Input. Drive LDOEN high to enable the internal 1.8V LDO. Drive LDOEN low to disable the
internal LDO. When LDOEN is low, V
can be supplied by an external voltage source.
18
Serial-Data Output. When SPI/I2C is high, MISO/SDA functions as the MISO, SPI serial-data output.
When SPI/I2C is low, MISO/SDA functions as the SDA, I2C serial-data input/output.
Serial-Clock Input. When SPI/I2C is high, SCLK/SCL functions as the SCLK, SPI serial-clock input (up
to 26MHz). When SPI/I2C is low, SCLK/SCL functions as the SCL, I2C serial-clock input (up to 1MHz).
Active-Low Chip-Select and Address 0 Input. When SPI/I2C is high, CS/A0 functions as the CS, SPI
CS/A0
active-low chip-select input. When SPI/I2C is low, CS/A0 functions as the A0, I2C device address programming input. Connect CS/A0 to SDA, SCL, DGND, or VL when SPI/I2C is low.
Serial-Data and Address 1 Input. When SPI/I2C is high, MOSI/A1 functions as the MOSI, SPI serialdata input. When SPI/I2C is low, MOSI/A1 functions as the A1, I2C device address programming input.
Connect MOSI/A1 to SDA, SCL, DGND, or VL when SPI/I2C is low.
IRQActive-Low Interrupt Open-Drain Output. IRQ is asserted when an interrupt is pending.
RST
Active-Low Reset Input. Drive RST low to force all of the UARTs into hardware reset mode. In hardware
reset mode, the oscillator and the internal PLL are shut down and there is no clock activity.
15
Quad Serial UART with 128-Word FIFOs
Pin Description (continued)
PINNAMEFUNCTION
Digital Interface Logic-Level Supply. VL powers the internal logic-level translators for RST, IRQ, MOSI/
9V
10DGNDDigital Ground
MAX14830
11GPIO0
12GPIO1
13GPIO2
14GPIO3
15
16
17RX0Serial Receiving Data Input for UART0. RX0 has a weak pullup to V
18TX0Serial Transmitting Data Output for UART0
19GPIO4
RTS0
CTS0Active-Low Clear-to-Send Input for UART0. CTS0 is a flow control status input.
A1, CS/A0, SCLK/SCL, MISO/SDA, LDOEN, and SPI/I2C. Bypass VL with a 0.1FF ceramic capacitor to
L
DGND.
General-Purpose Input/Output 0. GPIO0 is user-programmable as an input or output (push-pull or open
drain) or external event interrupt source. GPIO0 has a weak pulldown resistor to ground. GPIO0 is the
reference clock output when bit 7 of the TxSynch register is set to 1 (see the UART Clock to GPIO section for more information).
General-Purpose Input/Output 1. GPIO1 is user-programmable as an input or output (push-pull or open
drain) or external event interrupt source. GPIO1 has a weak pulldown resistor to ground. GPIO1 is the
TIMER output when bit 7 of the TIMER2 register is set to 1.
General-Purpose Input/Output 2. GPIO2 is user-programmable as an input or output (push-pull or open
drain) or external event interrupt source. GPIO2 has a weak pulldown resistor to ground.
General-Purpose Input/Output 3. GPIO3 is user-programmable as an input or output (push-pull or open
drain) or external event interrupt source. GPIO3 has a weak pulldown resistor to ground.
Active-Low Request-to-Send Output for UART0. RTS0 can be set high or low by programming the LCR
register. RTS0 is the UART system clock/fractional divider output when bit 7 of the CLKSource register
is set to 1.
.
EXT
General-Purpose Input/Output 4. GPIO4 is user-programmable as an input or output (push-pull or open
drain) or external event interrupt source. GPIO4 has a weak pulldown resistor to ground. GPIO4 is the
reference clock output when bit 7 of the TxSynch register is set to 1 (see the UART Clock to GPIO section for more information).
General-Purpose Input/Output 5. GPIO5 is user-programmable as an input or output (push-pull or open
20GPIO5
21GPIO6
22GPIO7
23
24
25RX1Serial Receiving Data Input for UART1. RX1 has a weak pullup to V
26TX1Serial Transmitting Data Output for UART1
27GPIO8
16
RTS1
CTS1Active-Low Clear-to-Send Input for UART1. CTS1 is a flow control status input.
drain) or external event interrupt source. GPIO5 has a weak pulldown resistor to ground. GPIO5 is the
TIMER output when bit 7 of the TIMER2 register is set to 1.
General-Purpose Input/Output 6. GPIO6 is user-programmable as an input or output (push-pull or open
drain) or external event interrupt source. GPIO6 has a weak pulldown resistor to ground.
General-Purpose Input/Output 7. GPIO7 is user-programmable as an input or output (push-pull or open
drain) or external event interrupt source. GPIO7 has a weak pulldown resistor to ground.
Active-Low Request-to-Send Output for UART1. RTS1 can be set high or low by programming the LCR
register. RTS1 is the UART system clock/fractional divider output when bit 7 of the CLKSource register
is set to 1.
General-Purpose Input/Output 8. GPIO8 is user-programmable as an input or output (push-pull or open
drain) or external event interrupt source. GPIO8 has a weak pulldown resistor to ground. GPIO8 is the
reference clock output when bit 7 of the TxSynch register is set to 1 (see the UART Clock to GPIO section for more information).
EXT
.
Quad Serial UART with 128-Word FIFOs
Pin Description (continued)
PINNAMEFUNCTION
General-Purpose Input/Output 9. GPIO9 is user-programmable as an input or output (push-pull or open
28GPIO9
29GPIO10
30GPIO11
31
32
33RX2Serial Receiving Data Input for UART2. RX2 has a weak pullup to V
34TX2Serial Transmitting Data Output for UART2
35GPIO12
36GPIO13
37GPIO14
38GPIO15
39
40
41RX3Serial Receiving Data Input for UART3. RX3 has a weak pullup to V
42TX3Serial Transmitting Data Output for UART3
43V
44XOUT
45XIN
46AGNDAnalog Ground
47V
48V
—EPExposed Paddle. Connect EP to AGND. Do not use EP as the main AGND connection.
RTS2
CTS2Active-Low Clear-to-Send Input for UART2. CTS2 is a flow control status input.
RTS3
CTS3Active-Low Clear-to-Send Input for UART3. CTS3 is a flow control status input.
EXT
drain) or external event interrupt source. GPIO9 has a weak pulldown resistor to ground. GPIO9 is the
TIMER output when bit 7 of the TIMER2 register is set to 1.
General-Purpose Input/Output 10. GPIO10 is user-programmable as an input or output (push-pull or
open drain) or external event interrupt source. GPIO10 has a weak pulldown resistor to ground.
General-Purpose Input/Output 11. GPIO11 is user-programmable as an input or output (push-pull or
open drain) or external event interrupt source. GPIO11 has a weak pulldown resistor to ground.
Active-Low Request-to-Send Output for UART2. RTS2 can be set high or low by programming the LCR
register. RTS2 is the UART system clock/fractional divider output when bit 7 of the CLKSource register
is set to 1.
.
EXT
General-Purpose Input/Output 12. GPIO12 is user-programmable as an input or output (push-pull
or open drain) or external event interrupt source. GPIO12 has a weak pulldown resistor to ground.
GPIO12 is the reference clock output when bit 7 of the TxSynch register is set to 1 (see the UART Clock to GPIO section for more information).
General-Purpose Input/Output 13. GPIO13 is user-programmable as an input or output (push-pull
or open drain) or external event interrupt source. GPIO13 has a weak pulldown resistor to ground.
GPIO13 is the TIMER output if bit 7 of the TIMER2 register is set to 1.
General-Purpose Input/Output 14. GPIO14 is user-programmable as an input or output (push-pull or
open drain) or external event interrupt source. GPIO14 has a weak pulldown resistor to ground.
General-Purpose Input/Output 15. GPIO15 is user-programmable as an input or output (push-pull or
open drain) or external event interrupt source. GPIO15 has a weak pulldown resistor to ground.
Active-Low Request-to-Send Output for UART3. RTS3 can be set high or low by programming the LCR
register. RTS3 is the UART system clock/fractional divider output when bit 7 of the CLKSource register
is set to 1.
.
EXT
Transceiver Interface Level Supply. V
CTS_, and GPIO_. Bypass V
Crystal Output. When using an external crystal, connect one end of the crystal to XOUT and the other
to XIN. When using an external clock source, leave XOUT unconnected.
Crystal/Clock Input. When using an external crystal, connect one end of the crystal to XIN and the
other one to XOUT. When using an external clock source, drive XIN with the external clock.
Analog Supply. VA powers the PLL, and the internal LDO. Bypass VA with a 0.1FF ceramic capacitor to
A
AGND.
Internal 1.8V LDO Output and 1.8V Logic Supply Input. Bypass V18 with a 1FF ceramic capacitor to
18
DGND.
with a 0.1FF ceramic capacitor to DGND.
EXT
powers the internal logic-level translators for RX_, TX_, RTS_,
EXT
MAX14830
17
Quad Serial UART with 128-Word FIFOs
Detailed Description
The MAX14830 quad UART bridges an SPI/MICROWIRE™
or I2C microprocessor bus to an asynchronous interface
like RS-485, RS-232, or IrDA. The MAX14830 contains
advanced UARTs and baud-rate generators with a
synchronous serial-data interface and an interrupt generator. The MAX14830 is configured by writing an 8-bit
word to the configuration registers through either SPI or
I2C. These registers are organized by related function as
MAX14830
shown in the Register Map.
The host controller loads transmit data into the THR
register through SPI or I2C. This data is automatically
pushed into the Transmit FIFOs, formatted, and sent out
at TX_. The MAX14830 adds START and STOP and parity bits to the data and sends the data out at the selected
baud rates. The clock configuration registers determine
the baud rates, clock source selection, clock frequency
prescaling, and fractional baud-rate generators.
The MAX14830 receiver detects a START bit as a highto-low RX_ transition. An internal clock samples this data
at 16 times the data rate. The received data is automatically placed in the Receive FIFOs and can then be read
out of the RxFIFOs through the RHRs.
The MAX14830 features four identical UARTS. Text in
this data sheet references individual UART operation,
unless otherwise noted.
generates an interrupt when the Transmit FIFO level
is above the programmed trigger level. The host then
knows to throttle data writing to the Transmit FIFO.
The host can read out the number of words present in
each of the FIFOs at any time through the TxFIFOLvl and
RxFIFOLvl registers.
Transmitter Operation
Figure 3 shows the structure of the transmitter with the
TxFIFO. The Transmit FIFO can hold up to 128 words
that are written to it through the Transmit Hold Register
(THR).
The current number of words in the TxFIFO can be read
out through the TxFIFOLvl register. The Transmit FIFO
can be programmed to generate an interrupt when a
programmed number of words are present in the TxFIFO
through the FIFOTrgLvl register. The TxFIFO interrupt
trigger level is selectable through FIFOTrgLvl[3:0]. When
the Transmit FIFO fill level reaches the programmed trigger level, the ISR[4] interrupt is set.
The Transmit FIFO is empty when ISR[5]:TFifoEmptyInt
is set. ISR[5] turns high when the transmitter starts transmitting the last word in the TxFIFO. Hence the transmitter
is completely empty after ISR[5] is set with an additional delay equal to the length of a complete character
(including START, parity, and STOP bits).
Receive and Transmit FIFOs
The UART’s receiver and the transmitter each have a
128-word deep FIFO reducing the intervals that the
host processor needs to dedicate for high-speed, highvolume data transfer. As the data rates of the asynchronous RX_ and TX_ interfaces increase and get closer to
those of the host controller’s SPI/I2C data rates, UART
management and flow control can make up a significant
portion of the host’s activity. By increasing FIFO size, the
host is interrupted less often and can utilize SPI and I2C
burst data block transfers to/from the FIFOs.
FIFO trigger levels can generate interrupts to the host
controller, signaling that programmed FIFO fill levels
have been reached. The transmitter and receiver trigger levels are programmed through FIFOTrigLvl with a
resolution of eight FIFO locations. When a Receive FIFO
trigger is generated, the host knows that the Receive
FIFO has a defined number of words waiting to be read
out or that a known number of vacant FIFO locations are
available, ready to be filled. The Transmit FIFO trigger
MICROWIRE is a trademark of National Semiconductor Corp.
18
DATA FROM SPI/I2C
TRIGGER
ISR[4]
LEVEL
TxFIFOLvL
ISR[5]
Figure 3. Transmit FIFO Signals
EMPTY
CURRENT FILL LEVEL
INTERFACE
THR128
FIFO TRGLVL[3:0]
TRANSMIT
FIFO
TRANSMIT
SHIFT-REGISTER
3
2
1
TX_
Quad Serial UART with 128-Word FIFOs
MAX14830
RECEIVED DATA
MID BIT
SAMPLING
STARTD0D1D2D3D4D5D6D7PARITYSTOPSTOP
Figure 4. Receive Data Format
ISR[3]
ISR[6]
OVERRUN
TRIGGER
TIMEOUT
EMPTY
ERRORS
LSR[1]
CURRENT FILL LEVEL
I2C/SPI INTERFACE
LSR[0]
LSR[5:2]
Figure 5. Receive FIFO
LSB
RECEIVERRX_
WORDERROR 128
FIFOTrgLvl[7:4]
RECEIVE FIFO
RxFIFOLvl
RHR
RECEIVED
DATA
4
3
2
1
MSB
The contents of the TxFIFO and RxFIFOs are both
cleared through MODE2[1]: FIFORst.
To halt transmission, set MODE1[1]: TxDisabl to 1. After
MODE1[1] is set, the transmitter completes transmission
of the current character and then ceases transmission.
The TX_ output logic can be inverted through IrDA[5]:
TxInv. If not stated otherwise, all transmitter logic
described in this data sheet assumes that IrDA[5] is 0.
Receiver Operation
The receiver expects the format of the data at RX_ to be
as shown in Figure 4. The quiescent logic state is high
and the first bit (the START bit) is logic-low. The receiver
samples the data near the midbit instant (Figure 4). The
received words and their associated errors are deposited into the Receive FIFO. Errors and status information are stored for every received word (Figure 5). The
host reads the data out of the Receive FIFO through
the Receive Hold Register (RHR), oldest data first. The
status information of the most recently read word in the
RHR is located in the Line Status Register (LSR). After a
word is read out of the RHR, the LSR contains the status
information for that word.
The following three error conditions are determined for
each received word: parity error, framing error, and
noise on the line. Line noise is detected by checking the
consistency of the logic of the three samples (Figure 6).
RX_
BAUD
BLOCK
A
1
Figure 6. Midbit Sampling
ONE BIT PERIOD
23456789
1011
MAJORITY
CENTER
SAMPLER
1213141516
19
Quad Serial UART with 128-Word FIFOs
The receiver can be turned off through MODE1[0]:
RxDisabl. When this bit is set to 1, the MAX14830 turns
the receiver off immediately following the current word
and does not receive any further data.
The RX_ input logic can be inverted through IrDA[4]:
RxInv.
Line Noise Indication
When operating in standard or 2x (i.e. not 4x) rate mode,
the MAX14830 checks that the binary logic level of the
MAX14830
three samples per received bit are identical. If any of
the three samples have differing logic levels, then noise
on the transmission line has affected the received data
and is considered to be noisy. This noise indication is
reflected in the LSR[5]: RxNoise bit for each received
byte. Parity errors are another indication of noise, but are
not as sensitive.
Clocking and Baud-Rate Generation
The MAX14830 can be clocked by an external crystal,
or an external clock source. Figure 7 shows a simplified
diagram of the clocking circuitry. When the MAX14830
is clocked by a crystal, the STSInt[5]: ClockReady indicates when the clocks have settled and the baud-rate
generator is ready for stable operation.
Each UART baud rate can be individually programmed.
To achieve fast baud rate changes, first disable the
UART's clock by setting CLKDisabl to 1. Then change
the baud rate divisor and subsequently enable the clock
via CLKDisabl.
To check that the UART's clocking is programmed as
expected, route the baud rate clock to RTS using the
CLKtoRTS bit. The clock rate of this is 16x the baud rate
in standard operating mode and 8x the baud rate in 2x
rate mode. In 4x rate mode, the CLKOUT frequency is
4x the programmed baud rate. If the fractional portion of
the baud-rate generator is used, the clock is not regular
and exhibits jitter.
Crystal Oscillator
Set BRGConfig[6]: CLKDisabl to 0 and CLKSource[1]:
CrystalEn to 1 to enable and select the crystal oscillator. The on-chip crystal oscillator circuit has load
capacitances of 16pF (typ) integrated in both XIN and
XOUT. Connect an external crystal or ceramic oscillator
between XIN and XOUT.
External Clock Source
Connect an external clock source to XIN when not using
a crystal oscillator. Leave XOUT unconnected. Set
CLKSource[1]: CrystalEn to 0 to select external clocking.
PLL and Predivider
The internal predivider and PLL allow for a wide range of
external clock frequencies and baud rates. The PLL can
be configured to multiply the input clock rate by a factor
of 6, 48, 96, or 144 through the PLLConfig register. The
predivider, located between the input clock and the PLL,
allows division of the input clock by a factor between 1
and 63 by writing to PLLConfig[5:0]. See the PLLConfig
register description for more information.
XOUT
XIN
Figure 7. Clock Selection Diagram
20
CRYSTAL
OSCILLATOR
CrystalEn
DIVIDER
PLLEnClkDisabl[0...3]
PLLBypass
PLL
FRACTIONAL
BAUD RATE
GENERATOR 0
FRACTIONAL
BAUD RATE
GENERATOR 1
FRACTIONAL
BAUD RATE
GENERATOR 2
FRACTIONAL
BAUD RATE
GENERATOR 3
Quad Serial UART with 128-Word FIFOs
Fractional Baud-Rate Generators
The internal fractional baud-rate generator provides a
high degree of flexibility and high resolution in baudrate programming. The baud-rate generator has a 16-bit
integer divisor and a 4-bit word for the fractional divisor.
The fractional baud-rate generator can be used with the
external crystal or clock source.
The integer and fractional divisors are calculated through
the divisor, D:
f
D
=
where f
is the reference frequency input to the baud-
REF
rate generator and D is the ideal divisor. In 2x and 4x rate
modes, replace the divisor 16 by 8 or 4, respectively.
The integer divisor portion, DIV, of the divisor, D, is
obtained by truncating D:
DIV = TRUNC(D)
DIV can be a maximum of 16 bits wide and is programmed into the 2-byte-wide registers DIVMSB and
DIVLSB. The minimum allowed value for DIVLSB is 1.
The fractional portion of the divisor, FRACT, is a 4-bit
nibble, which is programmed into BRGConfig[3:0]. The
maximum value is 15, allowing the divisor to be programmed with a resolution of 0.0625. FRACT is calculated as:
FRACT = ROUND(16 x (D-DIV)).
The following is an example of calculating the divisor.
It is based on a required baud rate of 190kbaud and a
reference input frequency of 28.23MHz and default rate
mode.
The ideal divisor is calculated as:
D = 28,230,000 / (16 x 190,000) = 9.286
hence DIV = 9.
FRACT = ROUND(4.579) = 0x05
so that DIVMSB = 0x00, DIVLSB = 0x09, and
BRGConfig[3:0] = 0x05.
REF
16 BaudRate
×
The resulting actual baud rate can be calculated as:
f
BR
ACTUAL
For this example: D
D
ACTUAL
BR
= DIV + (FRACT/16) and
ACTUAL
= 28,230,000 / (16 x 9.3125) = 189,463.087
ACTUAL
REF
16 D=×
ACTUAL
= 9 + 5/16 = 9.313, where
baud.
Thus the baud rate is within 0.28% of the ideal rate.
2x and 4x Rate Modes
To support higher baud rates than possible with standard (16x sampling) operation, the MAX14830 offers 2x
and 4x rate modes. In this case, the reference clock rate
only needs to be either 8x or 4x of the baud rate, respectively. In 4x mode only, the bits are only sampled once,
at the midbit instant, instead of the usual three samples
to determine the logic value of the bits. This reduces the
tolerance to line noise on the received data. The 2x and
4x modes are selectable through BRGConfig[5:4]. Note
that IrDA encoding and decoding does not operate in 2x
and 4x modes.
When 2x rate mode is selected, the actual baud rate is
twice the rate programmed into the baud-rate generator. If 4x rate mode is enabled, the actual baud rate on
the line is quadruple that of the programmed baud rate
(Figure 8).
DIVLSB
DIVMSB
FRACT
f
REF
NOTE: IrDA DOES NOT WORK IN 2x AND 4x MODES.
Figure 8. 2x and 4x Baud Rates
FRACTIONAL
RATE
GENERATOR
BRGConfig[5:4]
RATE MODE
SELECTION
1 x BAUD RATE,
2 x BAUD RATE,
4 x BAUD RATE
MAX14830
21
Loading...
+ 47 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.