Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| chipkit_uno32:chipkit_uno32_rev_c [2015/05/15 22:56] – created Joshua Woldstad | chipkit_uno32:chipkit_uno32_rev_c [2022/10/04 11:38] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 175: | Line 175: | ||
| {{ : | {{ : | ||
| - | === JP2 === | + | ==== JP2 ==== |
| **Power select: | **Power select: | ||
| Line 181: | Line 181: | ||
| {{ : | {{ : | ||
| + | |||
| + | **Note:** To protect the PIC32 MCU, a 3.3V on-board regulator will always be | ||
| + | enabled regardless of JP2 settings. | ||
| + | |||
| + | **Note:** If you’re not sure what POWER SELECT does, be safe and keep JP2 on | ||
| + | the two right-most pins so the J4 supply is regulated. | ||
| + | |||
| + | ==== JP4 ==== | ||
| + | |||
| + | **PWM/SPI SLAVE:** Configures pin 10 on J5 to be used as a PWM output or a Slave Select input for use as an SPI slave device. | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | ==== JP5/JP7 ==== | ||
| + | |||
| + | **SPI SELECT:** Used to configure the chipKIT as either a Master or Slave when | ||
| + | using the SPI. The chipKIT board can be connected to another device or even | ||
| + | another chipKIT through the SPI connector (J8). | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | |||
| + | For more information on SPI, please visit Wikipedia’s SPI page: | ||
| + | [[http:// | ||
| + | |||
| + | ==== JP6/JP8 ==== | ||
| + | |||
| + | I²C/ANALOG PIN SELECT: Used to configure A4 and A5 for functionality as an | ||
| + | Analog input or to be used as I²C communication pins. | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | For more information on I²C, please visit Wikipedia’s I²C page at: | ||
| + | [[http:// | ||
| + | |||
| + | ---- | ||
| + | |||
| + | |||
| + | ====== chipKIT Uno32 Hardware Description ====== | ||
| + | |||
| + | ==== MPIDE and USB Serial Communications ==== | ||
| + | |||
| + | The Uno32 board is designed to be used with | ||
| + | the Multi-Platform IDE (MPIDE). Digilent | ||
| + | produced the MPIDE development platform by | ||
| + | modifying the Arduino™ IDE. It is backwardscompatible | ||
| + | with the Arduino IDE. | ||
| + | |||
| + | The MPIDE uses a serial communications port | ||
| + | to communicate with a boot loader running on | ||
| + | the Uno32 board. The serial port on the Uno32 | ||
| + | board is implemented using an FTDI FT232R | ||
| + | USB serial converter. Before attempting to use | ||
| + | the MPIDE to communicate with the Uno32, | ||
| + | the appropriate USB device driver must be | ||
| + | installed. | ||
| + | |||
| + | The Uno32 board uses a standard mini-USB | ||
| + | connector for connection to a USB port on the | ||
| + | PC. | ||
| + | |||
| + | When the MPIDE needs to communicate with | ||
| + | the Uno32 board, the board is reset and starts | ||
| + | running the boot loader. The MPIDE then | ||
| + | establishes communications with the boot | ||
| + | loader and downloads the program to the | ||
| + | board. | ||
| + | |||
| + | When the MPIDE opens the serial | ||
| + | communications connection on the PC, the | ||
| + | DTR pin on the FT232R chip is driven low. | ||
| + | This pin is coupled through a capacitor to the | ||
| + | MCLR pin on the PIC32 microcontroller. | ||
| + | Driving the MCLR line low resets the | ||
| + | microcontroller, | ||
| + | boot loader. | ||
| + | |||
| + | This automatic reset action (when the serial | ||
| + | communications connection is opened) can be | ||
| + | disabled. To disable this operation, there is a | ||
| + | cut-able trace on the bottom of the board | ||
| + | between the pins on JP1. JP1 is normally not | ||
| + | loaded. If the trace between the pins on JP1 | ||
| + | has been cut, the automatic reset operation | ||
| + | can be restored by loading JP1 and inserting a | ||
| + | shorting block across it. | ||
| + | |||
| + | Two red LEDs (LD1 and LD2) will blink when | ||
| + | data is being sent or received between the | ||
| + | Uno32 and the PC over the serial connection. | ||
| + | |||
| + | The header connector J3 provides access to | ||
| + | the other serial handshaking signals provided | ||
| + | by the FT232R. Connector J3 is not loaded at | ||
| + | the factory and can be installed by the user to | ||
| + | access these signals. | ||
| + | |||
| + | ==== Power Supply ==== | ||
| + | |||
| + | The Uno32 is designed to be powered either | ||
| + | via USB or from an external power supply. | ||
| + | There is an automatic switch-over circuit that | ||
| + | causes the external supply to be used if both | ||
| + | supplies are present. | ||
| + | |||
| + | The power supply section in the Uno32 uses | ||
| + | two voltage regulators. The first regulates the | ||
| + | external voltage to 5V to power the VCC5V0 | ||
| + | bus. The second regulates the VCC5V0 bus to | ||
| + | 3.3V to provide power to the VCC3V3 bus that | ||
| + | powers the PIC32 microcontroller. | ||
| + | |||
| + | The 5V voltage regulator is normally an | ||
| + | NCP1117. The board is designed to be able to | ||
| + | also use an LM1117, but the NCP1117 is the | ||
| + | part normally used. The NCP1117 is rated for | ||
| + | an output current of 1A (the LM1117 is rated | ||
| + | for 800mA). The dropout voltage of the | ||
| + | NCP1117 is a maximum of 1.2V at the rated | ||
| + | output current (1.3V for the LM1117). | ||
| + | |||
| + | There is a reverse polarity protection diode in | ||
| + | the external power supply circuit. Considering | ||
| + | the diode drop plus the forward drop across | ||
| + | the regulator, the minimum input voltage to the | ||
| + | regulator should be 7V to produce a reliable 5V | ||
| + | output. The absolute maximum input voltage of | ||
| + | both the NCP1117 and the LM1117 is 20V. | ||
| + | The recommended maximum operating | ||
| + | voltage is 15V. | ||
| + | |||
| + | For input voltages above 9V, the regulator will | ||
| + | get extremely hot when drawing high currents. | ||
| + | Both the NCP1117 and the LM1117 have output short circuit protection and internal | ||
| + | thermal protection and will shut down | ||
| + | automatically to prevent damage. | ||
| + | |||
| + | The 3.3V regulator is a Microchip MCP1725. | ||
| + | This regulator is rated for a maximum output | ||
| + | current of 500mA. The absolute maximum | ||
| + | input voltage for the MCP1725 is 6V. This | ||
| + | regulator has internal short circuit protection | ||
| + | and thermal protection. It will get noticeably | ||
| + | warm when the current consumed by the | ||
| + | VCC3V3 bus is close to the 500mA maximum. | ||
| + | |||
| + | The 5V power bus, VCC5V0 can be powered | ||
| + | from one of three sources: | ||
| + | * the USB5V0 bus when the board is operating under USB power, | ||
| + | * the output of the on-board 5V regulator when operating from an external 7V-15V supply, | ||
| + | * directly from the external supply when operating from a regulated 5V external supply with jumper JP2 in the BYP position. | ||
| + | |||
| + | Switch-over from USB power to external power | ||
| + | is done automatically and the external supply | ||
| + | will be used if both are present. | ||
| + | |||
| + | Jumper JP2 is used to route the external | ||
| + | power supply voltage through the on-board 5V | ||
| + | regulator or directly to the VCC5V0 bus, | ||
| + | bypassing the on-board 5V regulator. | ||
| + | Normally, JP2 is in the REG position. This | ||
| + | routes the external supply through the 5V | ||
| + | regulator. Operation from an externally | ||
| + | regulated 5V supply is provided by placing the | ||
| + | jumper in the BYP position. | ||
| + | |||
| + | The forward drop across the MCP1725 is | ||
| + | typically 210mV (350mV max) at 500mA | ||
| + | output. With JP2 in the BYP position, this will | ||
| + | allow correct operation of the 3.3V power | ||
| + | supply from an input voltage down to 3.5V. | ||
| + | This lets you power the board from batteries | ||
| + | and other lower voltage power sources. In that | ||
| + | case, the VCC5V0 power bus will not be | ||
| + | powered at 5V. | ||
| + | |||
| + | **Note:** When JP2 is in the BYP position, do not | ||
| + | apply more than 6V to the external power | ||
| + | input. This can destroy the 3.3V regulator and | ||
| + | possibly the PIC32 microcontroller as well. | ||
| + | |||
| + | The PIC32 microcontroller is rated to use a | ||
| + | maximum of 75mA of current when operating | ||
| + | at 80Mhz. This allows up to 425mA from the | ||
| + | VCC3V3 bus and up to 925mA from the | ||
| + | VCC5V0 bus to power external devices. | ||
| + | |||
| + | The POWER connector, J2, is used to power | ||
| + | shields connected to the Uno32 board. The | ||
| + | following pins are provided on this connector: | ||
| + | |||
| + | **P32_RST** (pin 1): This connects to the MCLR | ||
| + | pin on the PIC32 microcontroller and can be | ||
| + | used to reset the PIC32. | ||
| + | |||
| + | **VCC3V3** (pin 2): This routes the 3.3V power | ||
| + | bus to shields. This pin can provide ~425mA. | ||
| + | |||
| + | **VCC5V0** (pin 3): This routes the 5V power | ||
| + | bus to shields. This pin can provide up to | ||
| + | ~900mA to shields, however the total | ||
| + | provided by pins 2 and 3 shouldn’t exceed | ||
| + | 925mA. | ||
| + | |||
| + | **GND** (pin 4, 5): This provides a common | ||
| + | ground connection between the Uno32 and | ||
| + | the shields. | ||
| + | |||
| + | **VIN** (pin 6): This connects to the voltage | ||
| + | provided at the external power supply | ||
| + | connector. This can be used to provide | ||
| + | unregulated input power to the shield. It can | ||
| + | also be used to power the Uno32 board from | ||
| + | the shield instead of from the external power | ||
| + | connector. | ||
| + | |||
| + | |||
| + | ---- | ||
| + | |||
| + | ====== 5V Compatibility ====== | ||
| + | |||
| + | The PIC32 microcontroller operates at 3.3V. | ||
| + | The original Arduino boards operate at 5V as | ||
| + | do many Arduino shields. | ||
| + | |||
| + | There are two issues to consider when dealing | ||
| + | with 5V compatibility for 3.3V logic. The first is | ||
| + | protection of 3.3V inputs from damage caused | ||
| + | by 5V signals. The second is whether the 3.3V | ||
| + | output is high enough to be recognized as a | ||
| + | logic high value by a 5V input. | ||
| + | |||
| + | The digital I/O pins on the PIC32 | ||
| + | microcontroller are 5V tolerant. The analog | ||
| + | capable I/O pins are not 5V tolerant. To | ||
| + | provide 5V tolerance on those pins, the Uno32 | ||
| + | contains clamp diodes and current limiting | ||
| + | resistors to protect them from 5V input | ||
| + | voltages. | ||
| + | |||
| + | The fact that all I/O pins are 5V tolerant means | ||
| + | that it is safe to apply 5V logic levels to any | ||
| + | pins on the board without risk of damaging the | ||
| + | PIC32 microcontroller. | ||
| + | |||
| + | The minimum high-voltage output of the PIC32 | ||
| + | microcontroller is rated at 2.4V when sourcing | ||
| + | 12mA of current. When driving a high | ||
| + | impedance input (typical of CMOS logic) the | ||
| + | output high voltage will be close to 3.3V. Some | ||
| + | 5V devices will recognize this voltage as a | ||
| + | logic high input, and some won’t. Many 5V | ||
| + | logic devices will work reliably with 3.3V inputs. | ||
| + | |||
| + | ---- | ||
| + | |||
| + | ====== Input/ | ||
| + | |||
| + | The Uno32 board provides 42 of the I/O pins | ||
| + | from the PIC32 microcontroller to pins on the | ||
| + | input/ | ||
| + | |||
| + | The PIC32 microcontroller can source or sink a | ||
| + | maximum of 18mA on all digital I/O pins. | ||
| + | However, to keep the output voltage within the | ||
| + | specified voltage range (VOL 0.4V, VOH 2.4V) | ||
| + | the pin current must be restricted to +7/-12mA. | ||
| + | The maximum current that can be sourced or | ||
| + | sunk across all I/O pins simultaneously is +/- | ||
| + | 200mA. The maximum voltage that can be | ||
| + | applied to any I/O pin is 5.5V. For more | ||
| + | detailed specifications, | ||
| + | PIC32MX3XX/ | ||
| + | the Microchip web site. | ||
| + | |||
| + | Connectors J5 and J6 are 2x8 female pin | ||
| + | header connectors that provide digital I/O | ||
| + | signals. The outer row of pins (closer to the | ||
| + | board edge) corresponds to the I/O connector | ||
| + | pins on an Arduino Uno or Duemilanove board. | ||
| + | The inner row of pins provides access to the | ||
| + | extra I/O signals provided by the PIC32 | ||
| + | microcontroller. | ||
| + | |||
| + | Connector J7 is a 2x6 female pin header | ||
| + | connector that provides access to the analog | ||
| + | input pins on the microcontroller. The outer row | ||
| + | of pins corresponds to the six analog pins on | ||
| + | an Arduino Uno or Duemilanove. The inner row | ||
| + | of pins are the additional I/O signals provided | ||
| + | by the PIC32 microcontroller. The analog pins | ||
| + | on J7 can also be used as digital I/O pins. | ||
| + | |||
| + | The chipKIT/ | ||
| + | numbers to identify digital I/O pins on the | ||
| + | connectors. The logical pin numbers for the I/O | ||
| + | pins on the Uno32 are 0-43. These pin | ||
| + | numbers are labeled in the silk screen on the | ||
| + | board. | ||
| + | |||
| + | Pin numbers 0-13 are the outer row of pins on | ||
| + | J6 and J5, from right to left. Pin numbers 14-19 | ||
| + | are the outer row of pins on J7 from left to | ||
| + | right. Pins 20-25 are the inner row of pins on | ||
| + | J7 from left to right. Pin numbers 26-41 are the | ||
| + | inner row of pins on J6 and J5 from right to left. | ||
| + | Pin 42 is the pin labeled A on J5. This pin is | ||
| + | normally the reference voltage for the | ||
| + | microcontroller’s A/D converter, but can also | ||
| + | be used as a digital I/O pin. | ||
| + | |||
| + | In addition to the connector pin, Pin 13 also | ||
| + | connects to the user LED LD4. Pin 43 | ||
| + | connects to user LED LD5. Pin 43 pin does not | ||
| + | go to any connector. | ||
| + | |||
| + | The analog inputs on connector J7 are | ||
| + | assigned pin numbers. The outer row of pins | ||
| + | on J7 are analog inputs A0-A5. The inner row | ||
| + | of pins are A6-A11. These pins are also | ||
| + | assigned digital pin numbers: A0-A5 are digital | ||
| + | pins 14-19, and A6-A11 are 20-25. | ||
| + | |||
| + | |||
| + | ---- | ||
| + | |||
| + | ====== Peripheral I/O Functions | ||
| + | |||
| + | The PIC32 microcontroller on the Uno32 board provides a number of peripheral functions. The following peripherals are provided: | ||
| + | |||
| + | ====UART port 1:==== Asynchronous serial port. Pin 0 | ||
| + | (RX), Pin 1 (TX). These pins are connected to | ||
| + | I/O connector J6 and are also connected to the | ||
| + | FT232R USB serial converter. It is possible to | ||
| + | use these pins to connect to an external serial device when not using the USB serial | ||
| + | interface. This uses UART1 (U1RX, U1TX) on | ||
| + | the PIC32 microcontroller. | ||
| + | |||
| + | ====UART port 2: ==== | ||
| + | Asynchronous serial port. Pin 39 | ||
| + | (RX), Pin 40 (TX). This uses UART2 (U2RX, | ||
| + | U2TX) on the PIC32 microcontroller. | ||
| + | |||
| + | ==== SPI: ==== | ||
| + | |||
| + | Synchronous serial port. Pin 10 (SS), Pin | ||
| + | 11 (MOSI), Pin 12 (MISO), Pin 13 (SCK). This | ||
| + | uses SPI2 (SS2, SDI2, SDO2, SCK2) on the | ||
| + | PIC32 microcontroller These signals also | ||
| + | appear on connector J8. | ||
| + | |||
| + | Jumpers JP5 and JP7 are used to select | ||
| + | whether the Uno32 operates as a Master | ||
| + | (transmit on MOSI, receive on MISO) or a | ||
| + | Slave (transmit on MISO, receive on MOSI) | ||
| + | device. The shorting blocks on JP5 and JP7 | ||
| + | are normally placed in the Master position for | ||
| + | the Uno32 to function as an SPI master. | ||
| + | |||
| + | Jumper JP4 is used to select PWM output or | ||
| + | the SPI SS function on Pin 10. The shorting | ||
| + | block on JP4 should be in the RD4 position to | ||
| + | select PWM output. It should be in the RG9 | ||
| + | position to select the SPI SS function.. JP4 will | ||
| + | normally be in the RD4 position. In general, the | ||
| + | only time it needs to be in the RG9 position is | ||
| + | when the Uno32 board is being used as an SPI | ||
| + | slave device. | ||
| + | |||
| + | ==== I²C: ==== | ||
| + | |||
| + | Synchronous serial interface. The PIC32 | ||
| + | microcontroller shares analog pins A4 and A5 | ||
| + | with the two I²C signals SDA and SCL. | ||
| + | Jumpers JP6 and JP8 are used to select | ||
| + | whether the analog pin functions or the I²C pin functions are being used. The shorting blocks | ||
| + | are placed in the A4/A5 position to select the | ||
| + | analog input function or general digital I/O. | ||
| + | They are placed in the RG3/RG2 position to | ||
| + | use the pins for I²C operation. This uses I²C1 | ||
| + | (SDA1, SCL1) on the PIC32 microcontroller. | ||
| + | |||
| + | **Note:** | ||
| + | |||
| + | The I²C bus uses open collector drivers | ||
| + | to allow multiple devices to drive the bus | ||
| + | signals. This means that pull-up resistors must | ||
| + | be provided to supply the logic high state for | ||
| + | the signals. These pull-up resistors are not on | ||
| + | the Uno32 board and must be provided | ||
| + | externally. The required resistance of the pullup | ||
| + | resistor to use depends on the total number | ||
| + | of devices on the bus, the length of wire, and | ||
| + | the clock speed being used. It essentially | ||
| + | depends on distributed capacitance on the | ||
| + | bus. The higher the distributed capacitance | ||
| + | and the faster the clock speed, the smaller the | ||
| + | resistance should be. Values typically used are | ||
| + | in the range of 2K to 10K ohms. | ||
| + | |||
| + | ==== PWM: ==== | ||
| + | |||
| + | Pulse width modulated output. Pins 3 | ||
| + | (OC1), 5 (OC2), 6 (OC3), 9 (OC4), and 10 | ||
| + | (OC5). | ||
| + | |||
| + | |||
| + | ==== External Interrupts: ==== | ||
| + | |||
| + | Pin 38 (INT0), Pin 2 | ||
| + | (INT1), Pin 7 (INT2), Pin 8 (INT3), Pin 35 | ||
| + | (INT4) | ||
| + | |||
| + | ==== User LEDs: ==== | ||
| + | |||
| + | Pin 13 (LD4), Pin 43 (LD5). Pin 13 | ||
| + | is shared between a connector pin and the | ||
| + | LED. Pin 43 only goes to the LED and not any | ||
| + | connector pin. Driving the pin high turns the | ||
| + | LED on, driving it low turns it off. | ||
| + | |||
| + | ====A/D Converter Reference: | ||
| + | |||
| + | Labeled A, the leftmost | ||
| + | outer pin on connector J5. This is used to | ||
| + | provide an external voltage reference to | ||
| + | determine the input voltage range of the | ||
| + | analog pins. The maximum voltage that can be | ||
| + | applied to this pin is 3.3V. This pin can also be | ||
| + | used as digital pin 42. | ||
| + | |||
| + | ==== RTCC: ==== | ||
| + | |||
| + | Real Time Clock Calendar. The PIC32 | ||
| + | microcontroller contains an RTCC circuit that | ||
| + | can be used to maintain time and date | ||
| + | information. The operation of the RTCC | ||
| + | requires a 32.768Khz frequency source. | ||
| + | Crystal X2 (not loaded), just above and to the | ||
| + | right of the PIC32 microcontroller IC, is | ||
| + | provided for you to solder a 32Khz watch | ||
| + | crystal. The Citizen CFS206-32.768KDZF-UB | ||
| + | crystal can be used in this location. | ||
| + | |||
| + | ==== RESET: ==== | ||
| + | |||
| + | The PIC32 microcontroller is reset by | ||
| + | bringing its MCLR pin low. The MCLR pin is | ||
| + | connected to the P32_RST net on the circuit | ||
| + | board. | ||
| + | |||
| + | As described earlier, reset of the PIC32 | ||
| + | microcontroller can be initiated by the USB serial converter. The USB serial converter | ||
| + | brings the DTR pin low to reset the | ||
| + | microcontroller. Jumper JP1 can be used to | ||
| + | enable/ | ||
| + | converter to initiate a reset. | ||
| + | |||
| + | The P32_RST net is connected to pin 1 of | ||
| + | connector J2. This allows circuitry on a shield | ||
| + | to reset the microcontroller, | ||
| + | the circuitry on the shield is reset at the same | ||
| + | time as the microcontroller. | ||
| + | Connector J8 provides access to the SPI bus. | ||
| + | Pin 5 provides access to the SPI Slave Select | ||
| + | signal (SS). | ||
| + | |||
| + | On Arduino boards, the corresponding | ||
| + | connector is also used as an in-system | ||
| + | programming connector as well as providing | ||
| + | access to some of the SPI signals. On Arduino | ||
| + | boards, pin 5 of this connector is connected to | ||
| + | the reset net. | ||
| + | |||
| + | Some Arduino shields, notably, the Ethernet | ||
| + | shield, connect pin 5 to the reset net on pin 1 | ||
| + | of connector J2. This causes the processor to | ||
| + | be reset each time an attempt is made to | ||
| + | access the SPI port. Jumper JP9 can be used | ||
| + | to break the connection between J8 pin 5 and | ||
| + | reset when using Arduino shields that make | ||
| + | this connection. JP9 has a cut-able trace on | ||
| + | the bottom of the board that can be cut to | ||
| + | break the connection between SPI SS and | ||
| + | reset. JP9 is not loaded at the factory. To | ||
| + | restore the connection, solder a two pin header | ||
| + | at the JP9 position and install a shorting block. | ||
| + | |||
| + | A reset button is at the upper left corner of the | ||
| + | board. Pressing this button resets the PIC32 | ||
| + | microcontroller. | ||
| + | |||
| + | |||
| + | ---- | ||
| + | |||
| + | ====== Microchip Development Tool Compatibility ====== | ||
| + | |||
| + | In addition to being used with the MPIDE, the | ||
| + | Uno32 board can be used as a more traditional | ||
| + | microcontroller development board using | ||
| + | Microchip Development Tools. | ||
| + | |||
| + | Unloaded connector JP3 on the left side of the | ||
| + | board is used to connect to a Microchip | ||
| + | development tool, such as the PICkit3™. The | ||
| + | holes for JP3 are staggered so that a standard | ||
| + | 100-mil spaced 6-pin header can be press fit to | ||
| + | the board without the need to solder it in place. | ||
| + | Any Microchip development tool that supports | ||
| + | the PIC32 microcontroller family, and can be | ||
| + | connected via the same 6-pin interface as the | ||
| + | PICkit3, can be used. | ||
| + | |||
| + | Typically, a right-angle male connector is used | ||
| + | in JP3 so that a PICkit3 can be attached | ||
| + | coplanar with the Uno32 board. The connector | ||
| + | can be loaded from the top, or it can be loaded | ||
| + | from the bottom. In either case the PICkit3 will | ||
| + | be upright (button and LEDs visible). | ||
| + | |||
| + | If JP3 is loaded from the top, the PICkit3 will | ||
| + | interfere with the USB connector and the | ||
| + | external power connector. A short six-wire | ||
| + | cable can be used between the PICkit3 and | ||
| + | the Uno32. If JP3 is loaded from the bottom, | ||
| + | the PICkit3 won’t interfere with the USB and | ||
| + | external power connectors. | ||
| + | |||
| + | The Digilent PICkit3 Programming Cable Kit | ||
| + | includes all necessary connectors and a cable | ||
| + | for connecting a PICkit3 to the Uno32. | ||
| + | The Microchip MPLAB® IDE or the MPLAB® X | ||
| + | IDE can be used to program and debug code | ||
| + | running on the Uno32 board. These programs | ||
| + | can be downloaded from the Microchip web | ||
| + | site. | ||
| + | |||
| + | Using the Microchip development tools to | ||
| + | program the Uno32 board will cause the boot | ||
| + | loader to be erased. To use the board with the | ||
| + | MPIDE again, it is necessary to program the | ||
| + | boot loader back onto the board. The boot | ||
| + | loader source code and compiled image can | ||
| + | be found in the MPIDE software download. | ||
| + | |||
| + | ---- | ||
| + | |||
| + | ======Pinout Tables====== | ||
| + | |||
| + | The following tables give the relationship | ||
| + | between the chipKIT digital pin numbers, the | ||
| + | connector pin numbers and the microcontroller | ||
| + | pin numbers. | ||
| + | |||
| + | In the following tables, columns labeled | ||
| + | chipKIT pin # refer to the digital pin number. | ||
| + | This is the value that is passed to the | ||
| + | pinMode(), digitalRead(), | ||
| + | other functions to refer to the pin. | ||
| + | |||
| + | For most pins, this pin number will agree with | ||
| + | the pin number labeled on the board. For the | ||
| + | pins whose function can be switched using | ||
| + | jumpers, the pin number labeled on the board | ||
| + | is correct when the jumper is in the ‘normal’ | ||
| + | position. | ||
| + | |||
| + | For example: The normal position for JP4 is | ||
| + | the RD4 position. The digital pin number for | ||
| + | the microcontroller signal RD4 is 10. With JP4 | ||
| + | in the RD4 position, digital pin 10 is connected | ||
| + | to the pin labeled 10 on the board. The | ||
| + | alternate position for JP4 is the RG9 position. | ||
| + | The digital pin number for the microcontroller | ||
| + | signal RG9 is 44. With JP4 in the RG9 | ||
| + | position, digital pin 44 is connected to the pin | ||
| + | labeled 10 on the board, and digital pin 10 is | ||
| + | not connected. | ||
| + | |||
| + | The pin labeled 10 on the board is connected | ||
| + | to connector J5 pin 5. This is shown as J5-05 | ||
| + | in the following tables. In the ‘Pinout Table by | ||
| + | Shield Connector Pin’ table below, J5-05 is | ||
| + | shown has being either chipKIT pin # 10 or 44. | ||
| + | J5-04 is connected to chipKIT pin # 10 when | ||
| + | JP4 is in the RD4 position and is connected to | ||
| + | chipKIT pin # 44 when in the RG9 position. | ||
| + | |||
| + | |||
| + | ---- | ||
| + | |||
| + | ====== Pinout Table by Logical Pin Number ====== | ||
| + | | chipKIT Pin # | Connector Pin # | PIC32 Pin # | PIC32 Signal | ||
| + | | 0 | J6-01 | 34 | U1RX/ | ||
| + | | 1 | J6-03 | 33 | U1TX/ | ||
| + | | 2 | J6-05 | 42 | IC1/ | ||
| + | | 3 | J6-07 | 46 | OC1/ | ||
| + | | 4 | J6-09 | 59 | RF1 | ||
| + | | 5 | J6-11 | 49 | OC2/ | ||
| + | | 6 | J6-13 | 50 | OC3/ | ||
| + | | 7 | J6-15 | 43 | IC2/ | ||
| + | | 8 | J5-01 | 44 | IC3/ | ||
| + | | 9 | J5-03 | 51 | OC4/ | ||
| + | | 10 | J5-05 | 52 | PMWR/ | ||
| + | | 11 | J5-07 | 6 | SDO2/ | ||
| + | | 12 | J5-09 | 5 | SDI2/ | ||
| + | | 13 | J5-11 | 4 | SCK2/ | ||
| + | | 14/A0 | J7-01 | 14 | C2IN-/ | ||
| + | | 15/A1 | J7-03 | 12 | C1IN-/ | ||
| + | | 16/A2 | J7-05 | 21 | U2CTS/ | ||
| + | | 17/A3 | J7-07 | 23 | TMS/ | ||
| + | | 18/A4 | J7-09 | 27 | TCK/ | ||
| + | | 19/A5 | J7-11 | 29 | PMALH/ | ||
| + | | 20/A6 | J7-02 | 13 | C2IN+/ | ||
| + | | 21/A7 | J7-04 | 11 | C1IN+/ | ||
| + | | 22/A8 | J7-06 | 22 | PMA7/ | ||
| + | | 23/A9 | J7-08 | 24 | TDO/ | ||
| + | | 24/ | ||
| + | | 25/ | ||
| + | | 26 | J6-02 | 60 | PMD0/ | ||
| + | | 27 | J6-04 | 61 | PMD1/ | ||
| + | | 28 | J6-06 | 62 | PMD2/ | ||
| + | | 29 | J6-08 | 63 | PMD3/ | ||
| + | | 30 | J6-10 | 64 | PMD4/ | ||
| + | | 31 | J6-12 | 1 | PMD5/ | ||
| + | | 32 | J6-14 | 2 | PMD6/ | ||
| + | | 33 | J6-16 | 3 | PMD7/ | ||
| + | | 34 | J5-02 | 53 | PMRD/ | ||
| + | | 35 | J5-04 | 45 | IC4/ | ||
| + | | 36 | J5-06 | 54 | CN15/ | ||
| + | | 37 | J5-08 | 55 | CN16/ | ||
| + | | 38 | J5-10 | 35 | U1RTS/ | ||
| + | | 39 | J5-12 | 31 | PMA9/ | ||
| + | | 40 | J5-14 | 32 | PMA8/ | ||
| + | | 41 | J5-16 | 15 | PGC1/ | ||
| + | | 42 | J5-15 | 16 | PGED1/ | ||
| + | | 43 | N/A | 58 | RF0 | User LED LD5 | | ||
| + | | 44 | J5-05 | 8 | PMA2/ | ||
| + | | 45 | J7-09 | 36 | SDA1/ | ||
| + | | 46 | J7-11 | 37 | SCL1/ | ||
| + | |||

