10
FN2958.6
August 19, 2015
82C50A
MCR(3): When MCR(3) is set high, the OUT2 output is
forced low. When MCR(3) is reset low, the OUT2
output is
forced high. OUT2
is an user designated output.
MCR(4): MCR(4) provides a local loopback feature for
diagnostic testing of the 62C50A. When MCR(4) is set high,
Serial Output (SOUT) is set to the marking (logic 1) state,
and the receiver data input Serial Input (SIN) is
disconnected. The output of the Transmitter Shift Register is
looped back into the Receiver Shift Register input. The four
modem control inputs (CTS
, DSR, DC, and RI) are
disconnected. The four modem control outputs (DTR
, RTS,
OUT1
and OUT2) are internally connected to the four
modem control inputs. The modem control output pins are
forced to their inactive state (high). In the diagnostic mode,
data transmitted is immediately received. This allows the
processor to verify the transmit and receive data paths of the
82C50A.
In the diagnostic mode, the receiver and transmitter
interrupts are fully operational. The modem control interrupts
are also operational, but the interrupt sources are now the
lower four bits of the MCR instead of the four modem control
inputs. The interrupts are still controlled by the Interrupt
Enable Register.
MCR(5) - MCR(7): These bits are permanently set to logic 0.
MODEM STATUS REGISTER (MSR)
The MSR provides the CPU with status of the modem input
lines from the modem or peripheral device. The MSR allows
the CPU to read the modem signal inputs by accessing the
data bus interface of the 82C50A. In addition to the current
status information, four bits of the MSR indicate whether the
modem inputs have changed since the last reading of the
MSR. The delta status bits are set high when a control input
from the modem changes state, and reset low when the
CPU reads the MSR.
The modem input lines are CTS
(pin 36), DSR (pin 37), RI
(pin 39), and DCD
(pin 38). MSR(4) - MSR(7) are status
indications of these lines. The status indications follow the
status of the input lines. If the modem status interrupt in the
Interrupt Enable Register is enabled (IER(3)), a change of
state in a modem input signals will be reflected by the
modem status bits in the lIR register, and an interrupt
(lNTRPT) is generated. The MSR is a priority 4 interrupt. The
contents of the Modem Status Register are described below:
Note that the state (high or low) of the status bits are
inverted versions of the actual input pins.
MSR(0) Delta Clear to Send (DCTS): DCTS indicates that
the CTS
input (Pin-36) to the 82C50A has changed state
since the last time it was read by the CPU.
MSR(1) Delta Data Set Ready (DDSR): DDSR indicates
that the DSR
input (Pin-37) to the 62C50A has changed
state since the last time it was read by the CPU.
MSR(2) Trailing Edge of Ring Indicator (TERI): TERI
indicates that the RI
input (Pin-39) to the 82C50A has
Changed state from Low to High since the last time it was
read by the CPU. High to Low transitions on RI
do not
activate TERI.
MODEM CONTROL REGISTER (MCR)
MCR
7
MCR
6
MCR
5
MCR
4
MCR
3
MCR
2
MCR
1
MCR
0
Data Terminal
Ready
0 = DTR
Output High (Inactive)
1 = DTR
Output Low (Active)
Request to
Send
0 = RTS Output High (Inactive)
1 = RTS
Output Low (Active)
Out 1 0 = OUT 1 Output High (Inactive)
1 = OUT 1
Output Low (Active)
Out 2 0 = OUT 2 Output High (Inactive)
1 = OUT 2
Output Low (Active)
Loop 0 = Loop Disabled
1 = Loop Enabled
These Bits are Permanently Set to a Logic 0.
MSR BITS 0 THRU 7
MSR BIT MNEMONIC DESCRIPTION
MSR (1) DDSR Delta Data Set Ready
MSR (2) TERI Trailing Edge of Ring Indicator
MSR (0) DCTS Delta Clear To Send
MSR (3) DDCD Delta Data Carrier Detect
MSR (4) CTS Clear To Send
MSR (5) DSR Data Set Ready
MSR (6) RI Ring Indicator
MSR (7) DCD Data Carrier Detect
11
FN2958.6
August 19, 2015
82C50A
MSR(3) Delta Data Carrier Detect (DDCD): DDCD
indicates that the DCD
input (Pin-36) to the 82C50A has
changed state since the last time it was read by the CPU.
MSR(4) Clear to Send (CTS): Clear to Send (CTS) is the
status of the CTS
input (Pin-36) from the modem indicating
to the 82C50A that the modem is ready to receive data from
the 62C50A transmitter output (SOUT). If the 82C50A is in
the loop mode (MCR(4)=1), MSR(4) is equivalent to RTS in
the MCR.
MSR(5) Data Set Ready (DSR): Data Set Ready (DSR) is a
status of the DSR
input (Pin-37) from the modem to the
82C50A which indicates that the modem is ready to provide
received data to the 82C50A receiver circuitry. If the 82C50A
is in the loop mode (MCR(4) = 1), MSR(5) is equivalent to
DTR in the MCR.
MSR(6) Ring Indicator MSR(6): Indicates the status of the
RI input (Pin-39). If the 82C50A is in the loop mode (MCR(4)
= 1), MSR(6) is equivalent to OUT1 in the MCR.
MSR(7) Data Carrier Detect (MSR(7)): Data Carrier Detect
indicates the status of the Data Carrier Detect
(DCD) input
(Pin-38). If the 82C50A is in the loop mode (MCR(4) = 1),
MSR(4) is equivalent to OUT2 of the MCR.
The modem status inputs (RI, DCD, DSR and CTS) reflect
the modem input lines with any change of status. Reading
the MSR register will clear the delta modem status
indications but has no effect on the status bits. The
status bits reflect the state of the input pins regardless of the
mask control signals. If a DCTS, DDSR, TERI, or DDCD are
true and a state change occurs during a read operation
(DlSTR, DISTR
), the state change is not indicated in the
MSR. If DCTS, DDSR, TERI, or DDCD are false and a state
change occurs during a read operation, the state change is
indicated after the read operation.
For LSR and MSR, the setting of status bits is inhibited
during status register read (DISTR, DlSTR
) operations. If a
status condition is generated during a read (DlSTR, DISTR
)
operation, the status bit is not set until the trailing edge of the
read (DISTR, DISTR
).
If a status bit is set during a read (DlSTR, DISTR) operation,
and the same status condition occurs, that status bit will be
cleared at the trailing edge of the read (DlSTR, DISTR
)
instead of being set again.
BAUD RATE SELECT REGISTER (BRSR)
The 82C50A contains a programmable Baud Rate
Generator (BRG) that divides the clock (DC to 10MHz) by
any divisor from 1 to 2
16
-1 (see also BRG description). The
output frequency of the Baud Generator is 16X the data rate
[divisor # = frequency input (baud rate x 16)]. Two 8-bit
divisor latch registers store the divisor in a 16-bit binary
format. These Divisor Latch registers must be loaded during
initialization. Upon loading either of the Divisor Latches, a
16-bit Baud counter is immediately loaded. This prevents
long counts on initial load.
Sample Divisor Number Calculation:
Given: Desired Baud Rate 1200 Baud
Frequency Input 1.8432MHz
Formula: Divisor # = Frequency Input (Baud Rate x 16)
Divisor # = 1843200 (1200 x 16)
Answer: Divisor # = 96 = 60
HEX
DLL = 01100000
DLM = 00000000
Check: The Divisor # 96 will divide the input frequency
1.8432MHz down to 19200 which is 16 times the
desired baud rate.
RECEIVER BUFFER REGISTER (RBR)
The receiver circuitry in the 82C50A is programmable for 5,
6, 7 or 8 data bits per character. For words of less than 8
bits, the data is right justified to the least significant bit (LSB
= Data Bit 0 (RBR(0)). Data Bit 0 of a data word (RBR(0)) is
the first data bit received. The unused bits in a character less
than 8 bits are output low to the parallel output by the
82C50A.
Received data at the SIN input pin is shifted into the
Receiver Shift Register by the 16X clock provided at the
RCLK input. This clock is synchronized to the incoming data
based on the position of the start bit. When a complete
character is shifted into the Receiver Shift Register, the
assembled data bits are parallel loaded into the Receiver
Buffer Register. The DR flag in the LSR register is set.
Double buffering of the received data permits continuous
reception of data without losing received data. While the
Receiver Shift Register is shifting a new character into the
82C50A, the Receiver Buffer Register is holding a previously
received character for the CPU to read. Failure to read the
Divisor Latch Least Significant BYTE
DLL (0) Bit 0
DLL (1) Bit 1
DLL (2) Bit 2
DLL (3) Bit 3
DLL (4) Bit 4
DLL (5) Bit 5
DLL (6) Bit 6
DLL (7) Bit 7
Divisor Latch Most Significant BYTE
DLM (0) Bit 8
DLM (1) Bit 9
DLM (2) Bit 10
DLM (3) Bit 11
DLM (4) Bit 12
DLM (5) Bit 13
DLM (6) Bit 14
DLM (7) Bit 15
12
FN2958.6
August 19, 2015
data in the RBR before complete reception of the next
character result in the loss of the data in the Receiver
Register. The OE flag in the LSR register indicates the
overrun condition.
TRANSMITTER HOLDING REGISTER (THR)
The Transmitter Holding Register (THR) holds parallel data
from the data bus (D0-D7) until the Transmitter Shift Register
is empty and ready to accept a new character for
transmission. The transmitter and receiver word length and
number of stop bits are the same. If the character is less
than eight bits, unused bits at the microprocessor data bus
are ignored by the transmitter.
Data Bit 0 (THR(0)) is the first serial data bit transmitted. The
THRE flag (LSR(5)) reflect the status of the THR. The TEMT
flag (LSR(6)) indicates if both the THR and TSR are empty.
SCRATCHPAD REGISTER (SCR)
This 8-bit Read/Write register has no effect on the 82C50A.
It is intended as a scratchpad register to be used by the
programmer to hold data temporarily.
Interrupt Structure
INTERRUPT IDENTIFICATION REGISTER (IIR)
The 82C50A has interrupt capability for interfacing to current
microprocessors. In order to minimize software overhead
during data character transfers, the 82C50A prioritizes
interrupts into four levels. The four levels of interrupt
conditions are as follows:
1. Receiver Line Status (Priority 1)
2. Received Data Ready (Priority 2)
3. Transmitter Holding Register Empty (Priority 3)
4. Modem Status (Priority 4).
Information indicating that a prioritized interrupt is pending
and the type of interrupt is stored in the Interrupt
Identification Register (IIR). When addressed during chip
select time, the lIR indicates the highest priority interrupt
pending. No other interrupts are acknowledged until the
interrupt is serviced by the CPU. The contents of the lIR are
indicated in Table 2 and are described below.
IIR(0): IIR(0) can be used in either a hardwired prioritized or
polled environment to indicate whether an interrupt is
pending. When IIR(0) is low, an interrupt is pending, and the
lIR contents may be used as a pointer to the appropriate
interrupt service routine. When lIR(0) is high, no interrupt is
pending.
IlR(1) and IIR(2): llR(1) and IlR(2) are used to identify the
highest priority interrupt pending as indicated in Table 2.
lIR(3) - IIR(7): These five bits of the lIR are logic 0.
RBR Bits 0 thru 7
RBR (0) Data Bit 0
RBR (1) Data Bit 1
RBR (2) Data Bit 2
RBR (3) Data Bit 3
RBR (4) Data Bit 4
RBR (5) Data Bit 5
RBR (6) Data Bit 6
RBR (7) Data Bit 7
THR Bits 0 thru 7
THR (0) Data Bit 0
THR (1) Data Bit 1
THR (2) Data Bit 2
THR (3) Data Bit 3
THR (4) Data Bit 4
THR (5) Data Bit 5
THR (6) Data Bit 6
THR (7) Data Bit 7
SCR Bits 0 thru 7
SCR (0) Data Bit 0
SCR (1) Data Bit 1
SCR (2) Data Bit 2
SCR (3) Data Bit 3
SOR (4) Data Bit 4
SCR (5) Data Bit 5
SOR (6) Data Bit 6
SCR (7) Data Bit 7
TABLE 2. INTERRUPT IDENTIFICATION REGISTER
INTERRUPT IDENTIFICATION INTERRUPT SET AND RESET FUNCTIONS
BIT 2 BIT 1 BIT 0
PRIORITY
LEVEL INTERRUPT FLAG INTERRUPT SOURCE
INTERRUPT
RESET CONTROL
X X 1 None None
1 1 0 First Receiver Line Status OE, PE, FE, or BI LSR Read
1 0 0 Second Received Data Available Receiver Data Available RBR Read
0 1 0 Third THRE THRE IIR Read if THRE is the
Interrupt Source or THR Write
0 0 0 Fourth Modem Status CTS
, DSR, RI, DCD MSR Read
NOTE: X = Not Defined, May Be 0 or 1
82C50A

CP82C50A-5Z

Mfr. #:
Manufacturer:
Renesas / Intersil
Description:
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union