23.3 PPS Outputs

Each digital peripheral has a dedicated Pin Rxy Output Source Selection (RxyPPS) register with which the pin output source is selected. With few exceptions, the port TRIS control associated with that pin retains control over the pin output driver. Peripherals that control the pin output driver as part of the peripheral operation will override the TRIS control as needed. The I2C module is an example of such a peripheral.

Important: The notation ‘Rxy’ is a placeholder for the pin identifier. The ‘x’ holds the place of the PORT letter and the ‘y’ holds the place of the bit number. For example, Rxy = RA0 for the RA0PPS register.

The table below shows the output codes for each peripheral, as well as the available Port selections.

Table 23-2. PPS Output Selection Table
RxyPPSOutput SourceAvailable Output Ports
28-Pin Devices40-Pin Devices48-Pin Devices
0x28ADGRDBABCABCDEABCDEF
0x27ADGRDAABCABCDEABCDEF
0x26CLKRBCBCBE
0x25NCO1ACADAD
0x24TU16BBCBDBD
0x23TU16ABCBCCF
0x22TMR0BCBCCF
0x21I2C1 SDA(1)BCBCBC
0x20I2C1 SCL(1)BCBCBC
0x1FSPI1 SSACADAD
0x1ESPI1 SDOBCBCBC
0x1DSPI1 SCK BCBCBC
0x1CC2OUTACAEAE
0x1BC1OUTACADAD
0x1AUART2 RTSBCBDBD
0x19UART2 TXDEBCBDBD
0x18UART2 TXBCBDBD
0x17UART1 RTSBCBCCF
0x16UART1 TXDEBCBCCF
0x15UART1 TXBCBCCF
0x14PWM3S1P2_OUTBCBDBD
0x13PWM3S1P1_OUTBCBDBD
0x12PWM2S1P2_OUTBCBDBD
0x11PWM2S1P1_OUTBCBDBD
0x10PWM1S1P2_OUTBCBCCF
0x0FPWM1S1P1_OUTBCBCCF
0x0ECCP2BCBDBD
0x0DCCP1BCBDBD
0x0CCWG1DBCBDBD
0x0BCWG1CBCBDBD
0x0ACWG1BBCBDBD
0x09CWG1ABCBCBC
0x08CLC8OUTBCBDBD
0x07CLC7OUTBCBDBD
0x06CLC6OUTACACAF
0x05CLC5OUTACACAF
0x04CLC4OUTBCBDBD
0x03CLC3OUTBCBDBD
0x02CLC2OUTACACAF
0x01CLC1OUTACACAF
0x00LATxyABCABCDEABCDEF
Note:
  1. Bidirectional pin. The corresponding input must select the same pin.