English
Language : 

PIC18F47J53 Datasheet, PDF (164/586 Pages) Microchip Technology – 28/44-Pin, High-Performance USB Microcontrollers with nanoWatt XLP Technology
PIC18F47J53 FAMILY
Choosing the configuration requires the review of all
PPSs and their pin assignments, especially those that
will not be used in the application. In all cases, unused
pin selectable peripherals should be disabled com-
pletely. Unused peripherals should have their inputs
assigned to an unused RPn pin function. I/O pins with
unused RPn functions should be configured with the
null peripheral output.
The assignment of a peripheral to a particular pin does
not automatically perform any other configuration of the
pin’s I/O circuitry. In theory, this means adding a pin-
selectable output to a pin may mean inadvertently
driving an existing peripheral input when the output is
driven. Users must be familiar with the behavior of
other fixed peripherals that share a remappable pin and
know when to enable or disable them. To be safe, fixed
digital peripherals that share the same pin should be
disabled when not in use.
Along these lines, configuring a remappable pin for a
specific peripheral does not automatically turn that
feature on. The peripheral must be specifically config-
ured for operation and enabled, as if it were tied to a
fixed pin. Where this happens in the application code
(immediately following device Reset and peripheral
configuration or inside the main application routine)
depends on the peripheral and its use in the
application.
A final consideration is that the PPS functions neither
override analog inputs nor reconfigure pins with analog
functions for digital I/O. If a pin is configured as an
analog input on device Reset, it must be explicitly
reconfigured as digital I/O when used with a PPS.
Example 10-7 provides a configuration for bidirectional
communication with flow control using EUSART2. The
following input and output functions are used:
• Input Function RX2
• Output Function TX2
EXAMPLE 10-7:
CONFIGURING EUSART2
INPUT AND OUTPUT
FUNCTIONS
;*************************************
; Unlock Registers
;*************************************
MOVLB 0x0E
; PPS registers in BANK 14
BCF
INTCON, GIE ; Disable interrupts
MOVLW 0x55
MOVWF EECON2, 0
MOVLW 0xAA
MOVWF EECON2, 0
; Turn off PPS Write Protect
BCF
PPSCON, IOLOCK, BANKED
;***************************
; Configure Input Functions
; (See Table 10-13)
;***************************
;***************************
; Assign RX2 To Pin RP0
;***************************
MOVLW 0x00
MOVWF RPINR16, BANKED
;***************************
; Configure Output Functions
; (See Table 10-14)
;***************************
;***************************
; Assign TX2 To Pin RP1
;***************************
MOVLW 0x06
MOVWF RPOR1, BANKED
;*************************************
; Lock Registers
;*************************************
BCF
INTCON, GIE
MOVLW 0x55
MOVWF EECON2, 0
MOVLW 0xAA
MOVWF EECON2, 0
; Write Protect PPS
BSF
PPSCON, IOLOCK, BANKED
Note:
If the Configuration bit, IOL1WAY = 1,
once the IOLOCK bit is set, it cannot be
cleared, preventing any future RP register
changes. The IOLOCK bit is cleared back
to ‘0’ on any device Reset.
DS39964B-page 164
Preliminary
 2010 Microchip Technology Inc.