dsPIC33/PIC24 Family Reference Manual
DS30009711C-page 8 2006-2019 Microchip Technology Inc.
3.2 Multiplexing Digital Output Peripheral
• Peripheral controls output data and PORTx register has no effect.
• PORTx register can read pin value.
• Pad output driver type is selected by peripheral (e.g., drive strength, slow rate, etc.).
• User needs to configure the pin as an output by clearing the associated TRISx bit.
• If an output has an automatic tri-state feature (e.g., PWM outputs), the peripheral has the
ability to tri-state the pin.
3.3 Multiplexing Digital Bidirectional Peripheral
• Peripheral can automatically configure the pin as an output but not as an input. User needs
to configure the pin as an input by setting the associated TRISx bit.
• Peripherals control output data and PORTx register has no effect.
• PORTx register can read pin value.
• Pad output driver type could be affected by peripheral (e.g., drive strength, slow rate, etc.).
3.4 Multiplexing Analog Input Peripheral
• All digital port input buffers are disabled and PORTx registers read ‘0’ to prevent crowbar current.
3.5 Multiplexing Analog Output Peripheral
• All digital port input buffers are disabled and PORTx registers read ‘0’ to prevent crowbar current.
• Analog output is driven onto the pin independent of the associated TRISx setting.
3.6 Software Input Pin Control
Some of the functions assigned to an I/O pin may be input functions that do not take control of
the pin output driver. An example of one such peripheral is the input capture module. If the I/O
pin associated with the input capture is configured as an output, using the appropriate
TRIS control bit, the user can manually affect the state of the input capture pin through its
corresponding PORT register. This behavior can be useful in some situations, especially for
testing purposes, when no external signal is connected to the input pin.
Referring to Figure 3-1, the organization of the peripheral multiplexers will determine if the peripheral
input pin can be manipulated in software using the PORT register. The conceptual peripherals shown
in this figure disconnect the port data from the I/O pin when the peripheral function is enabled.
In general, the following peripherals allow their input pins to be controlled manually through the
PORT registers:
• External Interrupt pins
• Timer Clock Input pins
• Input Capture pins
• PWM Fault pins
Most serial communication peripherals, when enabled, take full control of the I/O pin so that the
input pins associated with the peripheral cannot be affected through the corresponding PORT
registers. These peripherals include the following:
• SPI
•I
2
C
•UART
Note: In order to use pins multiplexed with the A/D for digital I/O, the corresponding bits in
the AD1PCFG register must be set to ‘1’, even if the A/D module is turned off.