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 1. PPS Output Selection Table
RxyPPS Output Source Available Output Ports
14-Pin Devices 20-Pin Devices
0x1F ADGRDB A C A B C
0x1E ADGRDA A C A B C
0x1D I2C1 SDA(1) A C A B C
0x1C I2C1 SCL(1) A C A B C
0x1B SPI1 SS A C A B C
0x1A SPI1 SDO A C A B C
0x19 SPI1 SCK A C A B C
0x18 UART2 TXDE A C A B C
0x17 UART2 RTS A C A B C
0x16 UART2 TX A C A B C
0x15 UART1 TXDE A C A B C
0x14 UART1 RTS A C A B C
0x13 UART1 TX A C A B C
0x12 CLC4OUT A C A B C
0x11 CLC3OUT A C A B C
0x10 CLC2OUT A C A B C
0x0F CLC1OUT A C A B C
0x0E CWG1D A C A B C
0x0D CWG1C A C A B C
0x0C CWG1B A C A B C
0x0B CWG1A A C A B C
0x0A PWM2S1P2_OUT A C A B C
0x09 PWM2S1P1_OUT A C A B C
0x08 PWM1S1P2_OUT A C A B C
0x07 PWM1S1P1_OUT A C A B C
0x06 CCP2 A C A B C
0x05 CCP1 A C A B C
0x04 TU16B A C A B C
0x03 TU16A A C A B C
0x02 TMR0 A C A B C
0x01 CLKR A C A B C
0x00 LATxy A C A B C
Note:
  1. 1.Bidirectional pin. The corresponding input must select the same pin.