XR20M1172

Dual Channel I²C/SPI UART with 64-Byte FIFO
Order Now

Overview

Information Dual Channel I²C/SPI UART with 64-Byte FIFO
Data Bus Interface I2C/SPI
# of Channels 2
Max Data Rate 3.3V (Mbps) 16
Max Data Rate 2.5V (Mbps) 12.5
Max Data Rate 1.8V (Mbps) 8
Tx/Rx FIFO (Bytes) 64/64
FIFO Level Counters
Program. Trigger Levels
Auto Flow Control
Auto RS-485 Half-Duplex Control
Multidrop (9-bit) Mode
Fractional Baud Rate Generator
Power Down Mode
Integrated Level Shifters
5V Tolerant Inputs
Supply Voltage Range VCC (V) 1.62 to 3.63
No. of GPIOs 8;QFN-32, 8;TSSOP-28
Max UART/GPIO Input Voltage (V) VCC
Max UART/GPIO Output Voltage (V) VCC
Temperature Range (°C) -40 to 85
Package QFN-32, TSSOP-28
Show more

The XR20M1172¹ (M1172) is a high performance two channel universal asynchronous receiver and transmitter (UART) with 64 byte TX and RX FIFOs and a selectable I²C/SPI slave interface. The M1172 operates from 1.62 to 3.63 volts. It is software compatible to the SC16CIS762/752, but with additional features such as a programmable fractional baud rate generator, and 8X and 4X sampling rate that allows for a maximum baud rate of 16 Mbps at 3.3V. The standard features include 16 selectable TX and RX FIFO trigger levels, automatic hardware (RTS/CTS) and software (Xon/Xoff) flow control, and a complete modem interface. Onboard registers provide the user with operational status and data error flags. An internal loopback capability allows system diagnostics. The M1172 is available in the 32-pin QFN, 28-pin TSSOP and 20-pin TSSOP packages. The 32-pin QFN package has the EN485# and ENIR# pins to allow the UART to power-up in the Auto RS485 mode or the Infrared mode.

NOTE: ¹Covered by U.S. Patent #5,649,122


  • 1.62 to 3.6 Volt Operation
  • S/W compatible to Philips' SC16IS762/752
  • Selectable I²C/SPI Interface
  • Full-featured UART
    • Data rate of up to 16 Mbps at 3.3V
    • Data rate of up to 12.5 Mbps at 2.5V
    • Data rate of up to 8 Mbps at 1.8V
    • Fractional Baud Rate Generator
    • Transmit and Receive FIFOs of 64 bytes
    • 16 Selectable TX and RX FIFO Trigger Levels
    • Automatic Hardware (RTS/CTS) Flow Control
    • Automatic Software (Xon/Xoff) Flow Control
    • Halt and Resume Transmission Control
    • Automatic RS-485 Half-duplex Direction Control Output via RTS#
    • Wireless Infrared (IrDA 1.0 and 1.1) Encoder/ Decoder
    • Automatic sleep mode (< 15 uA at 3.3V)
    • General Purpose I/Os
    • Full modem interface
  • Crystal oscillator (up to 24MHz) or external clock (up to 64MHz) input
  • 32-QFN, 28-TSSOP, 20-TSSOP packages
  • Pb-Free, RoHS Compliant Versions Offered

  • Portable Appliances
  • Battery-Operated Devices
  • Cellular Data Devices
  • Factory Automation and Process Controls


Documentation & Design Tools

Type Title Version Date File Size
Data Sheets XR20M1172 Two Channel I2C/SPI UART with 64-byte FIFO 1.2.2 February 2022 3.2 MB
Application Notes DAN-190, MaxLinear UARTs in RS-485 Applications R01 July 2023 2.4 MB
Application Notes AN-204, UART Sleep Mode 1.0.0 June 2010 515.8 KB
Application Notes DAN-189, MaxLinear UARTs in GPS Applications 1.0.0 April 2008 139 KB
User Guides & Manuals XR20M1172 User's Manual 1.0.0 October 2007 120 KB
Software: GUIs & Utilities Sample Application Code 1.0.0 December 2009 2.4 KB
Product Flyers Dual Channel I2C/SPI UART 1.0.0 February 2007 258.7 KB
Schematics & Design Files I2C/SPI Eval Board Schematic 1.2.0 July 2007 82.9 KB
Product Brochures Interface Brochure November 2023 3.7 MB
Software: Drivers Linux 3.x.x 1.3.0 June 2022 23.7 KB
Simulation Models
Package Type Vcc Temp Mode Version File
TSSOP 1.8V Industrial I2C/SPI 1
TSSOP 2.5V Industrial I2C/SPI 1
TSSOP 3.3V Industrial I2C/SPI 1
QFN 1.8V Industrial I2C/SPI 1
QFN 2.5V Industrial I2C/SPI 1
QFN 3.3V Industrial I2C/SPI 1
Register for a myMxL account or Login to myMxL to view all Technical Documentation & Design Tools.

