PIC17C75X
Example 10-6 shows an instruction sequence to initial-
ize PORTF. The Bank Select Register (BSR) must be
selected to Bank 5 for the port to be initialized. The fol-
lowing example uses the MOVLBinstruction to load the
BSR register for bank selection.
10.6
PORTF and DDRF Registers
PORTF is an 8-bit wide bi-directional port. The corre-
sponding data direction register is DDRF. A '1' in DDRF
configures the corresponding port pin as an input. A '0'
in the DDRF register configures the corresponding port
pin as an output. Reading PORTF reads the status of
the pins, whereas writing to them will write to the
respective port latch.
EXAMPLE 10-6: INITIALIZING PORTF
MOVLB
5
; Select Bank 5
MOVLW 0x0E
; Configure PORTF as
MOVPF ADCON1 ; Digital
All eight bits of PORTF are multiplexed with 8 of the 12
channels of the 10-bit A/D converter.
CLRF
PORTF ; Initialize PORTF data
;
;
;
latches before setting
the data direction
register
Upon reset the entire Port is automatically configured
as analog inputs, and must be configured in software to
be a digital I/O.
MOVLW
MOVWF
0x03 ; Value used to initialize
data direction
DDRF ; Set RF<1:0> as inputs
;
;
RF<7:2> as outputs
FIGURE 10-13: BLOCK DIAGRAM OF RF7:RF0
Data bus
D
Q
Q
VDD
P
WR PORTF
CK
Data Latch
I/O pin
D
Q
Q
N
WR DDRF
CK
VSS
DDRF Latch
ST
input
buffer
RD DDRF
Q
D
EN
EN
RD PORT
VAN
PCFG3:PCFG0
CHS3:CHS0
To other pads
To other pads
DS30264A-page 78
Preliminary
1997 Microchip Technology Inc.