xr20m1280 Exar Corporation, xr20m1280 Datasheet - Page 15

no-image

xr20m1280

Manufacturer Part Number
xr20m1280
Description
I2c/spi Uart With 128-byte Fifo And Integrated Level Shifters
Manufacturer
Exar Corporation
Datasheet

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
xr20m1280IL24-F
Manufacturer:
EXAR
Quantity:
800
Part Number:
xr20m1280IL24-F
Manufacturer:
EXAR/艾科嘉
Quantity:
20 000
Part Number:
xr20m1280IL32-F
Manufacturer:
Exar
Quantity:
490
Part Number:
xr20m1280IL40-F
Manufacturer:
Intersil
Quantity:
308
REV. P1.1.1
The M1280 has independent Baud Rate Generators (BRGs) with prescalers for the transmitter and receiver.
The prescalers are controlled by a software bit in the MCR register. The MCR register bit-7 sets the prescalers
to divide the input crystal or external clock by 1 or 4. The output of the prescaler clocks to the BRG. The BRG
further divides this clock by a programmable divisor between 1 and (2
16) to obtain a 16X or 8X or 4X sampling clock of the serial data rate. The sampling clock is used by the
transmitter for data bit shifting and receiver for data sampling.
The BRG divisor (DLL, DLM, and DLD registers) defaults to the value of ’1’ (DLL = 0x01, DLM = 0x00 and DLD
= 0x00) during power-on reset. The DLL and DLM registers provide the integer part of the divisor and the DLD
register provides the fractional part of the divisor. The four lower bits of the DLD are used to select a value from
0 (for setting 0000) to 0.9375 or 15/16 (for setting 1111). The divisor values can be calculated with the following
equations:
The BRG divisors can be calculated using the following formulas:
In the formulas above, please note that TRUNC (N) = Integer Part of N. For example, TRUNC (5.6) = 5.
For example, if the crystal clock is 24MHz, prescaler is 1, and the sampling mode is 16X, the divisor for a baud
rate of 38400bps would be:
Table 6
pre-scaler is used (MCR bit-7 = 1), the output data rate will be 4 times less than that shown in
sampling rate, these data rates would double. And at 4X sampling rate, they would quadruple. Also, when
using 8X sampling mode, please note that the bit-time will have a jitter (+/- 1/16) whenever the DLD is non-zero
and is an odd number.
The XR20M1280 has two independent sets of TX and RX baud rate generator. See
use different baud rates by setting DLD, DLL and DLM register. For example, TX can transmit data to the
remote UART at 9600 bps while RX receives data from remote UART at 921.6 Kbps. For the baud rate setting,
See ”Section 3.15, Baud Rate Generator Registers (DLL, DLM and DLD) - Read/Write” on page 44.
1.8
1.8.1
1.8.2
Divisor = (XTAL1 clock frequency / prescaler) / (serial data rate * 16), with 16X mode, DLD[5:4] = ’00’
Divisor = (XTAL1 clock frequency / prescaler / (serial data rate * 8), with 8X mode, DLD[5:4] = ’01’
Divisor = (XTAL1 clock frequency / prescaler / (serial data rate * 4), with 4X mode, DLD[5:4] = ’10’
Integer Divisor = TRUNC (Divisor)
Fractional Divisor = Divisor - Integer Divisor
Divisor = (24000000 / 1) / (38400 * 16) = 39.0625
Integer Divisor = TRUNC (39.0625) = 39
Fractional Divisor = 39.0625 - 39 = 0.0625
DLM = 39 / 256 = 0 = 0x00
DLL = 39 & 256 = 39 = 0x27
DLD = 0.0625 * 16 = 1 = 0x1
Programmable Baud Rate Generator with Fractional Divisor
shows the standard data rates available with a 24MHz crystal or external clock at 16X clock rate. If the
Fractional BRG Example
Independent TX/RX BRG
I2C/SPI UART WITH 128-BYTE FIFO AND INTEGRATED LEVEL SHIFTERS
DLD = TRUNC(Fractional Divisor * 16)
DLL = Integer Divisor & 256
DLM = Integer Divisor / 256
PRELIMINARY
15
16
- 0.0625) in increments of 0.0625 (1/
Figure
13. TX and RX can
XR20M1280
Table
6. At 8X

Related parts for xr20m1280