Quality & RoHS

Part Number RoHS | Exempt RoHS Halogen Free REACH TSCA MSL Rating / Peak Reflow Package
XR20M1172IL32-F N Y Y Y Y L2 / 260ᵒC QFN32 5x5 OPT3
XR20M1172IL32TR-F N Y Y Y Y L2 / 260ᵒC QFN32 5x5 OPT3
XR20M1172IG28-F N Y Y Y Y L1 / 260ᵒC TSSOP28
XR20M1172IG28TR-F N Y Y Y Y L1 / 260ᵒC TSSOP28

Click on the links above to download the Certificate of Non-Use of Hazardous Substances.

Additional Quality Documentation may be available, please Contact Support.

Parts & Purchasing

Part Number Pkg Code Min Temp Max Temp Status Suggested Replacement Buy Now Order Samples PDN
XR20M1172IG28 TSSOP28 -40 85 OBS XR20M1172IG28-F
XR20M1172IG28-F TSSOP28 -40 85 Active Order
XR20M1172IG28TR-F TSSOP28 -40 85 Active Order
XR20M1172IL32-F QFN32 5x5 OPT3 -40 85 Active Order
XR20M1172IL32TR-F QFN32 5x5 OPT3 -40 85 Active Order
XR20M1172G28-0A-EB Board Active
XR20M1172G28-0B-EB Board Active
Show obsolete parts
Part Status Legend
Active - the part is released for sale, standard product.
EOL (End of Life) - the part is no longer being manufactured, there may or may not be inventory still in stock.
CF (Contact Factory) - the part is still active but customers should check with the factory for availability. Longer lead-times may apply.
PRE (Pre-introduction) - the part has not been introduced or the part number is an early version available for sample only.
OBS (Obsolete) - the part is no longer being manufactured and may not be ordered.
NRND (Not Recommended for New Designs) - the part is not recommended for new designs.

Packaging

Pkg Code Details Quantities Dimensions PDF
TSSOP28
  • JEDEC Reference: MO-153
  • MSL Pb-Free: L1 @ 260ºC
  • MSL SnPb Eutectic: n/a
  • ThetaJA: 76ºC/W
  • Bulk Pack Style: Tube
  • Quantity per Bulk Pack: 50
  • Quantity per Reel: 2500
  • Quantity per Tube: 50
  • Quantity per Tray: n/a
  • Reel Size (Dia. x Width x Pitch): 330 x 16 x 8
  • Tape & Reel Unit Orientation: Quadrant 1
  • Dimensions: mm
  • Length: 9.70
  • Width: 4.40
  • Thickness: 1.2
  • Lead Pitch: 0.65
QFN32 5x5 OPT3
  • JEDEC Reference:
  • MSL Pb-Free: L2 @ 260ºC
  • MSL SnPb Eutectic:
  • ThetaJA: 30
  • Bulk Pack Style: Tray
  • Quantity per Bulk Pack: 490
  • Quantity per Reel: 3000
  • Quantity per Tube: n/a
  • Quantity per Tray: 490
  • Reel Size (Dia. x Width x Pitch): 330 x 12 x 8
  • Tape & Reel Unit Orientation: Quadrant 1
  • Dimensions: mm
  • Length: 5
  • Width: 5
  • Thickness: 1.00
  • Lead Pitch: 0.5

Notifications

Distribution Date Description File
05/10/2017 Qualification of alternate assembly subcon, JCET.
02/23/2017 Qualification of alternate assembly subcon, ANST, China.
01/27/2017 Qualification of alternate assembly subcon, ANST, China.
01/05/2017 Addition of an alternate qualified location, ANST, China.
04/02/2014 Qualified UTAC Thailand for assembly using copper wire or gold wire bonding assembly, in addition to the current qualified gold wire bonding assembly sites, Unisem Batam and UTAC China. Material change and alternate assembly site.
10/18/2013 In the datasheet, added clarification that the part is specified in FIFO-enabled mode. Datasheet change.
07/27/2012 Datasheet change. Product recharacterization.
04/11/2011 Product Discontinuation Notice In support of “green” initiatives, the listed leaded part numbers will be discontinued by Exar.
06/26/2009 Elimination of the back (bottom) mark and addition of the lot number to the top mark. To eliminate duplication and to reduce assembly cycle times.

