18.1 PPS Inputs
Each peripheral has an xxxPPS register with which the input pin to the peripheral is selected. Not all ports are available for input as shown in the following table.
Multiple peripherals can operate from the same source simultaneously. Port reads always return the pin level regardless of peripheral PPS selection. If a pin also has analog functions associated, the ANSEL bit for that pin must be cleared to enable the digital input buffer.
Important: The notation “xxx” in the generic register name
is a place holder for the peripheral identifier. For example, xxx = INT for the INTPPS
register.
Peripheral | PPS Input Register | Default Pin Selection at POR | Register Reset Value at POR | PORT From Which Input Is Available | ||
---|---|---|---|---|---|---|
Interrupt 0 | INT0PPS | RB0 | 0x08 | A | B | — |
Interrupt 1 | INT1PPS | RB1 | 0x09 | A | B | — |
Interrupt 2 | INT2PPS | RB2 | 0x0A | A | B | — |
Timer0 Clock | T0CKIPPS | RA4 | 0x04 | A | B | — |
Timer1 Clock | T1CKIPPS | RC0 | 0x10 | A | — | C |
Timer1 Gate | T1GPPS | RB5 | 0x0D | — | B | C |
Timer3 Clock | T3CKIPPS | RC0 | 0x10 | — | B | C |
Timer3 Gate | T3GPPS | RC0 | 0x10 | A | — | C |
Timer5 Clock | T5CKIPPS | RC2 | 0x12 | A | — | C |
Timer5 Gate | T5GPPS | RB4 | 0x0C | — | B | — |
Timer2 Clock | T2INPPS | RC3 | 0x13 | A | — | C |
Timer4 Clock | T4INPPS | RC5 | 0x15 | — | B | C |
Timer6 Clock | T6INPPS | RB7 | 0x0F | — | B | — |
ADC Conversion Trigger | ADACTPPS | RB4 | 0x0C | — | B | C |
CCP1 | CCP1PPS | RC2 | 0x12 | — | B | C |
CCP2 | CCP2PPS | RC1 | 0x11 | — | B | C |
CWG | CWG1PPS | RB0 | 0x08 | — | B | C |
DSM Carrier Low | MDCARLPPS | RA3 | 0x03 | A | — | C |
DSM Carrier High | MDCARHPPS | RA4 | 0x04 | A | — | C |
DSM Source | MDSRCPPS | RA5 | 0x05 | A | — | C |
EUSART1 Receive | RX1PPS | RC7 | 0x17 | — | B | C |
EUSART1 Clock | CK1PPS | RC6 | 0x16 | — | B | C |
MSSP1 Clock | SSP1CLKPPS | RC3 | 0x13 | — | B | C |
MSSP1 Data | SSP1DATPPS | RC4 | 0x14 | — | B | C |
MSSP1 Client Select | SSP1SSPPS | RA5 | 0x05 | A | — | C |