XR88C681

Dual UART CMOS with Two Fully Independent Full Duplex Asynchronous Communications Channels

Description

The EXAR Dual Universal Asynchronous Receiver and Transmitter (DUART) is a data communications device that provides two fully independent full duplex asynchronous communications channels in a single package. The XR88C681 is designed for use in microprocessor based systems and may be used in a polled or interrupt driven environment.

The XR88C681 device offers a single IC solution for the 8080/85, Z80, Z8000, 68xx, and 65xx microprocessor families.

The XR88C681 is fabricated using advanced two layer metal, with a high performance density EPI/CMOS 1.8µ process to provide high performance and low power consumption, and is available in 40-pin PDIP, 28-pin PDIP, and 44-pin PLCC packages.

For UART technical support or to obtain an IBIS model for this product, please email Exar's UART Technical Support group.

Read More

Features

  • Two Full Duplex Independent Channels
  • Asynchronous Receiver and Transmitter
  • Quad-Buffered Receivers, Dual-Buffered Transmitters
  • Programmable Stop Bits
  • Internal Bit Rate Generators
  • External Clock Capability
  • Advanced CMOS Low Power Technology
  • Available in 40-pin PDIP, 28-pin PDIP, and 44-pin PLCC Packages
  • Pb-Free, RoHS Compliant Versions Offered

Application

  • Multimedia Systems
  • Serial-to-Parallel and Parallel-to-Serial Converter
  • DTE for Modem Communication Systems

Design Tools

Simulation Models
Package Type Vcc Temp Mode Version File
PLCC 5V Commercial Intel 1
PDIP 5V Commercial Intel 1
PDIP 5V Commercial Intel 1
PDIP 5V Industrial Intel 1
CDIP 5V Commercial Intel 1
PLCC 5V Industrial Intel 1
CDIP 5V Commercial Intel 1
PDIP 5V Industrial Intel 1
PLCC 5V Commercial Intel 1
PDIP 5V Industrial Intel 1
PDIP 5V Commercial Intel 1
PDIP 5V Commercial Intel 1
CDIP 5V Industrial Intel 1
PLCC 5V Industrial Intel 1
CDIP 5V Industrial Intel 1
PDIP 5V Industrial Intel 1
Evaluation Hardware and Software
Operating System Driver Version Release Date File
DOS 1.0.0 December 2009

Packaging

Pkg Code Details Quantities Dimensions PDF
PDIP40
  • JEDEC Reference: MS-011
  • MSL Pb-Free: n/a
  • MSL SnPb Eutectic: n/a
  • ThetaJA: 50.0ºC/W
  • Bulk Pack Style: Tube
  • Quantity per Bulk Pack: n/a
  • Quantity per Reel: n/a
  • Quantity per Tube: 9
  • Quantity per Tray: n/a
  • Reel Size (Dia. x Width x Pitch): n/a
  • Tape & Reel Unit Orientation: n/a
  • Dimensions: inch
  • Length: 2.100 max.
  • Width: 0.580 max.
  • Thickness: 0.195 max.
  • Lead Pitch: 0.100
PLCC44
  • JEDEC Reference: MS-018
  • MSL Pb-Free: L1 @ 260ºC
  • MSL SnPb Eutectic: n/a
  • ThetaJA: 38.0ºC/W
  • Bulk Pack Style: Tube
  • Quantity per Bulk Pack: n/a
  • Quantity per Reel: 500
  • Quantity per Tube: 27
  • Quantity per Tray: n/a
  • Reel Size (Dia. x Width x Pitch): 330 x 32 x 24
  • Tape & Reel Unit Orientation: Pin 1 at sprocket hole.
  • Dimensions: inch
  • Length: 0.653
  • Width: 0.653
  • Thickness: 0.18
  • Lead Pitch: 1.27

Parts & Purchasing

Part Number Pkg Code RoHS Min Temp Max Temp Status Buy Now Order Samples
XR88C681CJ-F PLCC44 0 70 Active
XR88C681CJTR-F PLCC44 0 70 Active
XR88C681CP/28-F PDIP28 0 70 OBS Suggested:
XR88C681CJ-F
XR88C681CP/40 PDIP40 0 70 OBS Suggested:
XR88C681CP/40-F
XR88C681CP/40-F PDIP40 0 70 OBS Suggested:
XR88C681CJ-F
XR88C681J-F PLCC44 -40 85 Active
XR88C681JTR-F PLCC44 -40 85 OBS Suggested:
XR88C681J-F
XR88C681JTRS186-F OBS Suggested:
XR88C681JTR-F
XR88C681P/28-F PDIP28 -40 85 OBS Suggested:
XR88C681J-F
XR88C681P/40 PDIP40 -40 85 OBS Suggested:
XR88C681P/40-F
XR88C681P/40-F PDIP40 -40 85 OBS Suggested:
XR88C681J-F
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.

