Microchip Technology DV164136 Data Sheet

Page of 466
PIC18F87J11 FAMILY
DS39778E-page 146
 
 2007-2012 Microchip Technology Inc.
11.4
PORTC, TRISC and 
LATC Registers
PORTC is an 8-bit wide, bidirectional port. Only
PORTC pins, RC2 through RC7, are digital only pins
and can tolerate input voltages up to 5.5V.
PORTC is multiplexed with ECCP, MSSPx and
EUSARTx peripheral functions (
). The pins
have Schmitt Trigger input buffers. The pins for ECCP,
SPI and EUSARTx are also configurable for open-drain
output whenever these functions are active. Open-drain
configuration is selected by setting the SPIxOD,
ECCPxOD, and UxOD control bits in the ODCON regis-
ters (see 
 for
more information). 
RC1 is normally configured as the default peripheral
pin for the ECCP2 module. Assignment of ECCP2 is
controlled by Configuration bit, CCP2MX (default state,
CCP2MX = 1). 
When enabling peripheral functions, care should be
taken in defining TRIS bits for each PORTC pin. Some
peripherals override the TRIS bit to make a pin an output,
while other peripherals override the TRIS bit to make a
pin an input. The user should refer to the corresponding
peripheral section for the correct TRIS bit settings.
The contents of the TRISC register are affected by
peripheral overrides. Reading TRISC always returns
the current contents, even though a peripheral device
may be overriding one or more of the pins.
EXAMPLE 11-4:
INITIALIZING PORTC      
Note:
These pins are configured as digital inputs
on any device Reset.
CLRF
PORTC
; Initialize PORTC by
; clearing output
; data latches
CLRF
LATC
; Alternate method to clear
; output data latches
MOVLW
H'CF'
; Value used to initialize
; data direction
MOVWF
TRISC
; Set RC<3:0> as inputs
; RC<5:4> as outputs
; RC<7:6> as inputs