FAQs & Support

Search our list of FAQs for answers to common technical questions.
For material content, environmental, quality and reliability questions review the Quality tab or visit our Quality page.
For ordering information and general customer service visit our Contact Us page.

Submit a Technical Support Question As a New Question

For some UARTs, Microsoft certified drivers are available for Windows Operating System and can be downloaded via Windows Update. These drivers and others, including for Linux and other Operating Systems can be found by visiting https://www.exar.com/design-tools/software-drivers Please note Software Driver Use Terms.

 

 
You can also get to this link by going to the exar.com website, clicking on Support (in black bar near top of page), then click on Design Tools, then under Evaluation Hardware and Software (towards right of page) click on Software Drivers.
 
 

Click on the version link under Driver Version of the desired type of UART, part number and operating system. A zip file is downloaded which contains a ReadMe file with instructions.

Links to datasheets and product family pages are in the software driver table for easy reference. 

Typically, this device will be used in an application with a microcontroller that has either an SPI or I2C interface. There should already be some sample code for communicating with a device on the I2C or SPI bus. The microcontroller will just need to provide the appropriate address or CS# to communicate with the I2C/SPI UART.

There is a pin to select between the I2C and the SPI mode. The pin is connected to VCC to select the I2C mode and connected to GND to select the SPI mode.

There is a pin to select between the I2C and the SPI mode. The pin is connected to VCC to select the I2C mode and connected to GND to select the SPI mode.

By default, the GPIOs are in the input state so they must be connected to VCC or GND, or they must be set as outputs after power-up. If they are set as outputs after power-up, then there will be extra current as the GPIOs are floating.

Our evaluation boards have the UART, a transceiver (RS-232, RS-485/422 or IR), a connector for the transceiver, and some test points for either the I2C or the SPI signals to interface directly with a microcontroller with an I2C or an SPI interface.

LSR bit-6 is a superset of LSR bit-5. The transmitter consists of a TX FIFO (or THR only when FIFOs are not enabled) and a Transmit Shift Register (TSR). When LSR bit-5 is set, it indicates that the TX FIFO (or THR) is empty, however there may be data in the TSR. When LSR bit-6 is set, it indicates that the transmitter (TX FIFO + TSR) is completely empty.

You can tell by reading LSR bit-5 or bit-6. If they are '0', then the transmit interrupt was generated by the trigger level. If they are '1', then the transmit interrupt was generated by the TX FIFO becoming empty. For enhanced UARTs, you can just read the FIFO level counters.

An RX Data Ready interrupt is generated when the number of bytes in the RX FIFO has reached the RX trigger level. An RX Data Timeout interrupt is generated when the RX input has been idle for 4 character + 12 bits time.

For some UARTs, the RX Data Timeout interrupt has a higher priority and in others, the RX Data Ready interrupt has a higher priority. See the interrupt priority section of the datasheet.

The UART requires a clock and a valid baud rate in order to transmit and receive data. Check that there is a clock signal on the XTAL1 input pin. Also, valid divisors need to be written into the DLL and DLM registers. Most UARTs have random (invalid) values upon power-up.

For most UARTs, the interrupt is generated when the data is ready to be read from the RX FIFO. The are some UARTs that generate the interrupt when the character with the error is received. There are some UARTs that have a register bit to select whether the LSR interrupt is generated immediately or delayed until it is ready to be read.

The UART will enter the sleep mode if the following conditions have been satisfied for all channels:
 
-Sleep Mode is enabled
-No interrupts are pending
-TX and RX FIFOs are empty
-RX input pin is idling HIGH (LOW in IR mode)
-Valid values in DLL and DLM registers
-Modem input pins are idle (MSR bits 3-0=0x0)
 
See AN204, UART Sleep Mode for more information on UART Sleep Mode

The UART will wake-up from sleep mode by any of the following conditions on any channel:
 
-Sleep mode is disabled
-Interrupt is generated
-Data is written into THR
-There is activity on the RX input pin
-There is activity on the modem input pins
 
If the sleep mode is still enabled and all wake-up conditions have been cleared, it will return to the sleep mode.
 
See AN204, UART Sleep Mode for more information on UART Sleep Mode 

There will be no activity on the XTAL2 output.
 
See AN204, UART Sleep Mode for more information on UART Sleep Mode 

For any UART that has the wake-up indicator interrupt, an interrupt will be generated when the UART wakes up even if no other interrupts are enabled.
 
See AN204, UART Sleep Mode for more information on UART Sleep Mode 

No, Auto RTS and Auto CTS are independent. Auto RTS is toggled by the UART receiver. Auto CTS is monitored by the UART Transmitter.

