MCP2200
USB 2.0 to UART Protocol Converter with GPIO
Features
Universal Serial Bus (USB)
• Supports full-speed USB (12 Mb/s)
• Implements USB protocol composite device:
- Communication Device Class (CDC) for
communications and configuration
- Human Interface Device (HID) for I/O control
• 128-byte buffer to handle data throughput at any
UART baud rate:
- 64-byte transmit
- 64-byte receive
• Fully configurable VID and PID assignments, and
string descriptors
• Bus powered or self-powered
• USB 2.0 Compliant: TID 40001150
USB Driver and Software Support
• Uses standard Windows
®
drivers for Virtual Com
Port (VCP): Windows XP (SP2 or later), Vista, 7
• Configuration utility for initial configuration
Universal Asynchronous Receiver/Transmitter
(UART)
• Responds to
SET LINE CODING
commands to
dynamically change baud rates
• Supports baud rates: 300-1000k
• Hardware flow control
• UART signal polarity option
General Purpose Input/Output (GPIO) Pins
• Eight general purpose I/O pins
EEPROM
• 256 bytes of user EEPROM
Other
• USB activity LED outputs (TxLED and RxLED)
• SSPND output pin
• USBCFG output pin (indicates when the enumer-
ation is completed)
• Operating voltage: 3.0-5.5V
• Oscillator input: 12 MHz
• ESD protection: > 4 kV HBM
• Industrial (I) Operating Temperature: -40°C to
+85°C
RST 1
GP7/TxLED 2
GP6/RxLED 3
GP5 4
GP4 5
6
GP3
7
TX
8
RTS
9 10
RX
CTS
DS22228B-page 1
EP
21
Package Types
The device will be offered in the following packages:
• 20-lead QFN (5 x 5 mm)
• 20-lead SOIC
• 20-lead SSOP
MCP2200
SOIC, SSOP
V
DD
1
OSC1 2
OSC2 3
RST 4
GP7/TxLED 5
GP6/RxLED 6
GP5 7
GP4 8
GP3 9
TX 10
20 V
SS
19 D+
18 D-
17 V
USB
16 GP0/SSPND
15 GP1/USBCFG
14 GP2
13 CTS
12 RX
11 RTS
MCP2200
5x5 QFN*
OSC2
OSC1
V
DD
V
SS
D+
15 D-
14 V
USB
13 GP0/SSPND
12 GP1/USBCFG
11 GP2
20 19 18 17 16
* Includes Exposed Thermal Pad (EP); see
Table 1-1.
2011 Microchip Technology Inc.
MCP2200
Block Diagram
GP5 GP3 GP1
TXLED/ RXLED/
GP4 GP2 GP0 GP7
GP6
Configuration
and Control
Registers
256 Byte
EEPROM
GPIO
USB LEDs
TX
RX
CTS
RTS
Baud
Generator
State USB
Clock Clock
VSS
Osc
Reset
3.3V
LDO
UART
Controller
Control
USB Protocol
Controller
USB
Transceiver
D+
D-
V
USB
V
SS
OSC1 OSC2
RST
V
DD
DS22228B-page 2
2011 Microchip Technology Inc.
MCP2200
1.0
FUNCTIONAL DESCRIPTION
The MCP2200 is a USB-to-UART serial converter
which enables USB connectivity in applications that
have a UART interface. The device reduces external
components by integrating the USB termination
resistors. The MCP2200 also has 256 bytes of
integrated user EEPROM.
The MCP2200 has eight general purpose input/output
pins. Four pins have alternate functions to indicate
USB and communication status. See
Table 1-1
and
Section 1.6 “GPIO Module”
for details about the pin
functions.
TABLE 1-1:
Pin
Name
GP0/SSPND
GP1/USB-
CFG
GP2
GP3
GP4
GP5
GP6/RxLED
GP7/TxLED
RST
CTS
RX
RTS
TX
V
DD
V
SS
OSC1
OSC2
D+
D-
V
USB
PINOUT DESCRIPTION
SSOP,
Pin
QFN
SOIC
Type
16
15
14
9
8
7
6
5
4
13
12
11
10
1
20
2
3
19
18
17
13
12
11
6
5
4
3
2
1
10
9
8
7
18
17
19
20
16
15
14
I/O
I/O
I/O
I/O
I/O
I/O
I/O
I/O
I
I
I
O
O
P
P
I
O
I/O
I/O
P
Standard Function
General purpose I/O
General purpose I/O
General purpose I/O
General purpose I/O
General purpose I/O
General purpose I/O
General purpose I/O
General purpose I/O
Reset input must be externally biased
Hardware flow control “Clear to Send” input
signal
USART RX input
Hardware flow control “Request to Send”
output signal
USART TX output
Power
Ground
Oscillator input
Oscillator output
USB D+
USB D-
USB power pin (internally connected to
3.3V). Should be locally bypassed with a
high quality ceramic capacitor.
Exposed Thermal Pad (EP). Do not
electrically connect.
USB receive activity LED output
(refer to
Section 1.6.1.3)
USB transmit activity LED
output (refer to
Section 1.6.1.4)
Alternate Function
USB suspend status pin
(refer to
Section 1.6.1.1)
USB configuration status pin
(refer to
Section 1.6.1.2)
EP
—
21
—
2011 Microchip Technology Inc.
DS22228B-page 3
MCP2200
1.1
Supported Operating Systems
1.3.1
INITIAL CONFIGURATION
Windows XP (SP2 and later), Vista, and Windows 7
operating systems are supported.
The default UART configuration is 19200, 8, N, 1. The
default start up baud rate can be changed using the
Microchip-supplied configuration PC tool.
Alternatively, a custom configuration tool can be
created using the Microchip-supplied DLL to set the
baud rate, as well as other parameters. See
Section 2.0 “Configuration”
for details.
1.1.1
ENUMERATION
The MCP2200 will enumerate as a USB device after
Power-on Reset (POR). The device enumerates as
both a Human Interface Device (HID) for I/O control,
and a VCP.
TABLE 1-2:
UART CONFIGURATIONS
Configuration
See
Table 1-3
8
N
1
1.1.1.1
HID
Parameter
Primary Baud Rates
Data Bits
Parity
Stop Bits
The MCP2200 enumerates as an HID, so the device
can be configured and the I/O can be controlled. A DLL
that facilitates I/O control through a custom interface is
supplied by Microchip.
1.1.1.2
VCP
The VCP enumeration implements the USB-to-UART
data translation.
1.3.2
GET/SET LINE CODING
1.2
Control Module
The control module is the heart of the MCP2200. All
other modules are tied together and controlled via the
control module. The control module manages the data
transfers between the USB and the UART, as well as
command requests generated by the USB host
controller, and commands for controlling the function of
the UART and I/O.
The
GET_LINE_CODING
and
SET_LINE_CODING
commands are used to read and set the UART
parameters while in operation. For example,
Hyperterminal sends the
SET_LINE_COMMAND
when
connecting to the port. The MCP2200 responds by
setting the baud rate only. The other parameters (Data
Bits, Parity, Stop Bits) remain unchanged.
1.3.2.1
Rounding Errors
1.2.1
SERIAL INTERFACE
The control module interfaces to the UART and USB
modules.
The primary baud rate setting (with the rounding errors)
is shown in
Table 1-3.
If baud rates other than the ones
shown in the table are used, the error percentage can
be calculated using
Equation 1-1
to find the actual
baud rate.
1.2.2
INTERFACING TO THE DEVICE
TABLE 1-3:
Desired Rate
300
1200
2400
4800
9600
19200
38400
57600
115200
230400
460800
921600
The MCP2200 can be accessed for reading and writing
via USB host commands. The device cannot be
accessed and controlled via the UART interface.
UART PRIMARY BAUD
RATES
Actual rate
300
1200
2400
4800
9600
19200
38339
57692
115385
230769
461538
923077
% Error
0.00%
0.00%
0.00%
0.00%
0.00%
0.00%
0.16%
0.16%
0.16%
0.16%
0.16%
0.16%
1.3
UART Interface
The MCP2200 UART interface consists of the TX and
RX data signals and the RTS/CTS flow control pins.
The UART is configurable for several baud rates. The
available baud rates are listed in
Table 1-3.
DS22228B-page 4
2011 Microchip Technology Inc.
MCP2200
EQUATION 1-1:
SOLVING FOR ACTUAL
BAUD RATE
1.4
USB Protocol Controller
12MHz
ActualRate = ------------------
-
int
x
Where:
12MHz
x = ----------------------------------
-
DesiredBaud
The USB controller in the MCP2200 is full-speed USB
2.0 compliant.
• Composite device (CDC + HID):
- CDC: USB-to-UART communications
- HID: I/O control, EEPROM access and initial
configuration
• 128 byte buffer to handle data throughput at any
UART baud rate:
- 64-byte transmit
- 64-byte receive
• Fully configurable VID and PID assignments, and
descriptors (stored on-chip)
• Bus powered or self-powered
1.3.3
CUSTOM BAUD RATES
Custom baud rates are configured by sending the
SET_LINE_CODING USB
command, or by using the
DLL. See
Section 2.0 “Configuration”
for more
information.
1.3.4
HARDWARE FLOW CONTROL
Hardware flow control uses the RTS and CTS pins as
a handshake between two devices. The RTS pin of
one device is typically connected to the CTS of the
other device.
RTS is an active low output that notifies the other
device when it is ready to receive data by driving the pin
low. The MCP2200 trip point for de-asserting RTS
(high) is 63 characters. This is one character short of
“buffer full”.
CTS is an active low input that notifies the MCP2200
when it is ready to send data. The MCP2200 will check
CTS just before loading and sending UART data. If the
pin is asserted during a transfer, the transfer will con-
tinue. Refer to
Figure 1.4.
1.4.1
DESCRIPTORS
During configuration, the supplied PC interface stores
the descriptors in the MCP2200.
1.4.2
SUSPEND AND RESUME
The USB Suspend and Resume signals are supported
for power management of the MCP2200. The device
enters Suspend mode when “suspend signaling” is
detected on the bus.
The MCP2200 exits Suspend mode when any of the
following events occur:
1.
2.
3.
“Resume signaling” is detected or generated
A USB “Reset” signal is detected
A device Reset occurs
FIGURE 1-1:
RTS/CTS CONNECTIONS
EXAMPLE
I am ready
to receive
1.5
USB Transceiver
I am ready
to receive
RTS
I’ll transmit
if okay
RTS
The MCP2200 has a built-in, USB 2.0, full-speed
transceiver internally connected to the USB module.
The USB transceiver obtains power from the V
USB
pin,
which is internally connected to the 3.3V regulator. The
best electrical signal quality is obtained when V
USB
is
locally bypassed with a high quality ceramic capacitor.
I’ll transmit
if okay
CTS
MCU
CTS
MCP2200
1.5.1
INTERNAL PULL-UP RESISTORS
The MCP2200 devices have built-in pull-up resistors
designed to meet the requirements for full-speed USB.
1.5.2
1.3.4.1
Flow Control Disabled
The buffer pointer does not increment (or reset to
zero) if the buffer is full. Therefore, if hardware flow
control is not enabled and an overflow occurs (i.e., 65
unprocessed characters received), the new data
overwrites the last position in the buffer.
MCP2200 POWER OPTIONS
The following are the main power options for the
MCP2200:
• USB Bus Powered (5V)
• 3.3V Self Powered
2011 Microchip Technology Inc.
DS22228B-page 5