7/30/2019
Basys MX3 Reference Manual [Reference.Digilentinc]
https://reference.digilentinc.com/reference/microprocessor/basys-mx3/reference-manual?_ga=2.68739409.1349070004.1564406803-1961480359.…
35/52
As you can see from the schematic, the S0_PWM signal shares the same PIC32 pin with BTNR and the S1_PWM signals shares the same
PIC32 pin with BTND (see User Buttons). These buttons should not be used in designs that are also using servos.
Basys MX3 features an onboard FIR-compatible IrDA module. The part used is the ROHM Semiconductor RPM973-H11. The RPM973-
H11 is a high-performance IrDA module that integrates an infrared remote control transmission function and a high-speed (4Mbps) FIR-
compatible IrDA module. It features an LED () for transmitting and a PIN photo diode for receiving.
The PIC32 communicates with the IrDA module via two pins (named from PIC32 perspective): IR_TX, connected to the TXD pin of the
RPM973 and used for transmitting over IRDA, and IR_RX, connected to the RXD pin of the RPM973 and used for receiving data over
IrDA. Also, an IR_PDOWN signal, connected to the PWDOWN pin of the RPM973, is used by the microcontroller to enable (0 value) or
disable (1 value) the module.
When TXD (IR_TX) is 1, the transmitting LED () of the RPM973 module is lit. When the PIN photo diode detects light, it outputs 1 on
RXD (IR_RX).
The following table shows the signals connecting the IRDA module to the PIC32:
Table 16.1. IrDA connectivity.
Name
PIC32 Pin
IrDA Module Pin
IRDA_PDOWN
RPG1/PMD9/RG1
PWDOWN/Mode
IR_TX
PGED2/AN7/RPB7/CTED3/RB7
TXD
IR_RX
PGEC2/AN6/RPB6/RB6
RXD
The IRDA_PDOWN and IR_TX must be defined as digital outputs and disable the analog functionality on IR_TX:
TRISGbits.TRISG1 = 0; //set RG1 (IRDA_PDOWN) as an output
TRISBbits.TRISB7 = 0; //set RB7 (IR_TX) as an output
ANSELBbits.ANSB7 = 0; //disable analog functionality on RB7 (IR_TX)
The IR_RX must be defined as digital input and the analog functionality disabled:
TRISBbits.TRISB6 = 1; //set RB6 (IR_RX) as an input
ANSELBbits.ANSB6 = 0; //disable analog functionality on RB6 (IR_RX)
16. IrDA Module
16.1. Connectivity