21.2 PPS Inputs

Each digital peripheral has a dedicated PPS Peripheral Input Selection (xxxPPS) register with which the input pin to the peripheral is selected. Devices that have 20 leads or less (8/14/16/20) allow PPS routing to any I/O pin, while devices with 28 leads or more allow PPS routing to I/Os contained within two ports (see the table below).

Important: The notation “xxx” in the generic register name is a placeholder for the peripheral identifier. For example, xxx = T0CKI for the T0CKIPPS register.

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.

Table 21-1. PPS Input Selection Table
PeripheralPPS Input Register 14-Pin Devices20-Pin Devices
Default Pin Selection at PORRegister Reset Value at PORAvailable Input PortDefault Pin Selection at PORRegister Reset Value at PORAvailable Input Port
Interrupt 0INT0PPSRA2'b000 010A—CRC0'b010 000ABC
Interrupt 1INT1PPSRA4'b000 100A—CRC1'b010 001ABC
Interrupt 2INT2PPSRA5'b000 101A—CRC2'b010 010ABC
Timer0 ClockT0CKIPPSRA2'b000 010A—CRC5'b010 101ABC
Timer1 ClockT1CKIPPSRA5'b000 101A—CRC6'b010 110ABC
Timer1 GateT1GPPSRA4'b000 100A—CRA4'b000 100ABC
Timer3 ClockT3CKIPPSRC5'b010 101A—CRC5'b010 101ABC
Timer3 GateT3GPPSRC4'b010 100A—CRC4'b010 100ABC
Timer2 InputT2INPPSRA5'b000 101A—CRA5'b000 101ABC
Timer4 InputT4INPPSRC1'b010 001A—CRC1'b010 001ABC
CCP1CCP1PPSRC5'b010 101A—CRC5'b010 101ABC
SMT1 WindowSMT1WINPPSRA5'b000 101A—CRA5'b000 101ABC
SMT1 SignalSMT1SIGPPSRC0'b010 000A—CRA4'b000 100ABC
PWM Input 0PWMIN0PPSRC5'b010 101A—CRC5'b010 101ABC
PWM Input 1PWMIN1PPSRC3'b010 011A—CRC3'b010 011ABC
PWM1 External Reset SourcePWM1ERSPPSRA5'b000 101A—CRA5'b000 101ABC
PWM2 External Reset SourcePWM2ERSPPSRC1'b010 001A—CRC1'b010 001ABC
PWM3 External Reset SourcePWM3ERSPPSRC2'b010 010A—CRC2'b010 010ABC
CWG1CWG1PPSRA2'b000 010A—CRA2'b000 010ABC
DSM1 Carrier LowMD1CARLPPSRC2'b010 010A—CRC2'b010 010ABC
DSM1 Carrier HighMD1CARHPPSRC5'b010 101A—CRC5'b010 101ABC
DSM1 SourceMD1SRCPPSRA1'b000 001A—CRA1'b000 001ABC
CLCx Input 1CLCIN0PPSRC3'b010 011A—CRA2'b000 010ABC
CLCx Input 2CLCIN1PPSRC4'b010 100A—CRC3'b010 011ABC
CLCx Input 3CLCIN2PPSRC1'b010 001A—CRB4'b001 100ABC
CLCx Input 4CLCIN3PPSRA4'b000 100A—CRB5'b001 101ABC
ADC Conversion TriggerADACTPPSRC2'b010 010A—CRC2'b010 010ABC
SPI1 ClockSPI1SCKPPSRC0'b010 000A—CRB6'b001 110ABC
SPI1 DataSPI1SDIPPSRC1'b010 001A—CRB4'b001 100ABC
SPI1 Client SelectSPI1SSPPSRC3'b010 011A—CRC6'b010 110ABC
SPI2 ClockSPI2SCKPPSRC4'b010 100A—CRB7'b001 111ABC
SPI2 DataSPI2SDIPPSRC5'b010 101A—CRB5'b001 101ABC
SPI2 Client SelectSPI2SSPPSRA0'b000 000A—CRA1'b000 001ABC
I2C1 ClockI2C1SCLPPS(1)RC0'b010 000A—CRB6'b001 110ABC
I2C1 DataI2C1SDAPPS(1)RC1'b010 001A—CRB4'b001 100ABC
UART1 ReceiveU1RXPPSRC5'b010 101A—CRB5'b001 101ABC
UART1 Clear to SendU1CTSPPSRC4'b010 100A—CRB7'b001 111ABC
UART2 ReceiveU2RXPPSRC1'b010 001A—CRC1'b010 001ABC
UART2 Clear to SendU2CTSPPSRC2'b010 010A—CRC2'b010 010ABC
UART3 ReceiveU3RXPPSRA4'b000 100A—CRC3'b010 011ABC
UART3 Clear to SendU3CTSPPSRA5'b000 101A—CRC5'b010 101ABC
Note:
  1. Bidirectional pin. The corresponding output must select the same pin.