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
0x23 ADGRDB
0x22 ADGRDA
0x21 CLKR
0x20 NCO1
0x1F TMR0
0x1E SDA2/SDO2(1)
0x1D SCL2/SCK2(1)
0x1C SDA1/SDO1(1)
0x1B SCL1/SCK1(1)
0x1A C2_OUT
0x19 C1_OUT
0x18 DT2
0x17 Reserved
0x16 TX2/CK2
0x15 DT1
0x14 Reserved
0x13 TX1/CK1
0x12 Reserved
0x11 Reserved
0x10 Reserved
0x0F Reserved
0x0E PWM2S1P2_OUT
0x0D PWM2S1P1_OUT
0x0C PWM1S1P2_OUT
0x0B PWM1S1P1_OUT
0x0A CCP2
0x09 CCP1
0x08 CWG1D
0x07 CWG1C
0x06 CWG1B
0x05 CWG1A
0x04 CLC4_OUT
0x03 CLC3_OUT
0x02 CLC2_OUT
0x01 CLC1_OUT
0x00 LATxy
Note:
  1. 1.Bidirectional pin. The corresponding input must select the same pin.