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
0x1C ADGRDB
0x1B ADGRDA
0x1A NCO1
0x19 TMR0
0x18 SDA2/SDO2(1)
0x17 SCL2/SCK2(1)
0x16 SDA1/SDO1(1)
0x15 SCL1/SCK1(1)
0x14 C1_OUT
0x13 DT2
0x12 Reserved
0x11 TX2/CK2
0x10 DT1
0x0F Reserved
0x0E TX1/CK1
0x0D PWM5
0x0C PWM4
0x0B PWM3
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.