XR88C92CJ EXAR [Exar Corporation], XR88C92CJ Datasheet - Page 23
![no-image](/images/no-image-200.jpg)
XR88C92CJ
Manufacturer Part Number
XR88C92CJ
Description
DUAL UNIVERSAL ASYNCHRONOUS RECEIVER AND TRANSMITTER
Manufacturer
EXAR [Exar Corporation]
Datasheet
1.XR88C92CJ.pdf
(32 pages)
Available stocks
Company
Part Number
Manufacturer
Quantity
Price
Company:
Part Number:
XR88C92CJ-F
Manufacturer:
Exar Corporation
Quantity:
10 000
Part Number:
XR88C92CJ-F
Manufacturer:
EXAR/艾科嘉
Quantity:
20 000
Company:
Part Number:
XR88C92CJTR-F
Manufacturer:
Exar Corporation
Quantity:
10 000
PROGRAMMING EXAMPLES
The following examples show how to initialize the XR88C92/192 for various operating conditions:
A) The first example will initialize channel A of an XR88C92 device for regular RX/TX. The operating parameters will
B) This example will show how to use hardware flow control for both RX (RTS via OP0) and TX (CTS via IP0):
C) This example will configure clock sources for TX and RX of both channels and C/T. Specifically, XTAL1 will be
D) The next example will show how to configure and run channel B's transmitter in a multi-drop application. Note that
Operation Register
Write
Write
Write
Write
Write
Write
Write
Write
Write
Read
Write
Write
Write
used as channel A's TX clock; IP4 as channel A's 16X RX clock; IP5 as channel B's 1X TX clock and XTAL1 as
channel B's RX clock. Also, the C/T will be initialized in the timer mode and IP2 will be used as its clock source.
Some of these will be programmed to appear at the multi-purpose output pins:
Write
Write
Write
Write
Write
Read
Write
all other relevant parameters should be configured already, like baud rate etc.
Write
Write
Write
Write
Write
Write
Write
Read
be 9600 baud, 8 word length, no parity and 1 stop bit.
Rev. 1.31
STCR
CRA
CRA
CRA
CRA
MR0A
MR1A
MR2A
CSRA
CRA
SRA
CRA
MR1A
MR2A
ACR
CTPU
CTPL
CSRA
CSRB
OPCR
CRB
MR1B
CRB
TXB
CRB
MR1B
TXB
SRB
Value
0x20
0x30
0x40
0xB0
0x00
0x13
0x07
0xBB
0x05
0x10
0x93
0x17
0x40
0x00
0x05
0xEB
0xBF
0x06
0x10
0x1B
0x04
address
0x10
0x13
data
Remarks
; reset RX (receiver)
; reset TX (transmitter)
; reset error status
; reset MR pointer to MR0
; use normal baud rate table. Now MR pointer points to MR1
; select word length & parity. Now MR pointer points to MR2
; normal mode (not loopback) & 1 stop bit
; 9600 baud for RX & TX - clock source is XTAL1
; enable RX & TX
; should get a value 0x0C
; reset MR pointer to MR1
; select auto RTS control. The -RTS signal is sent via output OP0
; select auto CTS control. The input IP0 serves as the -CTS signal
; C/T initialized in timer mode & IP2 chosen as its clock source
; also, bit-7 = 0, therefore baud rate Set1 has been selected
; It is essential to program CTPU & CTPL before programming OP3
; as C/T output (see below)
; channel A RX clock source: IP4-16X, TX clock source: XTAL1 (if MR0A
; bits 2 and 0 = 0, the TX baud rate is 9600)
; channel B RX clock source: XTAL1 (9600 baud), TX clock source: IP5-1X
; Start the C/T
; C/T output appears at OP3 and channel A's TX 1X clock (this is XTAL1
; clock divided by 16) at OP2.
; reset MR pointer to MR1
; word length = 8 and use A/D tag in the place of parity
; Enable transmitter of channel B
; Send the address first (A/D tag = 1)
; reset MR pointer to MR1
; change A/D tag = 0
; You can load the data (A/D tag = 0) immediately after the address. There
; is no need to wait till the transmitter is empty. Load all the data.
; Check to see if the transmitter is empty & ready. You need to do this
; before you can load the next address.
; Repeat the last 5 steps to load different addresses and their data.
23
XR88C92/192