Microchip Technology MCU PIC PIC18F87K22-I/PTRSL TQFP-80 MCP PIC18F87K22-I/PTRSL Data Sheet

Product codes
PIC18F87K22-I/PTRSL
Page of 550
 2009-2011 Microchip Technology Inc.
DS39960D-page 167
PIC18F87K22 FAMILY
12.1.3
OPEN-DRAIN OUTPUTS
The output pins for several peripherals are also
equipped with a configurable, open-drain output option.
This allows the peripherals to communicate with
external digital logic, operating at a higher voltage
level, without the use of level translators. 
The open-drain option is implemented on port pins
specifically associated with the data and clock outputs
of the USARTs, the MSSP module (in SPI mode) and
the CCP modules. This option is selectively enabled by
setting the open-drain control bits in the registers,
ODCON1, ODCON2 and ODCON3.
When the open-drain option is required, the output pin
must also be tied through an external pull-up resistor
provided by the user to a higher voltage level, up to 5V
(
). When a digital logic high signal is output,
it is pulled up to the higher voltage level. 
FIGURE 12-2:
USING THE OPEN-DRAIN 
OUTPUT (USART SHOWN 
AS EXAMPLE)
TX
X
+5V
3.3V
(at logic ‘1’)
3.3V
V
DD
5V
PIC18F87K22
REGISTER 12-2:
ODCON1: PERIPHERAL OPEN-DRAIN CONTROL REGISTER 1
R/W-0
R/W-0
R/W-0
U-0
U-0
U-0
U-0
R/W-0
SSP1OD
CCP2OD
CCP1OD
SSP2OD
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
U = Unimplemented bit, read as ‘0’
-n = Value at POR
‘1’ = Bit is set
‘0’ = Bit is cleared
x = Bit is unknown
bit 7
SSP1OD: 
MSSP1 Open-Drain Output Enable bit
1
 = Open-drain capability is enabled
0
 = Open-drain capability is disabled
bit 6
CCP2OD: 
ECCP2 Open-Drain Output Enable bit
1
 = Open-drain capability is enabled
0
 = Open-drain capability is disabled
bit 5
CCP1OD: 
ECCP1 Open-Drain Output Enable bit
1
 = Open-drain capability is enabled
0
 = Open-drain capability is disabled
bit 4-1
Unimplemented: 
Read as ‘0’
bit 0
SSP2OD: 
MSSP2 Open-Drain Output Enable bit
1
 = Open-drain capability is enabled
0
 = Open-drain capability is disabled