Quality Documents

Part NumberRoHSREACHReL
XR88C681CJ-FDownloadDownload
XR88C681CP/40-FDownload
XR88C681J-FDownload
XR88C681CJTR-FDownload
XR88C681JTR-FDownload
XR88C681Download
Additional Quality Documentation may be available, please contact customersupport@exar.com.
Distribution Date Description File
07/12/2017 Product Discontinuation Notice PDN_17-0626-01-1033.pdf
11/05/2015 Updated information subsequent to original published PCN 13-0834-03 on 04/02/2014. ASE Malaysia as alternate assembly site Addition of qualified alternate assembly site of 28, 44, 68L PLCC packaged products. PCN 13-0834-03A PLCC 28-44-1033.pdf
04/02/2014 Qualification of ASE Malaysia for assembly of 28, 44, 68L PLCC packaged products. Alternate assembly site. PCN_13-0834-03-1033.pdf
10/03/2013 Product Discontinuation Notification Discontinued. PDN_13-1003-01-1033.pdf
10/17/2012 Exar has qualified Millennium Microtech/Thailand as an alternate assembly supplier for 28, 44 and 68 lead PLCC packages in addition to the existing supplier, Unisem/Indonesia. Capacity enhancement PCN_12-0824-01-1033.pdf
04/11/2011 Product Discontinuation Notice In support of “green” initiatives, the listed leaded part numbers will be discontinued by Exar. PDN_11-0411-01-1033.pdf
10/01/2009 Notice of Obsolescence. Discontinued due to low market demand, effective immediately. PDN_091001-01-1033.pdf

Frequently Asked Questions

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.
Most UARTs use RTS#, however the XR16C850 and XR16C864 use the OP1# output as the Auto RS485 control output. In addition to using the RTS# output as the Auto RS485 control output, the XR16L784, XR16L788 and XR16V798 can use the DTR# output as the Auto RS485 control 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.
For external clock frequencies above 24MHz at the XTAL1 input, a 2K pull-up may be necessary to improve the rise times if there are data transmission errors.
Yes, you can daisy-chain it like that, but only up to 2 times (3 UARTs total in the daisy-chain). The UARTs should be as close as possible.
Yes, if you are using a UART with a fractional baud rate generator. This provides a divisor feature with a granularity of 1/16, allowing for any baud rate to be generated by any clock frequency, standard or non-standard. Click on the parametric search button of the product family page and find the Fractional Baud Rate Generator column which tells which products have this feature.
They crystal oscillator circuitry is recommended for fundamental frequency crystals only. The maximum frequency for crystals with fundamental frequencies is typically 24MHz. Above that frequency, crystals operate at higher harmonics, which will not work with the recommended crystal oscillator circuitry.
No. It is only required for transmitting and receiving data.
The best way to determine this is to go to exar.com and type the part into the search function. At or near the top of the results you should see something that looks like
 
 

In this example, we looked for XRA1201. When you hover over it, it will turn grey and you can click anywhere in the grey box. This brings you to the product page. For example:

 
 

Click on Parts & Purchasing, highlighted in yellow above. The screen changes to:

 

Notice the status column and the “Show obsolete parts” link:

 

A legend tells you the definition of the different statuses. Click on the “Show obsolete parts” link to see EOL or OBS part numbers along with the Active part numbers:

 
 

Another method to find out if a part is OBS or EOL is to click on SUPPORT:

 

And then Product Change Notifications

 
 

Type the part into the search, and click on one of the part numbers from the drop down menu. Then you can look for the Product Discontinuation Notice, which generally is at the top of the list, for example:

 
 

If you see this, it tells you that this particular orderable part has been discontinued and when the last order date is, or was. If you click on the file, then you can view the notice we sent about this if you purchased the part in the recent past. It may also advise of a replacement part. When an orderable part first becomes discontinued, Product Discontinuation Notices are sent are sent to those who have purchased the parts in the recent past, if purchased directly, with a dated opportunity to place a last order.

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.

Didn't find what you are looking for? Click here to post a new question.