No, Auto RTS and Auto CTS will work normally without the interrupts enabled.

No, software flow control characters are not loaded into the RX FIFO.

Since 2-character software flow control requires that 2 consecutive flow control characters match before data transmission is stopped or resumes, there is less of a chance that data transmission is stopped because one data byte matched a control character.

Auto RS485 Half-Duplex Control feature overrides the Auto RTS flow control feature if both features use the RTS# output pin. Both features can only be used simultaneously if the Auto RS485 control output is not the RTS# output. For some UARTs, the Auto RS485 control output is not the RTS# output.

The polarity of the RS485 control output varies from one UART to another. For some UARTs, an inverter may be required. Some of the newer UARTs have register bits that can change that polarity of the RS485 control output.

In the normal mode, the TX interrupt is generated when the TX FIFO is empty, and there may still be data in the Transmit Shift Register. In the RS485 mode, the TX interrupt is generated when the TX FIFO and the TSR register are both empty.

It is recommended that the FIFO counters at the Scratchpad Register location be used. When transmitting or receiving data, writing to the LCR register could result in transmit and/or receive data errors.

Due to the dynamic nature of the FIFO counters, it is recommended that the FIFO counter registers be read until consecutive reads return the same value.

All of the UARTs that have the IR mode supports up to 115.2Kbps as specified in IrDA 1.0. The newer I2C/SPI UARTs can support up to 1.152Mbps as specified in IrDA 1.1.

No, it just has to meet the minimum high and low pulse widths.

Find the product page of the part that you want to get an evaluation board for and click on Parts & Purchasing. Example:

 

Find the icons under Buy Now or Order Samples:

 
 

Click on the Buy Now icon and see who has stock and click on the Buy button:

 
 
 

Alternatively, you can click on the Order Samples

 
 

If the icons are missing, then contact Customer Support.

The -F suffix indicates ROHS / Green compliance:
https://www.exar.com/quality-assurance-and-reliability/lead-free-program

Visit the product page for the part you are interested in.  The part's status is listed in the Parts & Purchasing section.  You can also view Product Lifecycle and Obsolescence Information including PDNs (Product Discontinuation Notifications).
 
To visit a product page, type the part into the search window on the top of the MaxLinear website.
 
In this example, we searched for XRA1201.  Visit the product page by clicking the part number or visit the orderable parts list by clicking "Orderable Parts". 
 
 
 

 

  

The Parts & Purchasing section of the product page shows the Status of all orderable part numbers for that product.  Click Show obsolete parts, to see all EOL or OBS products.

 
 
 

 

It depends on the baud rate. For example, for a start bit, 8 data bits, no stop bit and 1 stop bit, the maximum baud rate deviation is 4.76%. For more information, see https://www.exar.com/appnote/dan108.pdf

Please check that all the following conditions are satisfied first.

 

  • no interrupts pending (ISR bit-0 = 1)
  • modem inputs are not toggling (MSR bits 0-3 = 0)
  • RX input pin is idling HIGH • divisor (the value in DLL register) is non-zero
  • TX and RX FIFOs are empty

 

Be sure sleep mode bit has been set to 1. If there are multiple UART channels, the sleep conditions must be true for all channels.

 

See more on Sleep Mode in AN204 UART Sleep Mode.

Yes. Note: some devices do have powersave mode. If UART goes into powersave mode, then the registers are not accessible.

 

See more on Sleep Mode in AN204 UART Sleep Mode.

Read LSR register to check whether the UART receives the data or not.

 

  • If LSR value is 0x60, it means that either UART receiver FIFO doesn’t receive the data or the data in receiver FIFO has been read out before the read of LSR.
  • If LSR value is 0x00, it means data is still in the THR (clock doesn’t oscillate to transmit data).
  • If LSR value is 0xFF, it means either UART is in powersave mode or UART is powered off. For those devices with powersave mode, be sure that UARTS are not in powersave mode.

 

 

See more on Sleep Mode in AN204 UART Sleep Mode.

 

  • Check whether the register set can be accessed.
  • Check whether the crystal is oscillating fully.
  • Check whether the data can be transmitted in internal loopback mode.

 

 

See more on Sleep Mode in AN204 UART Sleep Mode.

Videos

MxL UARTs Auto RS-485 Direction Control

This video describes how the automatic RS-485 half-duplex direction control feature in MaxLinear UARTs reduces driver development and frees up CPU/MCU loading. This feature eliminates the need to monitor the status of the UART’s transmit shift register and automatically switches MaxLinear RS-485 transceivers from the transmit mode to the receive mode. This video summarizes the content in application note DAN-190.