
2004 Microchip Technology Inc.
DS30491C-page 139
PIC18F6585/8585/6680/8680
10.6
PORTF, LATF and TRISF Registers
PORTF is an 8-bit wide, bidirectional port. The corre-
sponding data direction register is TRISF. Setting a
TRISF bit (= 1) will make the corresponding PORTF pin
an input (i.e., put the corresponding output driver in a
high-impedance mode). Clearing a TRISF bit (= 0) will
make the corresponding PORTF pin an output (i.e., put
the contents of the output latch on the selected pin).
Read-modify-write operations on the LATF register
read and write the latched output value for PORTF.
PORTF is multiplexed with several analog peripheral
functions, including the A/D converter inputs and
comparator inputs, outputs, and voltage reference.
EXAMPLE 10-6:
INITIALIZING PORTF
FIGURE 10-13:
PORTF RF1/AN6/C2OUT AND RF2/AN7/C1OUT PINS BLOCK DIAGRAM
Note 1: On a Power-on Reset, the RF6:RF0 pins
are configured as inputs and read as ‘0’.
2: To configure PORTF as digital I/O, turn off
comparators and set ADCON1 value.
CLRF
PORTF
; Initialize PORTF by
; clearing output
; data latches
CLRF
LATF
; Alternate method
; to clear output
; data latches
MOVLW
07h
;
MOVWF
CMCON
; Turn off comparators
MOVLW
0Fh
;
MOVWF
ADCON1
; Set PORTF as digital I/O
MOVLW
0CFh
; Value used to
; initialize data
; direction
MOVWF
TRISF
; Set RF3:RF0 as inputs
; RF5:RF4 as outputs
; RF7:RF6 as inputs
Port/Comparator Select
Data Bus
WR LATF or
WR TRISF
Data Latch
TRIS Latch
RD TRISF
Q
D
Q
CK
QD
EN
Comparator Data Out
0
1
Q
D
Q
CK
P
N
VDD
VSS
RD PORTF
I/O pin
WR PORTF
RD LATF
Schmitt
Trigger
Note
1:
I/O pins have diode protection to VDD and VSS.
Analog
Input
Mode
To A/D Converter