Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| chipkit_pro_mx7:refmanual [2015/03/11 20:42] – Joshua Woldstad | chipkit_pro_mx7:refmanual [2022/10/04 11:38] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 5: | Line 5: | ||
| **Revised: | **Revised: | ||
| - | This manual applies to the ChipKIT | + | This manual applies to the chipKIT |
| - | {{ : | + | {{: |
| - | ===== Overview ===== | + | ---- |
| - | ChipKIT Pro MX7is the new name for Cerebot MX7. This board retains all functionality of the Cerebot MX7. | + | ====== Overview ====== |
| - | The ChipKIT Pro MX7 is a microcontroller development board based on the Microchip PIC32MX795F512L, | ||
| - | member of the 32-bit PIC32 microcontroller family. It is compatible with Digilent’s line of Pmod™ peripheral | ||
| - | modules, and is suitable for use with the Microchip MPLAB® IDE tools. The ChipKIT Pro MX7 is also compatible for | ||
| - | use with the chipKIT™ MPIDE development environment. ChipKIT MPIDE is a PIC32 based system compatible with | ||
| - | many existing Arduino™ code examples, reference materials, and other resources. | ||
| - | The ChipKIT | + | chipKIT |
| - | users for experimenting with embedded control and network communications application. A built in | + | |
| - | programming/ | + | |
| - | is required | + | |
| - | using either | + | |
| - | The ChipKIT | + | The chipKIT |
| - | ports, as well as five pulse width modulated outputs | + | |
| - | communications features | + | |
| - | network interfaces. Ten of the I/O pins can be used as analog inputs in addition to their use as digital inputs and | + | |
| - | outputs. | + | |
| - | The ChipKIT | + | The chipKIT |
| + | The chipKIT Pro MX7 provides 52 I/O pins that support a number of peripheral functions, such as UART, SPI, I2C™ ports, as well as five pulse-width modulated outputs and five external interrupt inputs. Its network and communications features also include a 10/100 Ethernet interface, Full Speed USB 2.0 OTG interface, and dual CAN network interfaces. Ten of the I/O pins can be used as analog inputs in addition to their use as digital inputs and outputs. | ||
| + | The chipKIT Pro MX7 can be powered in various ways via USB, or using an external AC-DC power adapter. | ||
| - | Features of the ChipKIT | + | |
| + | Features of the chipKIT | ||
| * PIC32MX795F512L microcontroller | * PIC32MX795F512L microcontroller | ||
| * Support for programming and debugging within the Microchip MPLAB development environment | * Support for programming and debugging within the Microchip MPLAB development environment | ||
| * Support for programming within the chipKIT MPIDE development environment | * Support for programming within the chipKIT MPIDE development environment | ||
| - | * Six Pmod connectors | + | * Six Pmod ports for Digilent peripheral module boards |
| * 10/100 Ethernet | * 10/100 Ethernet | ||
| * USB 2.0 compatible Device, Host, and OTG support | * USB 2.0 compatible Device, Host, and OTG support | ||
| Line 49: | Line 39: | ||
| * Multiple power supply options, including USB powered | * Multiple power supply options, including USB powered | ||
| * ESD protection and short circuit protection for all I/O pins. | * ESD protection and short circuit protection for all I/O pins. | ||
| - | |||
| - | |||
| - | ===== Functional Description ===== | ||
| - | |||
| - | The ChipKIT Pro MX7 is designed for embedded control and network communications applications as well as for | ||
| - | general microprocessor experimentation. Firmware suitable for many applications can be downloaded to the | ||
| - | ChipKIT Pro MX7’s programmable PIC32 microcontroller. | ||
| - | |||
| Features of the PIC32MX795F512L include: | Features of the PIC32MX795F512L include: | ||
| + | {{: | ||
| * 512KB internal program flash memory | * 512KB internal program flash memory | ||
| * 128KB internal SRAM memory | * 128KB internal SRAM memory | ||
| Line 77: | Line 59: | ||
| - | The ChipKIT Pro MX7 has a number of input/ | + | ---- |
| - | line of Pmod peripheral modules that provide various input and output functions. For more information, | + | |
| - | www.digilentinc.com. In addition to the Pmod connectors, the board provides three push buttons and four LEDs | + | |
| - | for user I/O, as well as providing connections for two I2C busses. A serial EEPROM is provided on one of the I2C | + | |
| - | busses. | + | |
| - | The ChipKIT Pro MX7 features a flexible power supply system with a number of options for powering the board as | + | ======= Functional Description ======= |
| - | well as powering peripheral devices connected to the board. It can be USB powered via the debug USB port, the | + | |
| - | USB UART serial port, or the USB device port. It can also be powered from an external 5V power supply. | + | |
| + | The chipKIT Pro MX7 is designed for embedded control and network communications applications as well as general microprocessor experimentation. Firmware suitable for many applications can be downloaded to the chipKIT Pro MX7’s programmable PIC32 microcontroller. | ||
| - | ===== 1 Programming Tools ===== | + | The chipKIT Pro MX7 has a number of input/ |
| + | The chipKIT Pro MX7 features a flexible power supply system with a number of options for powering the board as well as powering peripheral devices connected to the board. It can be USB powered via the debug USB port, the USB UART serial port, or the USB device port. It can also be powered from an external 5V power supply. | ||
| - | The ChipKIT Pro MX7 can be used with either the Microchip MPLAB® development environment or the chipKIT | ||
| - | MPIDE development environment. When used with the MPLAB® IDE, in-system-programming and debugging of | ||
| - | firmware running on the PIC32MX795 microcontroller is supported using an on-board programming/ | ||
| - | circuit licensed from Microchip. | ||
| - | The ChipKIT Pro MX7 is immediately useable with either the MPLAB IDE or the MPIDE. No additional hardware is | + | ---- |
| - | required to use the board with the Microchip MPLAB tools. | + | |
| - | ==== 1.1 Using the ChipKIT Pro MX7 with Microchip Development | + | ====== Programming |
| - | The Microchip | + | The chipKIT Pro MX7 can be used with either the Microchip |
| - | Pro MX7 board using the built-in programming/ | + | |
| - | The MPLAB development environment can be downloaded from the Microchip web site. This software suite | + | The chipKIT Pro MX7 is immediately useable with either the MPLAB IDE or the MPIDE. No additional hardware is required to use the board with the Microchip |
| - | includes a free evaluation copy of the Microchip C32 compiler for use with the PIC32 microcontroller family. The | + | |
| - | licensed debugger is compatible | + | |
| - | When creating a new project, use the “Configure.Select Device…” menu to specify the PIC32 device being used. | ||
| - | Ensure that the device is set to PIC32MX795F512L. | ||
| - | In order to use the on-board programming/ | + | ===== Using the chipKIT Pro MX7 with Microchip Development Tools ===== |
| - | within the MPLAB IDE. Use the “Debugger.Select Tool” menu, or the “Programmer.Select Tool” menu, and select | + | |
| - | “Licensed Debugger” as the programmer or debugger. | + | |
| - | The licensed debugger interface uses USB connector J15, labeled DEBUG. Connector J15 is a USB micro-B | ||
| - | connector located on the left side of the board below the Ethernet RJ45 connector. Use a USB-A to micro-B cable | ||
| - | (provided with the board) to connect to an available USB port on the PC. | ||
| - | When the licensed debugger is selected as the programming | + | The Microchip MPLAB IDE or the MPLAB X IDE can be used to program and debug code running on the chipKIT Pro MX7 board using the built-in programming/ |
| - | version number of the firmware | + | |
| - | MPLAB being used. | + | |
| - | The PIC32 in-system programming/ | + | The MPLAB development environment can be downloaded from the Microchip website. This software suite includes a free evaluation copy of the Microchip C32 compiler |
| - | support two alternate pin pairs for this interface: PGC1/PGD1 or PGC2/PGD2. The PGC2/PGD2 pair is used by | + | |
| - | default. Due to conflicting uses of the microcontroller pins, the ChipKIT Pro MX7 is designed to use the PGC1/PGD1 | + | |
| - | pair of pins. Because of this, it is necessary to select the use of PGC1/PGD1 for the debugging interface. This is | + | |
| - | done using configuration variables set using the #pragma config statement. The following statement must be | + | |
| - | used to configure the microcontroller for use with the on-board licensed debugger circuit: | + | |
| - | #pragma config ICESEL = ICS_PGx1 | + | When creating a new project, use the " |
| + | In order to use the on-board programming/ | ||
| - | The MPLAB IDE may report an error indicating that the device | + | The licensed debugger interface uses USB connector J15, labeled DEBUG. Connector J15 is a USB micro-B connector located on the left side of the board below the Ethernet RJ45 connector. Use a USB-A to micro-B cable (provided with the board) to connect to an available USB port on the PC. |
| - | containing this statement has been programmed into the board. | + | |
| - | The MCLR pin on the PIC32 microcontroller | + | When the licensed debugger |
| - | processor. This same pin is used by the USB serial converter to reset the processor when using the MPIDE. It is | + | |
| - | possible that the reset function from the USB serial interface can interfere with correct operation of the Microchip | + | |
| - | programming | + | |
| - | reset circuit. Remove the shorting block from JP11 to disable the reset circuit. If the shorting block has been | + | |
| - | removed, | + | |
| - | Using the Microchip development tools to program | + | The PIC32 in-system programming/ |
| - | the board with the MPIDE again, it is necessary to program | + | |
| - | file for the boot loader programmed into the board by Digilent at the factory | + | |
| - | product page for the ChipKIT Pro MX7 on the Digilent web site. Additionally, | + | |
| - | available in the chipKIT project repository at | + | |
| - | www.github.com/ | + | #pragma config ICESEL = ICS_PGx1 |
| + | The MPLAB IDE may report an error indicating that the device is not configured for debugging until a program containing this statement has been programmed into the board. | ||
| + | |||
| + | The MCLR pin on the PIC32 microcontroller is used by the hardware programming/ | ||
| + | |||
| + | Using the Microchip development tools to program the chipKIT Pro MX7 will erase the chipKIT boot loader. To use the board with the MPIDE again, it is necessary to program the boot loader back onto the board. The programming file for the boot loader programmed into the board by Digilent at the factory is available for download from the product page for the chipKIT Pro MX7 on the Digilent web site. Additionally, | ||
| To reprogram the boot loader using MPLAB, perform the following steps: | To reprogram the boot loader using MPLAB, perform the following steps: | ||
| - | * Use the “Configure.Select Device …” menu to select the PIC32MX795F512L | + | * Use the "Configure.Select Device …" |
| - | * Use the “Programmer.Select Programmer” menu to select the “Licensed Debugger”. | + | * Use the "Programmer.Select Programmer" |
| - | * Use the “File Import…” dialog box to navigate to and select the boot loader programming downloaded from the Digilent web site. The file name will be something like: chipKIT_Bootloader_MX7.hex | + | * Use the "File Import…" |
| - | * Use the “Programmer.Program” command to program all memories on the device. | + | * Use the "Programmer.Program" |
| - | ==== 1.2 Using the ChipKIT | + | ===== Using the chipKIT |
| - | ChipKIT | + | chipKIT |
| - | code examples, reference materials, and other resources. The MPIDE development platform was produced by | + | |
| - | modifying the Arduino™ IDE and is fully backward compatible with the Arduino IDE. The ChipKIT | + | |
| - | designed to be fully compatible with the MPIDE system, version 20111221 or later. | + | |
| - | The MPIDE uses a serial communications port to communicate with a boot loader running in the target board. The | + | The MPIDE uses a serial communications port to communicate with a boot loader running in the target board. The serial port on the MX7 board is implemented using an FTDI FT232R USB serial converter. Before attempting to use the MPIDE with the MX7, the appropriate USB device driver must be installed. |
| - | serial port on the MX7 board is implemented using an FTDI FT232R USB serial converter. Before attempting to use | + | |
| - | the MPIDE with the MX7, the appropriate USB device driver must be installed. | + | |
| - | The USB serial converter on the ChipKIT | + | The USB serial converter on the chipKIT |
| - | connector is a USB micro-AB, and is located on the lower left side of the board adjacent to the power switch. Use a | + | |
| - | standard USB-A to micro-B cable (provided with the board) to connect the board to an available USB port on the | + | |
| - | PC. | + | |
| - | In the MPIDE, use the “Tools.Board” command to select the ChipKIT | + | In the MPIDE, use the "Tools.Board" |
| - | the “Tools.Serial Port” command to choose the appropriate serial port from the list of available serial ports on the | + | |
| - | PC. | + | |
| - | When the MPIDE needs to communicate with the MX7 board, the PIC32 microcontroller is reset and starts running | + | When the MPIDE needs to communicate with the MX7 board, the PIC32 microcontroller is reset and starts running the boot loader. The MPIDE then establishes communications with the boot loader and downloads the user’s program, programming it into the flash memory in the microcontroller. |
| - | the boot loader. The MPIDE then establishes communications with the boot loader and downloads the user’s | + | |
| - | program, programming it into the flash memory in the microcontroller | + | |
| - | When the MPIDE opens the serial communications connection on the PC, the DTR pin on the FT232R chip is driven | + | 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, |
| - | low. This pin is coupled through a capacitor to the MCLR pin on the PIC32 microcontroller. Driving the MCLR line | + | |
| - | low resets the microcontroller, | + | |
| - | The automatic reset action when the serial communications connection is opened can be disabled. To disable this | + | The automatic reset action when the serial communications connection is opened can be disabled. To disable this operation, remove the shorting block from jumper JP11. The shorting block is reinstalled on JP11 to restore operation with the MPIDE. |
| - | operation, remove the shorting block from jumper JP11. The shorting block is reinstalled on JP11 to restore | + | |
| - | operation with the MPIDE. | + | |
| - | Two red LEDs (LD9 and LD10) will blink when data is being sent or received between the ChipKIT | + | Two red LEDs (LD9 and LD10) will blink when data is being sent or received between the chipKIT |
| - | PC over the serial connection. | + | |
| - | The header connector J1 provides access to the other serial handshaking signals provided by the FT232R. | + | The header connector J1 provides access to the other serial handshaking signals provided by the FT232R. Connector J1 is not loaded at the factory but can be installed by the user to access these signals. |
| - | Connector J1 is not loaded at the factory but can be installed by the user to access these signals. | + | |
| - | ==== 1.3 Additional Reference Documentation ==== | + | ===== Additional Reference Documentation |
| - | Additional information about the ChipKIT | + | Additional information about the chipKIT |
| - | microcontroller can be obtained from the following sources. | + | |
| - | The ChipKIT | + | The chipKIT |
| - | board product page on the Digilent web site: www.digilentinc.com | + | |
| - | The PIC32MX5XX/ | + | The PIC32MX5XX/ |
| - | Microchip | + | |
| - | Reference material for the MPIDE system is included in the MPIDE software download and on-line in the chipKIT | + | Reference material for the MPIDE system is included in the MPIDE software download and on-line in the chipKIT wiki. Help with questions and problems using the board with the MPIDE software can also be obtained in the chipKIT forums: |
| - | wiki. Help with questions and problems using the board with the MPIDE software can also be obtained in the | + | |
| - | chipKIT forums: | + | |
| www.github.com/ | www.github.com/ | ||
| Line 225: | Line 155: | ||
| - | ===== 2 Board Power Supply ===== | + | ---- |
| + | ====== Board Power Supply ====== | ||
| - | Switch SW1 in the lower left corner of the board is the power switch. Place this switch in the ON position to turn | ||
| - | on board power and in the OFF position to turn off board power. | ||
| - | The ChipKIT Pro MX7 may be USB powered via either | + | Switch SW1 in the lower left corner of the board is the power switch. Place this switch in the ON position to turn on board power and in the OFF position to turn off board power. |
| - | port. Alternatively, | + | |
| - | Jumper block J3 selects | + | The chipKIT Pro MX7 may be USB powered via either |
| - | following four positions: | + | |
| - | * USB – power is supplied by USB device connector J19. This is used when the ChipKIT Pro MX7 is being used to implement a USB bus powered device. | + | Jumper block J3 selects the power source |
| - | * EXT – Power is supplied by one of the external power connectors. | + | |
| - | * DBG – Power is supplied by DEBUG USB connector J15. | + | |
| - | * UART – Power is supplied by UART USB connector J2. | + | |
| - | Place the shorting block in the appropriate position on J3 for the desired | + | * USB – power is supplied by USB device connector J19. This is used when the chipKIT Pro MX7 is being used to implement a USB bus powered device. |
| + | * EXT – Power is supplied by one of the external | ||
| + | * DBG – Power is supplied by DEBUG USB connector J15. | ||
| + | * UART – Power is supplied by UART USB connector J2. | ||
| - | The ChipKIT Pro MX7 is rated for external power from 3.6 to 5.5 volts DC. Using a voltage outside this range will | + | Place the shorting block in the appropriate position on J3 for the desired |
| - | damage | + | |
| - | should be used. If the board is operated from an external supply with a voltage less than 5V, some features won’t | + | |
| - | work correctly. | + | |
| - | The USB specification requires that USB devices not draw more than 100mA of current until they have enumerated | + | The chipKIT Pro MX7 is rated for external power from 3.6 to 5.5 volts DC. Using a voltage outside |
| - | on the USB bus and informed the host that they want to consume more current. To meet this specification, | + | |
| - | debugger circuit turns on main board power by driving the PWR_ON signal high after successfully enumerating on | + | |
| - | the USB bus. The bus labeled on the schematic as VCC5V0 is powered | + | |
| - | the input to the main board voltage regulator, the input voltage to the USB bus voltage load switch used when | + | |
| - | using the board as a USB host, the power supply | + | |
| - | select jumpers for the Pmod connectors. The voltage on the VCC5V0 bus will be 5V when the board is being | + | |
| - | operated from USB power or an external | + | |
| - | voltage will appear on the VCC5V0 bus. | + | |
| - | The power supply selected | + | The USB specification requires that USB devices not draw more than 100mA of current until they have enumerated on the USB bus and informed the host that they want to consume more current. To meet this specification, |
| - | the schematic. This voltage | + | |
| - | MCP1801 Low Dropout | + | |
| - | whenever | + | |
| - | used to turn main board power on or off. | + | |
| - | When the power switch | + | The power supply selected by the shorting block on J3 will appear on the input power supply bus, labeled VIN in the schematic. This voltage is regulated to 3.3V to power the licensed debugger circuit by IC11, a Microchip MCP1801 Low Dropout voltage regulator. This regulator |
| - | main power supply. | + | |
| - | If the licensed debugger | + | When the power switch |
| - | the PWR_ON signal low. This causes Q8B to hold the ON/OFF pin of IC9 low, forcing | + | |
| - | licensed debugger will enumerate with the host computer and once it has successfully enumerated, will turn on | + | |
| - | the main board power supply | + | |
| - | If the licensed debugger is not connected to an active USB port, the signal | + | If the licensed debugger is connected to an active USB port, it initially disables |
| - | Transistor | + | |
| - | unregulated | + | |
| - | The main board power supply is a switch mode voltage regulator implemented using a Microchip MCP16301 | + | If the licensed debugger is not connected to an active USB port, the signal labeled DBG5V0 will not be powered. Transistor Q8B will be unable to hold the ON/OFF pin low and the main power supply will be turned on immediately when the power switch is turned on. When load switch IC9 is turned on, it powers the board unregulated power bus VCC5V0, which provides the input power to the main regulator. |
| - | switch mode step-down regulator, IC10. This regulator provides 3.3V at up to 600 mA with approximately 96% | + | |
| - | efficiency. When the main power supply is enabled, it powers the regulated power bus VCC3V3 | + | The main board power supply is a switch mode voltage regulator implemented using a Microchip MCP16301 switch mode step-down regulator, IC10. This regulator provides 3.3V at up to 600 mA with approximately 96% efficiency. When the main power supply is enabled, it powers the regulated power bus VCC3V3. |
| When powering the board from an external power supply, there are two connectors that can be used: J17 and J18. | When powering the board from an external power supply, there are two connectors that can be used: J17 and J18. | ||
| - | The barrel connector, J17, is used to power the board from a “wall wart” style power supply. This type of power | + | The barrel connector, J17, is used to power the board from a "wall wart" |
| - | supply is available from many sources. Digilent has a power supply available, the 5V Switching Power Supply, which | + | |
| - | can be used with connector J17. Connector J17 is a 2.5mm x 5.5mm coaxial connector wired with the center | + | Connector J18 is a screw terminal connector for an alternative power supply connection for use with battery packs, bench supplies, or other power sources where use of a hard wired power supply is desirable. |
| - | terminal as the positive voltage. | + | |
| - | Connector | + | Connectors J17 and J18 are wired in parallel and connect to the EXT position on the Power Select jumper block J3. A shorting block should be placed on the " |
| - | bench supplies, or other power sources where use of a hard wired power supply is desirable. | + | |
| - | Connectors | + | When the chipKIT Pro MX7 is operating as a USB host, an external power supply connected to either |
| - | A shorting block should be placed | + | |
| - | the external power connectors should | + | |
| - | damage | + | |
| - | When the ChipKIT Pro MX7 is operating as a USB host, an external power supply connected | + | The CAN bus operates at 5V, and therefore the transceivers for the two CAN interfaces require 5V to operate correctly and within |
| - | must be used to power the board. In addition to powering | + | |
| - | provides the USB bus voltage supplied to any connected USB device and must be a regulated | + | |
| - | 500mA current capability to meet the USB specifications. | + | |
| - | The CAN bus operates at 5V, and therefore | + | The PIC32 microcontroller |
| - | correctly and within | + | |
| - | from a 5V supply if using an external | + | |
| - | The PIC32 microcontroller and on-board I/O devices | + | The chipKIT Pro MX7 can provide power to any peripheral modules attached to the Pmod ports, JA-JF, and to I2C devices |
| - | bus. The main voltage | + | |
| - | will use approximately 85mA when running at 80MHz. The SMSC LAN8720 Ethernet PHY consumes approximately | + | |
| - | 45mA when operating at 100Mbps. The Microchip MCP2551 CAN transceivers can draw up to 75mA each when | + | |
| - | operating | + | |
| - | to provide power to attached Pmods and I2C devices. | + | |
| - | The ChipKIT Pro MX7 can provide power to any peripheral modules attached to the Pmod connectors, JA-JF, and to | ||
| - | I2C devices powered from the I2C daisy chain connectors, J7 and J8. Each Pmod connector provides power pins | ||
| - | that can be powered from either the switched main power bus, VCC5V0, or regulated voltage, VCC3V3, by setting | ||
| - | the voltage jumper block to the desired position. The I2C connectors only provide the regulated voltage, VCC3V3. | ||
| - | ==== 2.1 RESET ==== | + | ===== RESET ===== |
| Line 324: | Line 211: | ||
| - | ===== 3 Pmod™ Connectors ===== | + | ---- |
| + | ====== Pmod Ports ====== | ||
| - | The ChipKIT Pro MX7 has six connectors for connecting Digilent Pmod peripheral modules. The Pmod connectors | ||
| - | labeled JA–JF, are 2x6 pin, right-angle, | ||
| - | select jumper block labeled JPA–JPF. | ||
| - | Digilent Pmods are a line of small peripheral modules that provide various kinds of I/O interfaces. The Pmod | + | The chipKIT Pro MX7 has six connectors for connecting |
| - | product line includes such things as button, switch and LED modules, connector modules, LCD displays, high | + | |
| - | current output drivers, various kinds of RF interfaces, and many others. | + | |
| - | There are two styles | + | Digilent Pmods are a line of small peripheral modules that provide various kinds of I/O interfaces. The Pmod product line includes such things as buttons, switch and LED modules, connector modules, LCD displays, high current output drivers, various kinds of RF interfaces, and many others. |
| - | 100mil spaced pins. The six-pin connectors have the pins in a 1x6 configuration, while the twelve-pin connectors | + | |
| - | use a 2x6 configuration. All of the Pmod connectors on the ChipKIT Pro MX7 are twelve pin connectors. | + | |
| - | Six-pin Pmod connectors provide four I/O signals, ground | + | There are two styles of Pmod port: six-pin and twelve-pin. Both ports use standard pin headers with 100mil spaced |
| - | connectors provide eight I/O signals, two power pins, and two ground | + | |
| - | signals arranged so that one twelve-pin | + | |
| - | are the signal pins, pins 5 and 11 are the ground pins, and pins 6 & 12 are the power supply pins. | + | |
| - | The pin numbering that Digilent uses on the twelve-pin Pmod connectors is non-standard. The upper row of pins | + | Six-pin Pmod ports provide four I/O signals, ground and a switchable power connection. The twelve-pin ports provide eight I/O signals, two power pins, and two ground |
| - | are numbered 1–6, left to right (when viewed from the top of the board), and the lower row of pins are numbered | + | |
| - | 7–12, left to right. This is in keeping with the convention | + | |
| - | to be two six-pin | + | |
| - | pin 7 is immediately below it (closer to the PCB). | + | |
| - | Each Pmod connector has an associated power select jumper. These are used to select the power supply voltage | + | The pin numbering that Digilent uses on the twelve-pin |
| - | supplied to the power supply pins on the Pmod connector. They are switchable between either the unregulated | + | |
| - | power supply, VCC5V0, or the 3.3V main board supply, VCC3V3. Place the shorting block in the 3V3 position for | + | |
| - | regulated 3.3V and in the 5V0 position | + | |
| - | Each signal pin on the Pmod connectors is connected to an input/ | + | Each Pmod port has an associated power select jumper. These are used to select |
| - | has a 200 ohm series resistor and an ESD protection diode. The series resistor provides short circuit protection | + | |
| - | prevent damaging | + | |
| - | outputs are shorted together. The ESD protection diode protects | + | |
| - | discharge. | + | |
| - | The 200 ohm resistor | + | Each signal pin on the Pmod ports is connected to an input/ |
| - | microcontroller | + | |
| - | problem when driving typical, high impedance, logic inputs, but can be problematic when trying | + | |
| - | impedance inputs. In some cases it may be necessary to use external buffers when trying | + | |
| - | inputs. | + | |
| - | Although ESD protection is provided between | + | The 200 ohm resistor in series with each I/O pin limits |
| - | procedures should | + | |
| - | on the board are exposed and can be damaged through ESD when handling the board. | + | |
| - | Digilent Pmod peripheral modules can either | + | Although ESD protection is provided between the connector pins and the microcontroller pins, ESD safe handling procedures should |
| - | attached via cables. Digilent has a variety of Pmod interconnect cables available. | + | |
| - | See the Pinout Tables in Appendix C for more information about connecting peripheral modules and other devices | + | Digilent Pmods can either be plugged directly into the ports on the chipKIT |
| - | to the ChipKIT | + | |
| - | the pins on the various connectors. | + | |
| - | The PIC32 microcontroller can source or sink a maximum of 18mA on all digital I/O pins. However, | + | See the Pinout Tables in Appendix C for more information about connecting peripheral modules and other devices |
| - | output voltage within the specified input/ | + | |
| - | 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 digital I/O pin is 5.5V. The maximum voltage that can be | + | |
| - | applied to any analog input capable pin is 3.6V. For more detailed specifications, | + | |
| - | PIC32MX5XX/ | + | |
| + | 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 input/ | ||
| - | ===== 4 Digital Inputs and Outputs ===== | ||
| - | The ChipKIT Pro MX7 board provides access to 48 of the I/O pins from the PIC32MX795 microcontroller via the | + | ---- |
| - | Pmod connectors. Four additional I/O pins can be accessed via the I2C connectors, J7 and J8. Any of the pins on the | + | |
| - | Pmod or I2C connectors can be individually accessed for digital input or output. Note that when the I2C signals on | + | |
| - | J7 or J8 are being used for I2C communications, | + | |
| - | On PIC32 microcontrollers, | ||
| - | registers in the microcontroller. There are seven I/O Ports numbered A–G and each of the ports are 16 bits wide. | ||
| - | Depending on the particular PIC32 microcontroller, | ||
| - | present in all I/O Ports. | ||
| - | Each I/O Port has four associated registers: TRIS, LAT, PORT, and ODC. The registers for I/O Port A are named | + | ====== Digital Inputs |
| - | TRISA, LATA, PORTA, and ODCA. The registers for the other I/O Ports are named similarly. | + | |
| - | The TRIS register is used to set the pin direction. Setting a TRIS bit to 0 makes the pin an output. Setting | + | The chipKIT Pro MX7 board provides access |
| - | bit to 1 makes the pin an input. | + | |
| - | The LAT register is used to write to the I/O Port. Writing to the LAT register sets any pins configured as outputs. | + | On PIC32 microcontrollers, |
| - | Reading from the LAT register returns | + | |
| - | The PORT register is used to read from the I/O Port. Reading from the PORT register returns the current state of all | + | Each I/O Port has four associated registers: TRIS, LAT, PORT, and ODC. The registers for I/O Port A are named TRISA, LATA, PORTA, and ODCA. The registers for the other I/O Ports are named similarly. |
| - | of the pins in the I/O Port. Writing to the PORT register is equivalent to writing to the LAT register. | + | |
| - | PIC32 microcontrollers allow any pin set as an output to be configured as either a normal totem-pole output or as | + | The TRIS register is used to set the pin direction. Setting |
| - | an open-drain output. | + | |
| - | normal | + | |
| - | Refer to the PIC32MX5XX/ | + | The LAT register is used to write to the I/O Port. Writing to the LAT register sets any pins configured as outputs. Reading from the LAT register returns |
| - | Ports, for more detailed information about the operation of the I/O Ports in the microcontroller. | + | |
| - | Pmod connector JF, pins 8, 9, and 10 are connected | + | The PORT register is used to read from the I/O Port. Reading from the PORT register returns the current state of all of the pins in the I/O Port. Writing to the PORT register |
| - | These microcontroller pins are shared between general purpose | + | |
| - | JTAG controller is enabled on reset, so these pins are not available for general purpose | + | |
| - | controller | + | |
| - | DDPCONbits.JTAGEN = 0; | + | PIC32 microcontrollers allow any pin set as an output to be configured as either a normal totem-pole output or as an open-drain output. The ODC register is used to control the output type. Setting an ODC bit to 0 makes the pin a normal output and setting it to 1 makes the pin an open drain output. |
| - | The JTAG controller is disabled by the startup initialization code in the MPIDE runtime. It is not necessary | + | Refer to the PIC32MX5XX/ |
| - | the JTAG controller | + | |
| + | Pmod port JF, pins 8, 9, and 10 are connected to the signals TCK/RA1, TDI/RA4, and TDO/RA5 respectively. These microcontroller pins are shared between general purpose I/O functions and use by the JTAG controller. The JTAG controller | ||
| + | |||
| + | DDPCONbits.JTAGEN = 0; | ||
| - | The MPIDE system uses logical pin numbers | + | The JTAG controller is disabled by the startup initialization code in the MPIDE runtime. It is not necessary |
| - | with pin 0 and are numbered up consecutively. | + | |
| - | On the ChipKIT Pro MX7, pin numbers | + | The MPIDE system uses logical |
| - | 55-58 are used for the signal pins on the I2C connectors, J7 and J8. The pin numbers | + | |
| - | JA pin 1 (JA-01) is digital | + | |
| - | Pins 0-7 are on connector JA, pins 8-15 on JB, pins 16-23 on JC, pins 24-31 and so on. Refer to the tables in | + | On the chipKIT Pro MX7, pin numbers |
| - | Appendix B for detailed information about the pin mapping between Pmod connector, logical | + | |
| - | PIC32 microcontroller | + | |
| - | When using the ChipKIT Pro MX7 with the MPIDE, the functions pinMode(), digitalRead(), and digitalWrite() are | + | Pins 0-7 are on connector JA, pins 8-15 on JB, pins 16-23 on JC, pins 24-31 and so on. Refer to the tables in Appendix B for detailed information about the pin mapping between Pmod ports, logical pin number, and PIC32 microcontroller pin number and pin function. |
| - | used for digital | + | |
| - | The pinMode() | + | When using the chipKIT Pro MX7 with the MPIDE, the functions |
| - | OPEN is used for open-drain and implies output. | + | |
| - | The digitalRead() and digitalWrite() functions are used to read or write the pins. DigitalRead() returns the current | + | The pinMode() function |
| - | state of the specified pin, and digitalWrite() is used to set the state of an output | + | |
| - | HIGH or LOW. | + | |
| + | The digitalRead() and digitalWrite() functions are used to read or write the pins. DigitalRead() returns the current state of the specified pin, and digitalWrite() is used to set the state of an output pin. The pin state can be either HIGH or LOW. | ||
| - | ==== 4.1 Push Buttons and LEDs ==== | ||
| + | ===== Push Buttons and LEDs ===== | ||
| - | The ChipKIT Pro MX7 board provides three push button switches for user input and four LEDs for output. The | ||
| - | buttons, BTN1 and BTN2 are connected to I/O Port G, bits 6 and 7 respectively. BTN3 is connected to I/O Port A, bit | ||
| - | 0. To read the buttons, pins 6 and 7 of I/O Port G and pin 0 of I/O Port A must be configured as inputs by setting | ||
| - | the corresponding bits in the TRISG and TRISA registers. The button state is then obtained by reading the PORTG or | ||
| - | PORTA registers. When a button is pressed, the corresponding bit will be high (‘1’). The pins used by the buttons | ||
| - | are dedicated to this use and do not appear on any connector. | ||
| - | Button | + | The chipKIT Pro MX7 board provides three push button switches for user input and four LEDs for output. The buttons, BTN1 and BTN2 are connected to I/O Port G, bits 6 and 7 respectively. |
| - | between general purpose | + | |
| - | and so BTN3 is not useable as a button | + | |
| - | used to disable | + | |
| + | Button BTN3 is connected to the signal TMS/RA0 on the PIC32 microcontroller. This microcontroller pin is shared between general purpose I/O functions and use by the JTAG controller. The JTAG controller is enabled on reset, and so BTN3 is not useable as a button input until the JTAG controller is disabled. The following statement can be used to disable the JTAG controller: | ||
| DDPCONbits.JTAGEN = 0; | DDPCONbits.JTAGEN = 0; | ||
| + | The JTAG controller is disabled by the startup initialization code in the MPIDE runtime. It is not necessary to disable the JTAG controller when using the board with MPIDE. | ||
| - | The JTAG controller | + | The four LEDs are connected to bits 12-15 of I/O Port G. LED 1 is connected to bit 12; LED 2 is connected to bit 13, and so on. These four pins are dedicated to use with the LEDs and do not appear on any connector pin. To use the LEDs, configure the desired bits as outputs |
| - | the JTAG controller when using the board with MPIDE. | + | |
| - | The four LEDs are connected to bits 12-15 of I/O Port G. LED 1 is connected to bit 12; LED 2 is connected to bit 13, | + | When using the MPIDE and the chipKIT system, the buttons are accessed using digitalRead() and the LEDs using digitalWrite(). Use the following pins to access them: |
| - | and so on. These four pins are dedicated to use with the LEDs and do not appear on any connector pin. To use the | + | |
| - | LEDs, configure | + | |
| - | LED is set by writing values to the LATG register. Setting a bit to 1 will illuminate the LED and setting the bit to 0 | + | |
| - | will turn it off. | + | |
| - | When using the MPIDE and the chipKIT system, the buttons are accessed using digitalRead() and the LEDs using | + | |
| - | digitalWrite(). Use the following pins to access them: | + | * BTN2 – PIN_BTN2, pin 49, RG7 |
| - | | + | * BTN3 – PIN_BTN3, pin 50, RA0 |
| - | * BTN2 – PIN_BTN2, pin 49, RG7 | + | * LD1 – PIN_LED1, pin 51, RG12 |
| - | * BTN3 – PIN_BTN3, pin 50, RA0 | + | * LD2 – PIN_LED2, pin 52, RG13 |
| - | * LD1 – PIN_LED1, pin 51, RG12 | + | * LD3 – PIN_LED3, pin 53, RG14 |
| - | * LD2 – PIN_LED2, pin 52, RG13 | + | * LD4 – PIN_LED4, pin 54, RG15 |
| - | * LD3 – PIN_LED3, pin 53, RG14 | + | |
| - | * LD4 – PIN_LED4, pin 54, RG15 | + | |
| - | ==== 4.2 5V Signal Compatibility ==== | ||
| + | ===== 5V Signal Compatibility ===== | ||
| - | The PIC32 microcontroller operates at 3.3V and the I/O pins provide 3.3V logic levels; however, it is possible in | ||
| - | some circumstances to use the ChipKIT Pro MX7 to operate with 5V logic devices. | ||
| - | There are two issues to consider when dealing with 5V compatibility for 3.3V logic. | + | The PIC32 microcontroller operates at 3.3V and the I/O pins provide |
| - | inputs from damage caused by 5V signals. The second is whether | + | |
| - | as a logic high value by a 5V input. | + | |
| - | The digital only I/O pins on the PIC32 microcontroller | + | There are two issues |
| - | these pins without risk of damage | + | |
| - | The analog capable | + | The digital only I/O pins on the PIC32 microcontroller |
| - | pins is 3.6V. Generally, the analog pins are the pins on I/O port B; however, there are other non-5V tolerant | + | |
| - | the device. | + | |
| - | Refer to the PIC32MX5XX/6XX/7XX Family Data Sheet for more information about which pins on the device | + | The analog capable I/O pins on the PIC32 are not 5V tolerant. The absolute maximum voltage rating for the analog pins is 3.6V. Generally, the analog pins are the pins on I/O port B; however, there are other non-5V tolerant pins on the device. |
| - | tolerant | + | |
| - | If a 5V signal is applied | + | Refer to the PIC32MX5XX/ |
| - | 3.6V or less. The ChipKIT | + | |
| - | the Pmod connector pins. These resistors are primarily intended to provide short circuit protection on the outputs, | + | |
| - | but will also provide limited protection if a 5V signal is inadvertently applied to a non-5V tolerant pin. | + | |
| - | One technique that can be used to limit an input voltage to a safe level is to use a 200 ohm series | + | If a 5V signal is applied to a non-5V tolerant pin, some external means must be used to limit the applied |
| - | Schottky diode connected to the 3.3V supply | + | |
| - | The minimum output high voltage | + | One technique that can be used to limit an input voltage |
| - | When driving | + | |
| - | devices will recognize this voltage | + | |
| - | with 3.3V inputs. | + | |
| - | If the 3.3V logic output is not sufficient for 5V logic input to be reliably seen as a logic high input signal, some | + | The minimum output high voltage 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 |
| - | external means must be used to raise the output level. In some cases, a pull-up resistor to 5V is sufficient. A pull-up | + | |
| - | resistor in the range of 2Kohm–10kOhm can be used. This technique should not be used with pins that are not 5V | + | |
| - | tolerant on the PIC32 microcontroller. | + | |
| + | If the 3.3V logic output is not sufficient for 5V logic input to be reliably seen as a logic high input signal, some external means must be used to raise the output level. In some cases, a pull-up resistor to 5V is sufficient. A pull-up resistor in the range of 2Kohm–10kOhm can be used. This technique should not be used with pins that are not 5V tolerant on the PIC32 microcontroller. | ||
| - | ===== 5 CPU Clock Source ===== | ||
| + | ---- | ||
| - | The PIC32 microcontroller supports numerous clock source options for the main processor operating clock. The | + | ====== CPU Clock Source ====== |
| - | ChipKIT Pro MX7 board is designed to operate with either a silicon resonator from Discera, IC2, for use with the EC | + | |
| - | oscillator option, or an external crystal, X1, for use with the XT oscillator option. Standard production boards will | + | |
| - | have an 8 MHz Discera silicon resonator loaded and the EC oscillator option should be used. If IC2 is not loaded, an | + | |
| - | 8 MHz crystal will be loaded for X1 (on the bottom of the board) and the XT oscillator option should be used. | + | |
| - | Oscillator options are selected via the configuration settings specified using the #pragma config statement. | + | |
| - | Use #pragma config POSCMOD=EC to select the EC option and #pragma config POSCMOD=XT to select | + | The PIC32 microcontroller supports numerous clock source options for the main processor operating clock. The chipKIT Pro MX7 board is designed to operate with either a silicon resonator from Discera, IC2, for use with the EC oscillator option, or an external crystal, X1, for use with the XT oscillator option. Standard production boards will have an 8 MHz Discera silicon resonator loaded and the EC oscillator option should be used. If IC2 is not loaded, an 8 MHz crystal will be loaded for X1 (on the bottom of the board) and the XT oscillator option should be used. Oscillator options are selected via the configuration settings specified using the #pragma config statement. |
| - | the XT option. | + | |
| - | Using the internal system clock phase-locked loop (PLL), it is possible to select numerous multiples or divisions of | + | Using the internal system clock phase-locked loop (PLL), it is possible to select numerous multiples or divisions of the 8 MHz oscillator to produce CPU operating frequencies up to 80 MHz. The clock circuit PLL provides an input divider, multiplier, and output divider. The external clock frequency (8 MHz) is first divided by the input divider value selected. This is multiplied by the selected multiplier value and then finally divided by the selected output divider. The result is the system clock, SYSCLK, frequency. The SYSCLK frequency is used by the CPU, DMA controller, interrupt controller, and pre-fetch cache. |
| - | the 8 MHz oscillator to produce CPU operating frequencies up to 80 MHz. The clock circuit PLL provides an input | + | |
| - | divider, multiplier, and output divider. The external clock frequency (8 MHz) is first divided by the input divider | + | |
| - | value selected. This is multiplied by the selected multiplier value and then finally divided by the selected output | + | |
| - | divider. The result is the system clock, SYSCLK, frequency. The SYSCLK frequency is used by the CPU, DMA | + | |
| - | controller, interrupt controller, and pre-fetch cache. | + | |
| - | The operating frequency is selected using the PIC32MX795 configuration variables. These are set using the | + | The operating frequency is selected using the PIC32MX795 configuration variables. These are set using the #pragma config statement. Use #pragma config FPLLIDIV to set the input divider, #pragma config FPLLMUL to set the multiplication factor, and #pragma config FPLLODIV to set the output divider. Refer to the PIC32MX5XX/ |
| - | #pragma config statement. Use #pragma config FPLLIDIV to set the input divider, #pragma | + | |
| - | config FPLLMUL to set the multiplication factor, and #pragma config FPLLODIV to set the output | + | |
| - | divider. Refer to the PIC32MX5XX/ | + | |
| - | 6 Oscillators for information on how to choose the correct values, as not all combinations of multiplication and | + | |
| - | division factors will work. | + | |
| - | In addition to configuring the SYSCLK frequency, the peripheral bus clock, PBCLK, frequency is also configurable. | + | In addition to configuring the SYSCLK frequency, the peripheral bus clock, PBCLK, frequency is also configurable. The peripheral bus clock is used for most peripheral devices, and in particular is the clock used by the timers and serial controllers (UART, SPI, I2C). The PBLCK frequency is a division of the SYSCLK frequency selected using #pragma config FPBDIV. The PBCLK divider can be set to divide by 1, 2, 4, or 8. |
| - | The peripheral bus clock is used for most peripheral devices, and in particular is the clock used by the timers and | + | |
| - | serial controllers (UART, SPI, I2C). The PBLCK frequency is a division of the SYSCLK frequency selected using | + | |
| - | #pragma config FPBDIV. The PBCLK divider can be set to divide by 1, 2, 4, or 8. | + | |
| - | The following example will set up the ChipKIT | + | The following example will set up the chipKIT |
| - | PBCLK frequency of 10 MHz: | + | |
| - | #pragma config FNOSC = PRIPLL | + | #pragma config FNOSC = PRIPLL |
| - | #pragma config POSCMOD = EC | + | #pragma config POSCMOD = EC |
| - | #pragma config FPLLIDIV = DIV_2 | + | #pragma config FPLLIDIV = DIV_2 |
| - | #pragma config FPLLMUL = MUL_20 | + | #pragma config FPLLMUL = MUL_20 |
| - | #pragma config FPLLODIV = DIV_1 | + | #pragma config FPLLODIV = DIV_1 |
| - | #pragma config FPBDIV = DIV_8 | + | #pragma config FPBDIV = DIV_8 |
| - | + | Documentation for the PIC32 configuration variables can be found in the PIC32MX Configuration Settings guide. This is found using the "Help.Topics…" | |
| - | Documentation for the PIC32 configuration variables can be found in the PIC32MX Configuration Settings guide. | + | |
| - | This is found using the “Help.Topics…” command in the MPLAB IDE. Also, refer to Appendix C for an example of | + | |
| - | setting the configuration variables. | + | |
| - | When using the ChipKIT | + | When using the chipKIT |
| - | is required. | + | |
| - | ===== 6 Ethernet Interface ===== | + | ---- |
| + | ===== Ethernet Interface ===== | ||
| - | The ChipKIT Pro MX7 provides the ability to interface with 10Mbps or 100Mbps Ethernet networks. The | ||
| - | PIC32MX795 microcontroller contains a 10/100 Ethernet Medium Access Controller (MAC). External to the PIC32 | ||
| - | microcontroller, | ||
| - | Together, the MAC and PHY in combination with an appropriate coupling transformer and RJ45 jack provide a | + | The chipKIT Pro MX7 provides the ability to interface with 10Mbps or 100Mbps Ethernet networks. The PIC32MX795 microcontroller contains a 10/100 Ethernet Medium Access Controller (MAC). External to the PIC32 microcontroller, |
| - | standard 10/100 Ethernet interface. | + | |
| + | Together, the MAC and PHY in combination with an appropriate coupling transformer and RJ45 jack provide a standard 10/100 Ethernet interface. | ||
| The RJ45 connector J11 provides the physical connection to an Ethernet network using a standard Ethernet cable. | The RJ45 connector J11 provides the physical connection to an Ethernet network using a standard Ethernet cable. | ||
| - | All devices on an Ethernet network must have a unique address. This address is used to direct packets on the | + | All devices on an Ethernet network must have a unique address. This address is used to direct packets on the network to a specific device and to identify the device that originated a packet. An Ethernet MAC uses a 48-bit address value, commonly called the "MAC Address". These address values are globally unique to ensure that no two devices on a network can have conflicting addresses. MAC addresses are assigned by the IEEE. Each PIC32MX795 device is programmed at the factory to have a unique MAC address that will be loaded by default when the device is reset. |
| - | network to a specific device and to identify the device that originated a packet. An Ethernet MAC uses a 48-bit | + | |
| - | address value, commonly called the “MAC Address”. These address values are globally unique to ensure that no | + | |
| - | two devices on a network can have conflicting addresses. MAC addresses are assigned by the IEEE. Each | + | |
| - | PIC32MX795 device is programmed at the factory to have a unique MAC address that will be loaded by default | + | |
| - | when the device is reset. | + | |
| - | Digilent provides another unique MAC address that can be used as well. This address is printed on a sticker | + | Digilent provides another unique MAC address that can be used as well. This address is printed on a sticker attached to the bottom of the board. The Digilent provided MAC address is a twelve digit hexadecimal number of the form: 00183Exxxxxx, |
| - | attached to the bottom of the board. The Digilent provided MAC address is a twelve digit hexadecimal number of | + | |
| - | the form: 00183Exxxxxx, | + | |
| - | Controller MAC Station Address registers in the Ethernet controller of the PIC32MX795 microcontroller. | + | |
| - | In order to connect to and operate with an Ethernet network, the PIC32 microcontroller must be running network | + | In order to connect to and operate with an Ethernet network, the PIC32 microcontroller must be running network protocol stack firmware. Normally, the TCP/IP (Transmission Control Protocol/ |
| - | protocol stack firmware. Normally, the TCP/IP (Transmission Control Protocol/ | + | |
| - | is used and “TCP/IP Stack” software must be used. The Microchip Applications Library, available for download from | + | |
| - | the Microchip web site, provides full protocol stack support compatible with the PIC32MX795 MAC and the | + | |
| - | LAN8720 PHY. Microchip also provides numerous example programs illustrating the use of their network protocol | + | |
| - | stack for various applications. | + | |
| - | When not using the Microchip network protocol stack, refer to the manufacturer documentation for the | + | When not using the Microchip network protocol stack, refer to the manufacturer documentation for the PIC32MX795 and LAN8720, plus network protocol documentation, |
| - | PIC32MX795 and LAN8720, plus network protocol documentation, | + | |
| - | Digilent has Network libraries available that can be used to develop both client and server applications when using | + | Digilent has Network libraries available that can be used to develop both client and server applications when using the board with the MPIDE development environment. These libraries are built on a custom version of the Microchip Applications Library network stack and support various network protocols such as TCP, UDP, DHCP and others to provide complete Ethernet network support. These libraries can be downloaded from the chipKIT |
| - | the board with the MPIDE development environment. These libraries are built on a custom version of the | + | |
| - | Microchip Applications Library network stack and support various network protocols such as TCP, UDP, DHCP and | + | |
| - | others to provide complete Ethernet network support. These libraries can be downloaded from the ChipKIT | + | |
| - | MX7 product page on the Digilent web site. | + | |
| The Digilent chipKIT libraries contain examples illustrating various network applications. | The Digilent chipKIT libraries contain examples illustrating various network applications. | ||
| - | The PIC32MX795 microcontroller provides two alternate sets of pins that can be used to connect the MAC to the | + | The PIC32MX795 microcontroller provides two alternate sets of pins that can be used to connect the MAC to the external PHY. It also provides two alternate standard MAC/PHY interface signaling conventions. The chipKIT |
| - | external PHY. It also provides two alternate standard MAC/PHY interface signaling conventions. The ChipKIT | + | |
| - | MX7 is designed to use the standard (not the alternate) pins, and to use the RMII (not the MII) interface signaling | + | |
| - | convention. These options are selected using the configuration variables in the PIC32 microcontroller and are | + | |
| - | specified using the #pragma config statement. To enable the Ethernet controller in the correct configuration, | + | |
| - | the following statements must appear in the main program module: | + | |
| #pragma config FETHIO=ON | #pragma config FETHIO=ON | ||
| Line 636: | Line 387: | ||
| #pragma config FMIIEN=OFF | #pragma config FMIIEN=OFF | ||
| + | The MPIDE boot loader sets these configuration variables, so no action is necessary when using the MPIDE software system. | ||
| - | The MPIDE boot loader sets these configuration variables, so no action | + | The LAN8720 PHY has a reset signal, labeled NRST in the schematic, used to reset the PHY. This signal is connected to the TRCLK/RA6 pin on the PIC32 microcontroller. The NRST signal is active low. Configure the microcontroller pin as an output and drive it low to reset the PHY, or drive it high to allow the PHY to come out of reset and begin operation. The NRST signal is pulled low on the board, so that the PHY is held in reset by default. To allow the PHY to operate, this pin must be driven high. This reset operation is not part of the Microchip network protocol stack, and so driving NRST high must be done before initializing |
| - | software system. | + | |
| - | The LAN8720 PHY has a reset signal, labeled NRST in the schematic, used to reset the PHY. This signal is connected | + | The Digilent chipKIT network libraries perform this automatically, and so no action |
| - | to the TRCLK/RA6 pin on the PIC32 microcontroller. The NRST signal is active low. Configure the microcontroller | + | |
| - | pin as an output | + | |
| - | operation. The NRST signal | + | |
| - | to operate, this pin must be driven high. This reset operation is not part of the Microchip network protocol stack, | + | |
| - | and so driving NRST high must be done before initializing | + | |
| - | The Digilent chipKIT network libraries perform this automatically, | ||
| - | board with the MPIDE software system and the Digilent libraries. | ||
| + | ---- | ||
| - | ===== 7 USB Interface ===== | ||
| + | ====== USB Interface ====== | ||
| - | The PIC32MX795 microcontroller contains a USB 2.0 Compliant, Full Speed Device and On-The-Go (OTG) controller. | + | The PIC32MX795 microcontroller contains a USB 2.0 Compliant, Full Speed Device and On-The-Go (OTG) controller. |
| - | This controller provides the following features: | + | |
| - | * USB full speed host and device support | + | * USB full speed host and device support |
| - | * Low speed host support | + | * Low speed host support |
| - | * USB OTG support | + | * USB OTG support |
| - | * Endpoint buffering anywhere in system RAM | + | * Endpoint buffering anywhere in system RAM |
| - | * Integrated DMA to access system RAM and Flash memory. | + | * Integrated DMA to access system RAM and Flash memory. |
| - | + | ||
| - | The USB controller uses a phased lock loop, PLL, to generate the necessary USB clock frequency from the external | + | |
| - | primary oscillator input frequency. By default, this PLL is disabled. In order to use the USB controller, it is necessary | + | |
| - | to enable the USB PLL, and set the input divider to the correct value to generate a valid USB clock. The input to the | + | |
| - | USB PLL must be 4 MHz. The ChipKIT Pro MX7 provides an 8 MHz clock to the PIC32 microcontroller, | + | |
| - | input divider value of 2 must be used. These parameters are set in the PIC32 microcontroller configuration | + | |
| - | registers using the #pragma config statement. The following statements must be used to configure the PIC32 | + | |
| - | microcontroller for use of the USB controller: | + | |
| + | The USB controller uses a phased lock loop, PLL, to generate the necessary USB clock frequency from the external primary oscillator input frequency. By default, this PLL is disabled. In order to use the USB controller, it is necessary to enable the USB PLL, and set the input divider to the correct value to generate a valid USB clock. The input to the USB PLL must be 4 MHz. The chipKIT Pro MX7 provides an 8 MHz clock to the PIC32 microcontroller, | ||
| #pragma config UPLLEN = ON | #pragma config UPLLEN = ON | ||
| Line 676: | Line 413: | ||
| #pragma config UPLLIDIV = DIV_2 | #pragma config UPLLIDIV = DIV_2 | ||
| + | When using the MPIDE development environment these will have been set by the boot loader, so no action is needed. | ||
| - | When using the MPIDE development environment these will have been set by the boot loader, so no action is | + | When operating as a USB device, the chipKIT |
| - | needed. | + | |
| - | + | ||
| - | When operating as a USB device, the ChipKIT | + | |
| - | device. To operate as a self-powered device, an external power supply should be connected to one of the external | + | |
| - | power connectors (J17 or J18) and a shorting block placed on the “EXT” position of J3. To operate as a bus | + | |
| - | powered device, the shorting block should be placed in the USB Device position, | + | |
| - | Note that when operating as a bus powered device, the ChipKIT | + | Note that when operating as a bus powered device, the chipKIT |
| - | to using no more than 500mA of current to remain in compliance with the USB specification. | + | |
| - | Connector J19 on the bottom of the board in the lower right corner is the Device/OTG connector. This is a standard | + | Connector J19 on the bottom of the board in the lower right corner is the Device/OTG connector. This is a standard USB micro-AB connector. Connect a cable with a micro-A plug (optionally available from Digilent) from this connector to an available USB port on a PC or USB hub for device operation. |
| - | USB micro-AB connector. Connect a cable with a micro-A plug (optionally available from Digilent) from this | + | |
| - | connector to an available USB port on a PC or USB hub for device operation. | + | |
| - | When operating as a USB host, the ChipKIT | + | When operating as a USB host, the chipKIT |
| - | supply to one of the external power connectors (J17, or J18) and ensure that the shorting block is in the, “EXT” | + | |
| - | position of J3. The power supply used must be a regulated 5V supply. The ChipKIT | + | |
| - | to the attached USB device when operating as a host and the USB specification requires the use of a 5V power | + | |
| - | supply. NOTE: Providing a voltage greater than 5V can damage the ChipKIT | + | |
| - | being used. | + | |
| - | Connector J20 on the top of the board in the lower right corner is the USB host connector. This is a standard USB | + | Connector J20 on the top of the board in the lower right corner is the USB host connector. This is a standard USB type A receptacle. USB devices may be connected either directly or through a standard USB cable. |
| - | type A receptacle. USB devices may be connected either directly or through a standard USB cable. | + | |
| - | Jumper JP10 is used to route power to the host connector being used. Place the shorting block in the “A” position | + | Jumper JP10 is used to route power to the host connector being used. Place the shorting block in the "A" |
| - | when using the standard USB type A (host) Connector, J20. Place the shorting block in the “MICRO” position for | + | |
| - | use with the USB micro-AB (OTG) connector, J19. | + | |
| - | When operating as a USB host, the PIC32MX795 microcontroller controls application of power to the connected | + | When operating as a USB host, the PIC32MX795 microcontroller controls application of power to the connected device via the VBUSON control pin. The VBUSON signal is connected to the circuit net labeled P32_VBUSON in the schematic. Bus power is applied to the attached USB device by driving the VBUSON pin high. Power is removed from the device by driving the VBUSON pin low. The VBUSON pin is accessed via bit 3 of the U1OTGCON register. |
| - | device via the VBUSON control pin. The VBUSON signal is connected to the circuit net labeled P32_VBUSON in the | + | |
| - | schematic. Bus power is applied to the attached USB device by driving the VBUSON pin high. Power is removed | + | |
| - | from the device by driving the VBUSON pin low. The VBUSON pin is accessed via bit 3 of the U1OTGCON register. | + | |
| - | The VBUSON pin drives the enable input of a Texas Instruments TPS2051B Current-Limited Power Distribution | + | The VBUSON pin drives the enable input of a Texas Instruments TPS2051B Current-Limited Power Distribution Switch to control the application of USB power to the host connector. This switch has over-current detection capability and provides an over-current fault indication by pulling the signal P32_USBOC low. The over-current output indication can be monitored via I/O Port D pin 13 (RD13) on the PIC32MX795 microcontroller. This pin can function as change notification pin 19 (CN19), so that a change notification interrupt can be used to detect the overcurrent condition. |
| - | Switch to control the application of USB power to the host connector. This switch has over-current detection | + | |
| - | capability and provides an over-current fault indication by pulling the signal P32_USBOC low. The over-current | + | |
| - | output indication can be monitored via I/O Port D pin 13 (RD13) on the PIC32MX795 microcontroller. This pin can | + | |
| - | function as change notification pin 19 (CN19), so that a change notification interrupt can be used to detect the | + | |
| - | overcurrent condition. | + | |
| - | Details about the operation of the TPS2051B can be obtained from the data sheet available at the Texas | + | Details about the operation of the TPS2051B can be obtained from the data sheet available at the Texas Instruments |
| - | Instruments | + | |
| - | The Microchip Applications Library, MAL, available on the Microchip web site contains USB driver code for | + | The Microchip Applications Library, MAL, available on the Microchip web site contains USB driver code for implementing either USB host devices or USB function devices. This library contains numerous examples demonstrating both device and host operation of PIC32 microcontrollers. With minor modification or configuration, |
| - | implementing either USB host devices or USB function devices. This library contains numerous examples | + | |
| - | demonstrating both device and host operation of PIC32 microcontrollers. With minor modification or | + | |
| - | configuration, | + | |
| - | board. | + | |
| - | Digilent has USB libraries available that can be used to develop both USB device and USB host applications when | + | Digilent has USB libraries available that can be used to develop both USB device and USB host applications when using the board with the MPIDE development environment. These libraries are built on a custom version of the Microchip Applications Library and can be downloaded from the chipKIT |
| - | using the board with the MPIDE development environment. These libraries are built on a custom version of the | + | |
| - | Microchip Applications Library and can be downloaded from the ChipKIT | + | |
| - | web site. | + | |
| The Digilent chipKIT libraries contain examples illustrating various USB host and device applications. | The Digilent chipKIT libraries contain examples illustrating various USB host and device applications. | ||
| - | ===== 8 CAN Interface ===== | + | ---- |
| + | ====== CAN Interface ====== | ||
| - | The Controller Area Network (CAN) is a control networking standard originally developed for use in automobile | + | The Controller Area Network (CAN) is a control networking standard originally developed for use in automobile systems, but has since become a standard used in various industrial control and building automation networking applications as well. |
| - | systems, but has since become a standard used in various industrial control and building automation networking | + | |
| - | applications as well. | + | |
| - | The PIC32MX795 microcontroller contains two independent CAN network controllers. These CAN controllers in | + | The PIC32MX795 microcontroller contains two independent CAN network controllers. These CAN controllers in combination with two Microchip MCP2551 CAN transceivers allow the chipKIT |
| - | combination with two Microchip MCP2551 CAN transceivers allow the ChipKIT | + | |
| - | two independent CAN networks. Refer to the PIC32MX5XX/ | + | |
| - | Reference Manual, Section 34, Controller Area Network (CAN), plus CAN network documentation for information | + | |
| - | on operation of the CAN controllers and CAN networking in general. | + | |
| - | The Microchip C32 peripheral library, plib, provides basic support for all CAN operations using the CAN controllers | + | The Microchip C32 peripheral library, plib, provides basic support for all CAN operations using the CAN controllers in the PIC32MX795 microcontroller. |
| - | in the PIC32MX795 microcontroller. | + | |
| - | Digilent has a basic CAN library available for use with the MPIDE software environment. This library can be | + | Digilent has a basic CAN library available for use with the MPIDE software environment. This library can be downloaded from the chipKIT |
| - | downloaded from the ChipKIT | + | |
| - | The PIC32MX795 microcontroller provides two sets of pins that can be used to connect the CAN controllers to the | + | The PIC32MX795 microcontroller provides two sets of pins that can be used to connect the CAN controllers to the external transceivers. The chipKIT |
| - | external transceivers. The ChipKIT | + | |
| - | is made using the configuration variables in the microcontroller, | + | |
| - | select the use of the alternate interface pins, the following statement must appear in the main program module: | + | |
| #pragma config FCANIO=OFF | #pragma config FCANIO=OFF | ||
| - | The MPIDE boot loader sets the configuration variables, and so no action is necessary when using the MPIDE | + | The MPIDE boot loader sets the configuration variables, and so no action is necessary when using the MPIDE software system. |
| - | software system. | + | |
| - | The pins on the PIC32MX795 microcontroller used by signals for the CAN1 controller to connect to its transceiver | + | The pins on the PIC32MX795 microcontroller used by signals for the CAN1 controller to connect to its transceiver are shared with two of the signals for the UART2 and SPI4 ports. Jumpers JP1 and JP2 are used to select the use of these two signals. Place JP1 and JP2 in the CAN position for use of the CAN1 network interface. Place JP1 and JP2 in the PMOD position for use of these signals for UART or SPI operation. These signals connect to pins 1 & 4 of Pmod port JF. When JP1 and JP2 are in the CAN position, Pins 1 & 4 of Pmod port JF are not useable. In some cases it may be possible to use UART2 at the same time as CAN1 as the RX and TX pins are not used by the CAN interface (only RTS and CTS are used). When JP1 and JP2 are in the CAN position Pmod pins JF-01 and JF-04 are not connected to the PIC32 microcontroller. |
| - | are shared with two of the signals for the UART2 and SPI4 ports. Jumpers JP1 and JP2 are used to select the use of | + | |
| - | these two signals. Place JP1 and JP2 in the CAN position for use of the CAN1 network interface. Place JP1 and JP2 in | + | |
| - | the PMOD position for use of these signals for UART or SPI operation. These signals connect to pins 1 & 4 of Pmod | + | |
| - | connector | + | |
| - | cases it may be possible to use UART2 at the same time as CAN1 as the RX and TX pins are not used by the CAN | + | |
| - | interface (only RTS and CTS are used). When JP1 and JP2 are in the CAN position Pmod pins JF-01 and JF-04 are not | + | |
| - | connected to the PIC32 microcontroller. | + | |
| - | There is no standard connector for use with CAN networks. The ChipKIT | + | There is no standard connector for use with CAN networks. The chipKIT |
| - | header connectors for access to the CAN signals. Connector J9 provides access to the signals for the CAN1 network | + | |
| - | controller, and connector J10 provides access to the signals for CAN2. Refer to the ChipKIT | + | |
| - | Sheet 6, for information on the connectors and signal assignments. Digilent 6-pin or 2x6 to dual 6-pin cables can be | + | |
| - | used to daisy chain Digilent boards together in a CAN network. A Digilent 6-Pin cable in combination with a Digilent | + | |
| - | PmodCON1 Screw Terminal Connector module can be used to connect the ChipKIT | + | |
| - | network wiring configurations. | + | |
| - | The CAN network standard requires that the network nodes at each end of a network provide 120 ohm | + | The CAN network standard requires that the network nodes at each end of a network provide 120 ohm termination. The chipKIT |
| - | termination. The ChipKIT | + | |
| - | on the location of the board in the network. Jumper JP5 is used to enable/ | + | |
| - | CAN1 network connector, and JP7 is used to enable/ | + | |
| - | block on the jumper pins to enable the termination resistor, or remove the shorting block to disable it. | + | |
| - | ===== 9 UART Interface ===== | + | ---- |
| + | ====== UART Interface ====== | ||
| - | The PIC32MX795 microcontroller can provide up to six UARTs. Due to conflicting uses of many of the pins used by | + | The PIC32MX795 microcontroller can provide up to six UARTs. Due to conflicting uses of many of the pins used by the UARTs, the chipKIT |
| - | the UARTs, the ChipKIT | + | |
| - | provide either a 2-wire or a 4-wire asynchronous serial interface. The 2-wire interface provides receive (RX) and | + | |
| - | transmit (TX) pins. The 4-wire interface includes request-to-send (RTS), and clear-to-send (CTS), in addition to | + | |
| - | receive and transmit. | + | |
| - | UART1 can be accessed from Pmod connector | + | UART1 can be accessed from Pmod port JE and UART2 can be accessed from Pmod port JF using the following pins: |
| - | following pins: | + | |
| - | * U1CTS JE-01 | + | * U1CTS JE-01 |
| - | * U1TX JE-02 | + | * U1TX JE-02 |
| - | * U1RX JE-03 | + | * U1RX JE-03 |
| - | * U1RTS JE-04 | + | * U1RTS JE-04 |
| + | * U2CTS JF-01 | ||
| + | * U2TX JF-02 | ||
| + | * U2RX JF-03 | ||
| + | * U2RTS JF-04 | ||
| - | * U2CTS JF-01 | + | Note that early versions of the Microchip PIC32MX5XX/ |
| - | * U2TX JF-02 | + | |
| - | * U2RX JF-03 | + | |
| - | * U2RTS JF-04 | + | |
| - | Note that early versions | + | Detailed information about the operation |
| - | UART2 as UART3A. | + | |
| - | Detailed information about the operation of the UART peripherals | + | The USB Serial converter is connected to UART1. The MPIDE uses this to communicate with the boot loader. This can also be used for a serial communications interface between the chipKIT Pro MX7 board and other software running on a PC. Resistors are used to decouple |
| - | Manual, Section 21, UART. | + | |
| - | The USB Serial converter is connected to UART1. The MPIDE uses this to communicate | + | Note that when using the MPIDE software, devices |
| - | can also be used for a serial | + | |
| - | running on a PC. Resistors are used to decouple | + | |
| - | connector JE when not using it to communicate with the USB serial converter. | + | |
| - | Note that when using the MPIDE software, devices connected to JE can interfere | + | When using the chipKIT Pro MX7 with the MPIDE and the chipKIT system, |
| - | interface | + | |
| - | the external device from JE until the sketch has been downloaded | + | |
| - | When using the ChipKIT Pro MX7 with the MPIDE and the chipKIT system, the UARTs are accessed using the | ||
| - | HardwareSerial facility built into the system. UART1 Pmod connector JE, is accessed using the Serial object and | ||
| - | UART2 Pmod connector JF, is accessed using Serial1. | ||
| + | ---- | ||
| - | ===== 10 Serial Peripheral Interface (SPI) ===== | + | ====== Serial Peripheral Interface (SPI) ====== |
| + | SPI is a four wire synchronous serial interface and SPI devices can operate as either master devices or as slave devices. The PIC32 microcontroller labels the four SPI signals as Slave Select (SS), Serial Data Out (SDO), Serial Data In (SDI), and Serial Clock (SCK). A master device transmits SS, SDO, SCK, and receives SDI. A slave device receives SS, SDI, SCK, and transmits SDO. The SS signal is used to enable the slave device, and this signal is only significant for slave devices. A master device can use any general purpose I/O pin to generate SS to enable the slave. | ||
| - | SPI is a four wire synchronous serial interface and SPI devices can operate as either | + | An SPI transaction begins with the master |
| - | devices. The PIC32 microcontroller labels | + | The PIC32MX795 microcontroller provides four Serial Peripheral Interfaces. The chipKIT Pro MX7 supports |
| - | In (SDI), | + | |
| - | SDI, SCK, and transmits | + | |
| - | slave devices. A master device can use any general purpose I/O pin to generate SS to enable the slave. | + | |
| - | An SPI transaction begins with the master device bringing SS low. When the slave sees SS go low it becomes | + | The following gives the mapping between SPI signals |
| - | enabled and waits for the master to send data. The master shifts data out on SDO and simultaneously shifts data in | + | |
| - | on SDI. The slave device receives data from the master on its SDI pin and simultaneously sends data to the master | + | |
| - | on its SDO pin. Each time the master sends a byte to the slave, it simultaneously receives a byte from the slave. | + | |
| - | The PIC32MX795 microcontroller provides four Serial Peripheral Interfaces. The ChipKIT Pro MX7 supports use of | + | * SS1 JD-01 |
| - | three ports: SPI1, SPI3, and SPI4. These are accessed using Pmod connectors | + | * SDO1 JD-02 |
| + | * SDI1 JD-03 | ||
| + | * SCK1 JD-04 | ||
| - | The following gives the mapping between SPI signals and connector pins: | ||
| - | * SS1 JD-01 | ||
| - | * SDO1 JD-02 | ||
| - | * SDI1 JD-03 | ||
| - | * SCK1 JD-04 | ||
| - | * SS3 JE-01 | ||
| - | * SDO3 JE-02 | ||
| + | * SS3 JE-01 | ||
| + | * SDO3 JE-02 | ||
| + | * SDI3 JE-03 | ||
| + | * SCK3 JE-04 | ||
| - | * SDI3 JE-03 | + | * SS4 JF-01 |
| - | * SCK3 JE-04 | + | * SDO4 JF-02 |
| - | * | + | * SDI4 JF-03 |
| - | * SDO4 JF-02 | + | * SCK4 JF-04 |
| - | * SDI4 JF-03 | + | |
| - | * SCK4 JF-04 | + | |
| - | Note that early versions of the Microchip PIC32MX5Xx/ | + | Note that early versions of the Microchip PIC32MX5Xx/ |
| - | as SPI3A. | + | |
| - | Detailed information about the operation of the SPI peripherals can be found in the PIC32 Family Reference | + | Detailed information about the operation of the SPI peripherals can be found in the PIC32 Family Reference Manual, Section 23, Serial Peripheral Interface. |
| - | Manual, Section 23, Serial Peripheral Interface. | + | |
| - | When using the ChipKIT | + | When using the chipKIT |
| - | the standard chipKIT SPI library or using the Digilent DSPI library. | + | |
| - | The standard SPI library supports access to a single SPI port, SPI4, Pmod connector | + | The standard SPI library supports access to a single SPI port, SPI4, Pmod port JF. This is accessed using the SPI object. |
| - | SPI object. | + | |
| - | The DSPI library supports access to all three SPI ports. The DSPI0 object class is used to create an object used to | + | The DSPI library supports access to all three SPI ports. The DSPI0 object class is used to create an object used to access SPI1, Pmod port JD. The DSPI1 object class is used to access SPI3, Pmod port JE, and the DSPI2 object class is used to access SPI4, Pmod port JF. |
| - | access SPI1, Pmod connector | + | |
| - | DSPI2 object class is used to access SPI4, Pmod connector | + | |
| - | ===== 11 I2C™ Interface ===== | + | ---- |
| - | The Inter-Integrated Circuit (I2CTM) | + | ====== I2C™ |
| - | communications bus. The I2C interface provides master and slave operation using either 7 bit or 10 bit device | + | |
| - | addressing. Each device is given a unique address, and the protocol provides the ability to address packets to a | + | |
| - | specific device or to broadcast packets to all devices on the bus. Refer to the Microchip PIC32MX5XX/ | + | |
| - | Family Data Sheet and the PIC32 Family Reference Manual, Section 24, Inter-Integrated Circuit, for detailed | + | |
| - | information on configuring and using the I2C interface. | + | |
| - | The PIC32MX795 microcontroller provides for up to five independent I2C interfaces. The ChipKIT Pro MX7 is | ||
| - | designed to provide dedicated access to two of these interfaces I2C1 and I2C2 via I2C daisy chain connectors J7 and | ||
| - | J8. Connector J7 provides access to I2C1 while connector J8 provides access to I2C2. | ||
| - | In addition to I2C1 and I2C2, two other I2C interfaces, I2C3 and I2C5 can be accessed via pins on Pmod connectors. | + | The inter-integrated circuit |
| - | I2C3 can be accessed via Pmod connector JE, pins JE-02 (SCL3) and JE-03 (SDA3). I2C5 can be accessed via Pmod | + | |
| - | connector JF, pins JF-02 (SCL5) | + | |
| - | The I2C daisy chain connectors, J7 and J8, each provide two positions for connecting to the I2C signals, power and | + | The PIC32MX795 microcontroller provides for up to five independent I2C interfaces. |
| - | ground. By using two-wire or four-wire MTE cables (available separately from Digilent) a daisy chain of multiple | + | |
| - | ChipKIT Pro MX7 boards or other I2C-capable boards can be created. | + | |
| - | The I2C bus is an open-collector bus. Devices | + | In addition to I2C1 and I2C2, two other I2C interfaces, I2C3 and I2C5 can be accessed via pins on Pmod ports. I2C3 can be accessed via Pmod port JE, pins JE-02 (SCL3) and JE-03 (SDA3). I2C5 can be accessed via Pmod port JF, pins JF-02 (SCL5) and JF-03 (SDA5) |
| - | signals is achieved by pull-up resistors when no device is driving the lines low. One device on the I2C bus must | + | |
| - | provide the pull-up resistors. | + | |
| - | On the ChipKIT Pro MX7 I2C2, connector | + | The I2C daisy chain connectors, J7 and J8, each provide two positions for connecting to the I2C signals, power and ground. By using two-wire or four-wire MTE cables (available separately from Digilent) a daisy chain of multiple chipKIT Pro MX7 boards or other I2C-capable boards |
| - | connector J7, provides selectable pull-ups that can be enabled or disabled via jumper blocks JP3 and JP4. The pullups | + | |
| - | are enabled by installing shorting blocks on JP3 and JP4. They are disabled by removing the shorting blocks. | + | |
| - | Only one device on the bus should have the pull-ups enabled. | + | |
| - | If the I2C interfaces | + | The I2C bus is an open-collector bus. Devices |
| - | resistors can be in the range 1K ohm to 10K ohm, and should be connected to pull the pins to 3.3V. | + | |
| - | The pull-ups on I2C1 on the ChipKIT | + | On the chipKIT |
| - | simple | + | |
| - | times on the I2C signals | + | |
| - | simple | + | |
| + | If the I2C interfaces on Pmod ports JE or JF are being used, external pull-up resistors must be provided. These resistors can be in the range 1K ohm to 10K ohm, and should be connected to pull the pins to 3.3V. | ||
| + | The pull-ups on I2C1 on the chipKIT Pro MX7 board are actually implemented using current mirrors rather than simple resistors. These current mirrors source approximately 1.7mA. The use of current mirrors provides faster rise times on the I2C signals and provides the ability to drive longer cable runs reliably than would be the case with simple pull-up resistors. | ||
| - | When using the ChipKIT | + | {{ : |
| - | standard chipKIT Wire library, or the Digilent DTWI library. | + | |
| + | When using the chipKIT | ||
| The Wire library supports a single I2C interface, I2C2 on J8. This is accessed using the Wire object. | The Wire library supports a single I2C interface, I2C2 on J8. This is accessed using the Wire object. | ||
| - | The DTWI library supports four I2C interfaces. The DTWI0 object class is used to create an object for access to I2C1, | + | The DTWI library supports four I2C interfaces. The DTWI0 object class is used to create an object for access to I2C1, connector J7, and the DTWI1 object class is used to access I2C2, connector J8. The DTWI2 object class is used to access I2C3, Pmod port JE, and the DTWI3 object class is used to access I2C5, Pmod port JF. |
| - | connector J7, and the DTWI1 object class is used to access I2C2, connector J8. The DTWI2 object class is used to | + | |
| - | access I2C3, Pmod connector | + | |
| The pinouts of the I2C connectors are as follows: | The pinouts of the I2C connectors are as follows: | ||
| Connector J7 – I2C1 | Connector J7 – I2C1 | ||
| + | * J7-1, J7-2 – SCL1 | ||
| + | * J7-3, J7-4 – SDA1 | ||
| + | * J7-5, J7-6 – GND | ||
| + | * J7-7, J7-8 – VCC3V3 | ||
| - | * J7-1, J7-2 – SCL1 | ||
| - | * J7-3, J7-4 – SDA1 | ||
| - | * J7-5, J7-6 – GND | ||
| - | * J7-7, J7-8 – VCC3V3 | ||
| - | * | ||
| Connector J8 – I2C2 | Connector J8 – I2C2 | ||
| - | |||
| * J8-1, J8-2 – SCL2 | * J8-1, J8-2 – SCL2 | ||
| * J8-3, J8-4 – SDA2 | * J8-3, J8-4 – SDA2 | ||
| - | * J8-5, J8-6 – GND | + | * J8-5, J8-6 – GND |
| * J8-7, J8-8 – VCC3V3 | * J8-7, J8-8 – VCC3V3 | ||
| Pmod connector JE – I2C3 | Pmod connector JE – I2C3 | ||
| - | + | | |
| - | | + | * JE-03 – SDA3 |
| - | * JE-03 – SDA3 * Unordered List Item | + | |
| Pmod connector JF – I2C5 | Pmod connector JF – I2C5 | ||
| + | * JF-02 – SCL5 | ||
| + | * JF-03 – SDA5 | ||
| - | * JF-02 – SCL5 | ||
| - | * JF-03 – SDA5 | ||
| + | ===== On-Board I2C Peripheral Device ===== | ||
| - | ==== 11.1 On-Board I2C Peripheral Device ==== | ||
| + | The chipKIT Pro MX7 provides one on-board I2C peripheral device, a Microchip 24LC256 serial EEPROM. | ||
| - | The ChipKIT Pro MX7 provides one on-board I2C peripheral device, a Microchip 24LC256 serial EEPROM. This | + | When using the MPIDE software, this device can be accessed using the Wire library Wire object, or using the DTWI library via the DTWI1 object class. |
| - | device is connected to I2C2. The 24LC256 is a 256Kbit (32Kbyte) serial EEPROM device to provide non-volatile | + | |
| - | memory storage. The device address for the 24LC256 is 1010000 (0x50). | + | |
| - | + | ||
| - | When using the MPIDE software, this device can be accessed using the Wire library Wire object, or using the | + | |
| - | DTWI library via the DTWI1 object class. | + | |
| Refer to the Microchip data sheet for detailed information on the operation of this device. | Refer to the Microchip data sheet for detailed information on the operation of this device. | ||
| - | ====== 12 Analog Inputs ====== | + | ---- |
| - | The PIC32MX795 microcontroller provides a 10-bit analog to digital (A/D) converter that provides up to sixteen | + | ====== Analog Inputs ====== |
| - | analog inputs. The ChipKIT Pro MX7 board provides access to 10 of these inputs via the Pmod connectors. The | + | |
| - | converted values produced by the A/D converter will be in the range 0–1023. | + | |
| - | For detailed information on the operation and use of the A/D converter, refer to the PIC32 Family Reference | ||
| - | Manual, Section 17, 10-bit AD Converter. | ||
| - | The analog | + | The PIC32MX795 microcontroller provides a 10-bit |
| - | number is specified using the symbols A0–A9. The digital pin numbers for the pins or the numbers | + | |
| - | used, but using the symbols A0–A9 is recommended. | + | |
| - | The following gives the Pmod connector position, digital pin number, microcontroller I/O port, and bit number for | + | For detailed information on the operation and use of the A/D converter, refer to the PIC32 Family Reference Manual, Section 17, 10-bit AD Converter. |
| - | the analog inputs: | + | |
| - | * | + | The analog inputs are accessed using the analogRead() function in the MPIDE software. The analog input pin number is specified using the symbols |
| - | * A1 – JA-02, digital pin 1, RB03 | + | |
| - | * A2 – JA-03, digital pin 2, RB04 | + | |
| - | * A3 – JA-04, digital pin 3, RB06 | + | |
| - | * A4 – JA-07, digital pin 4, RB07 | + | |
| - | * A5 – JA-08, digital pin 5, RB08 | + | |
| - | * A6 – JA-09, digital pin 6, RB09 | + | |
| - | * A7 – JA-10, digital pin 7, RB10 | + | |
| - | * A8 – JC-07, digital pin 20, RB15 | + | |
| - | * | + | |
| + | The following gives the Pmod port position, digital pin number, microcontroller I/O port, and bit number for the analog inputs: | ||
| - | ==== 12.1 A/D Converter Voltage Reference ==== | + | * A0 – JA-01, digital pin 0, RB02 |
| + | * A1 – JA-02, digital pin 1, RB03 | ||
| + | * A2 – JA-03, digital pin 2, RB04 | ||
| + | * A3 – JA-04, digital pin 3, RB06 | ||
| + | * A4 – JA-07, digital pin 4, RB07 | ||
| + | * A5 – JA-08, digital pin 5, RB08 | ||
| + | * A6 – JA-09, digital pin 6, RB09 | ||
| + | * A7 – JA-10, digital pin 7, RB10 | ||
| + | * A8 – JC-07, digital pin 20, RB15 | ||
| + | * A9 – JC-10, digital pin 23, RB14 | ||
| - | The PIC32 microcontroller provides two voltage reference inputs to the analog to digital converter. Vref- is used | ||
| - | set the lower reference level and Vref+ is used to set the upper reference level. These references can be connected | ||
| - | to internal references or to external references using two of the analog input pins. | ||
| - | When the internal references are being used, Vref- is connected to VSS and Vref+ is connected to VDD. This means | ||
| - | that the voltage input range at the analog input pins is 0V–3.3V. In this case, an input voltage of 0V will convert to | ||
| - | ~0, an input voltage of 1.65V will convert to ~511, and an input voltage of 3.3V will convert to ~1023. | ||
| - | Either one, or both, of the references can be connected to external reference pins. When this is done, the | + | ===== A/D Converter Voltage Reference ===== |
| - | references can be set to voltages other than 0V and 3.3V. | + | |
| - | If, for example, both references were selected to use external references, with 1V applied to Vref- and 2V applied | + | The PIC32 microcontroller provides two voltage reference inputs to the analog to digital converter. Vref- is used set the lower reference level and Vref+ is used to set the upper reference level. These references can be connected to internal references or to external references using two of the analog input pins. |
| - | to Vref+, the input voltage range at the analog input pins would be from 1V to 2V. An applied voltage of 1V would | + | |
| - | have a converted value of ~0, 1.5V would have a converted value of ~511, and 2V would have a converted value of | + | When the internal references are being used, Vref- is connected to VSS and Vref+ is connected to VDD. This means that the voltage input range at the analog input pins is 0V–3.3V. In this case, an input voltage of 0V will convert to ~0, an input voltage of 1.65V will convert to ~511, and an input voltage of 3.3V will convert to ~1023. |
| - | ~1023. | + | |
| + | Either one, or both, of the references can be connected to external reference pins. When this is done, the references can be set to voltages other than 0V and 3.3V. | ||
| + | |||
| + | If, for example, both references were selected to use external references, with 1V applied to Vref- and 2V applied to Vref+, the input voltage range at the analog input pins would be from 1V to 2V. An applied voltage of 1V would have a converted value of ~0, 1.5V would have a converted value of ~511, and 2V would have a converted value of ~1023. | ||
| When both external references are being used, Vref+ must have a higher voltage applied to in than Vref-. | When both external references are being used, Vref+ must have a higher voltage applied to in than Vref-. | ||
| - | The analog reference input pins appear on Pmod connector | + | The analog reference input pins appear on Pmod port JE, pins 9 & 10. Vref- is on pin JE-09, and Vref+ is on pin JE-10. These pins are not available to be used for digital I/O when being used as an external reference. |
| - | pin JE-10. These pins are not available to be used for digital I/O when being used as an external reference. | + | |
| - | When using the MPIDE software, the use of external analog references is selected using the analogReference() | + | When using the MPIDE software, the use of external analog references is selected using the analogReference() function. The following values can be used with analogReference(): |
| - | function. The following values can be used with analogReference(): | + | |
| - | * DEFAULT – Vref- = 0V, Vref+ = 3.3V | + | * DEFAULT – Vref- = 0V, Vref+ = 3.3V |
| - | * INTERNAL – same as default | + | * INTERNAL – same as default |
| - | * EXTERNAL – Vref- = 0V, Vref+ = voltage at A2 | + | * EXTERNAL – Vref- = 0V, Vref+ = voltage at A2 |
| - | * EXTMINUS – Vref- = voltage at A3, Vref+ = 3.3V | + | * EXTMINUS – Vref- = voltage at A3, Vref+ = 3.3V |
| - | * EXTPLUSMINUS – Vref- = voltage at A3, Vref+ = voltage at A2 | + | * EXTPLUSMINUS – Vref- = voltage at A3, Vref+ = voltage at A2 |
| - | ===== 13 Timers ===== | + | ---- |
| - | The PIC32MX795 microcontroller provides five timers that can be used for various timing functions. These timers | + | ====== Timers ====== |
| - | are each 16 bits wide, although two pairs, TIMER2/ | + | |
| - | bit wide timers. | + | |
| - | A timer consists of a control register, a counter register, and a period register. The control register is used to | ||
| - | configure the timer for various modes of operation. The count register counts cycles of the clock source selected | ||
| - | via the control register. This clock source can be the peripheral bus clock or a division of the peripheral bus clock | ||
| - | via a prescaler divider. The period register can be used to generate an interrupt and/or reset the count register | ||
| - | when a predetermined value is reached. | ||
| - | Each timer has an associated input pin. In some operating modes, this pin can be used as an external clock input to | + | The PIC32MX795 microcontroller provides five timers that can be used for various timing functions. These timers are each 16 bits wide, although two pairs, TIMER2/TIMER3 and TIMER4/ |
| - | the timer, or as a gate input to turn on/off incrementing of the counter register under control of an external signal. | + | |
| - | The following gives the Pmod connector position, chipKIT pin number, microcontroller I/O port, and bit number for | + | A timer consists of a control register, a counter register, and a period register. The control register is used to configure |
| - | the timer input pins. | + | |
| + | Each timer has an associated input pin. In some operating modes, this pin can be used as an external clock input to the timer, or as a gate input to turn on/off incrementing of the counter register under control of an external signal. | ||
| - | * T1CK – not available | + | The following gives the Pmod port position, chipKIT |
| - | * T2CK – JC-01, digital | + | |
| - | * T3CK – not available | + | |
| - | * T4CK – not available | + | |
| - | * T5CK – JD-03, digital pin 26, RC04 | + | |
| - | For detailed information on the operation of the PIC32 timers, refer to the PIC32 Family Reference Manual, Section | + | * T1CK – not available |
| - | 14, Timers. | + | * T2CK – JC-01, digital pin 16, RC01 |
| + | * T3CK – not available | ||
| + | * T4CK – not available | ||
| + | * T5CK – JD-03, digital pin 26, RC04 | ||
| + | |||
| + | For detailed information on the operation of the PIC32 timers, refer to the PIC32 Family Reference Manual, Section 14, Timers. | ||
| When using the MPIDE software, the symbols PIN_TCK2 and PIN_TCK5 can be used to access the timer input pins. | When using the MPIDE software, the symbols PIN_TCK2 and PIN_TCK5 can be used to access the timer input pins. | ||
| - | Control and operation of the timers is not explicitly provided in the current version of the MPIDE software. This | + | Control and operation of the timers is not explicitly provided in the current version of the MPIDE software. This capability will be added in a future version of the software; however, timers are used implicitly by various core functions and libraries. |
| - | capability will be added in a future version of the software; however, timers are used implicitly by various core | + | |
| - | functions and libraries. | + | |
| + | ---- | ||
| + | |||
| + | |||
| + | ====== Output Compare ====== | ||
| + | |||
| + | |||
| + | The PIC32MX795 microcontroller provides five output compare units that can be used to control the timing of state changes on certain output pins or to generate pulse width modulated (PWM) outputs. | ||
| + | |||
| + | Each output compare unit works with a particular output pin (OC1-OC5). It can be programmed to control the pin in any of the following ways: | ||
| + | |||
| + | * PWM output | ||
| + | * Generate continuous pulses | ||
| + | * Generate a single pulse | ||
| + | * Toggle the output pin | ||
| + | * Generate falling edge | ||
| + | * Generate rising edge | ||
| + | |||
| + | The output compare units work in conjunction with a timer. Either Timer2 or Timer3 can be used with any of the five output compare units. | ||
| + | |||
| + | Refer to the PIC32 Family Reference Manual, Section 16, Output Compare for detailed information on the use of the output compare units. | ||
| + | |||
| + | When using the MPIDE software, these are accessed using the analogWrite() function. The digital pin number, or preferably, the symbols PIN_OC1 through PIN_OC5 are used to specify the pin. The MPIDE software currently only supports using the output compare units to generate PWM outputs. It uses Timer2 to control the output compares. | ||
| + | |||
| + | The following gives Pmod port position, chipKIT pin number, and microcontroller I/O port and bit number for the output compare unit’s output pins: | ||
| + | |||
| + | * OC1 – JD-02, digital pin 25, RD00 | ||
| + | * OC2 – JD-07, digital pin 28, RD01 | ||
| + | * OC3 – JD-08, digital pin 29, RD02 | ||
| + | * OC4 – JD-09, digital pin 30, RD03 | ||
| + | * OC5 – JC-09, digital pin 22, RD04 | ||
| + | |||
| + | |||
| + | ---- | ||
| + | |||
| + | |||
| + | ====== Input Capture ====== | ||
| + | |||
| + | |||
| + | The PIC32MX795 microcontroller provides five input capture units. The design of the chipKIT Pro MX7 board allows the use of three of them. | ||
| + | |||
| + | An input capture unit works in conjunction with a timer and monitors the state of an associated pin. When the pin changes state, the current value of the timer is captured. The input capture units can be used with either Timer2 or Timer3. | ||
| + | |||
| + | The input capture unit can be programmed to be sensitive to either a rising edge, a falling edge, or both edges on the input pin. An interrupt can also be signaled when an input capture is triggered. Each input capture has a four level deep FIFO that can buffer up to four capture events. | ||
| + | |||
| + | For detailed information on the operation and use of the input capture units, refer to the PIC32 Family Reference Manual, Section 15, Input Capture. | ||
| + | The following gives the Pmod port position, chipKIT pin number, and microcontroller port and bit number for the input capture units input pins: | ||
| - | ===== 14 Output Compare ===== | + | * IC1 – not available |
| + | * IC2 – JD-01, digital pin 24, RD09 | ||
| + | * IC3 – JD-04, digital pin 27, RD10 | ||
| + | * IC4 – not available | ||
| + | * IC5 – JD-10, digital pin 31, RD12 | ||
| + | When using the MPIDE software, the symbols PIN_IC2, PIN_IC3, and PIN_IC5 can be used to access the capture input pins. | ||
| - | The PIC32MX795 microcontroller provides five output compare | + | Use of the input capture |
| - | state changes on certain output pins or to generate pulse width modulated (PWM) outputs. | + | |
| - | Each output compare unit works with a particular output pin (OC1-OC5). It can be programmed to control the pin | ||
| - | in any of the following ways: | ||
| - | * PWM output | + | ---- |
| - | * Generate continuous pulses | + | |
| - | * Generate a single pulse | + | |
| - | * Toggle the output pin | + | |
| - | * Generate falling edge | + | |
| - | * Generate rising edge | + | |
| - | The output compare units work in conjunction with a timer. Either Timer2 or Timer3 can be used with any of the | + | ====== External Interrupts ====== |
| - | five output compare units. | + | |
| - | Refer to the PIC32 Family Reference Manual, Section 16, Output Compare for detailed information on the use of | ||
| - | the output compare units. | ||
| - | When using the MPIDE software, these are accessed using the analogWrite() function. The digital pin number, or | + | The PIC32 microcontroller provides five external interrupt inputs. An external interrupt input can be used to generate an interrupt to the microprocessor CPU when the pin changes state. They can be programmed |
| - | preferably, the symbols PIN_OC1 through PIN_OC5 are used to specify | + | |
| - | The MPIDE software currently only | + | |
| - | supports using the output compare units to generate PWM outputs. It uses Timer2 to control | + | |
| - | compares. | + | |
| - | The following gives Pmod connector position, chipKIT pin number, and microcontroller I/O port and bit number | + | Refer to the PIC32 Family Reference Manual, Section 8, Interrupts |
| - | the output compare unit’s output pins: | + | |
| - | * OC1 – JD-02, digital pin 25, RD00 | + | These are accessed using the attachInterrupt() and detachInterrupt() functions when using the MPIDE software. The interrupt number is specified using the numbers 0-4, or preferably, the symbols EXT_INT0 through EXT_INT4. The symbols PIN_INT0 through PIN_INT4 are also defined to refer to the digital pin numbers used for the external interrupt inputs. |
| - | * OC2 – JD-07, digital pin 28, RD01 | + | |
| - | * OC3 – JD-08, digital pin 29, RD02 | + | |
| - | * OC4 – JD-09, digital pin 30, RD03 | + | |
| - | * OC5 – JC-09, digital pin 22, RD04 | + | |
| + | The following gives connector position, chipKIT pin number, and microcontroller I/O port and bit number. Note that INT0-INT1 are on Pmod ports. INT3 and INT4 are on I2C1 daisy chain connector J7. When using these pins as external interrupt inputs, they are not available to use for I2C. It may also be necessary to disable the pull-ups by pulling the shorting blocks from JP3 or JP4. | ||
| - | ===== 15 Input Capture ===== | + | * INT0 – JD-02, digital pin 25, RD00 |
| + | * INT1 – JE-07, digital pin 36, RE08 | ||
| + | * INT2 – JF-07, digital pin 44, RE09 | ||
| + | * INT3 – J7-1 & J7-2, digital pin 57, RA14 | ||
| + | * INT4 – J7-3 & J7-4, digital pin 58, RA15 | ||
| - | The PIC32MX795 microcontroller provides five input capture units. The design of the ChipKIT Pro MX7 board | + | ---- |
| - | allows the use of three of them. | + | |
| - | An input capture unit works in conjunction with a timer and monitors the state of an associated pin. When the pin | ||
| - | changes state, the current value of the timer is captured. The input capture units can be used with either Timer2 or | ||
| - | Timer3. | ||
| - | The input capture unit can be programmed to be sensitive to either a rising edge, a falling edge, or both edges on | + | ====== RTCC ====== |
| - | the input pin. An interrupt can also be signaled when an input capture is triggered. Each input capture has a four | + | |
| - | level deep FIFO that can buffer up to four capture events. | + | |
| - | For detailed information on the operation and use of the input capture units, refer to the PIC32 Family Reference | ||
| - | Manual, Section 15, Input Capture. | ||
| - | The following gives the Pmod connector | + | The PIC32 microcontroller contains a low frequency oscillator and Real Time Clock/ |
| - | the input capture units input pins: | + | |
| - | * IC1 – not available | ||
| - | * IC2 – JD-01, digital pin 24, RD09 | ||
| - | * IC3 – JD-04, digital pin 27, RD10 | ||
| - | * IC4 – not available | ||
| - | * IC5 – JD-10, digital pin 31, RD12 | ||
| - | When using the MPIDE software, the symbols PIN_IC2, PIN_IC3, and PIN_IC5 can be used to access the capture | + | ---- |
| - | input pins. | + | |
| - | Use of the input capture units is not currently supported | + | ====== Appendix A: Connector Descriptions and Jumper Settings ====== |
| - | version. | + | ^ Label ^ Function |
| + | | JA-JF | **Pmod Ports:** These connectors provide access to the I/O pins on the PIC32MX795 microcontroller. Digilent Pmod peripheral modules can be attached to these connectors. These connectors can be used for general access to I/O pins on the PIC32MX795 microcontroller. | ||
| + | | JPA – JPF | **Pmod header power select:** Any of the Pmod ports can provide either regulated or unregulated power. To use regulated power, place the jumper block over the center pin and the pin marked 3V3. To use unregulated power, place the jumper block over the center pin and the pin marked 5V0. | | ||
| + | | J1 | **USB Serial converter auxiliary signals:** This connector can be used to access the auxiliary RS232 handshaking signals not used on the chipKIT MX4 board. | ||
| + | | J2 | **USB Serial converter (UART) connector: | ||
| + | | J3 | **Power supply source select:** This jumper is used to select the source of main board power. Place the shorting block in the " | ||
| + | | J7 | **I2C1 daisy chain connector: | ||
| + | | J8 | **I2C2 daisy chain connector: | ||
| + | | J9 | **CAN #1 Connector: | ||
| + | | J10 | **CAN #2 Connector: | ||
| + | | J11 | **Ethernet Connector: | ||
| + | | J12-J14 | ||
| + | | J15 | **Debug USB Connector: | ||
| + | | J17 | **External Power Connector: | ||
| + | | J18 | **External Power Connector: | ||
| + | | J19 | **USB Device / OTG Connector: | ||
| + | | J20 | **USB Host Connector: | ||
| + | | JP1 & JP2 | **CAN or Pmod Select:** These jumpers select microcontroller signals RF12 and RF13 for use with CAN #1 or Pmod port JF. Place these jumpers in the CAN position to use CAN #1. Place the jumpers in the PMOD position to use then with Pmod port JF. | | ||
| + | | JP3 & JP4 | **Pull-up enable for I2C1:** These two jumpers are used to enable/ | ||
| + | | JP5 | **CAN #1 Termination: | ||
| + | | JP6 | **CAN #1 5V0 Enable:** This jumper is used to enable/ | ||
| + | | JP7 | **CAN #2 Termination: | ||
| + | | JP8 | **CAN #1 5V0 Enable:** This jumper is used to enable/ | ||
| + | | JP9 | **Do Not Use.** | ||
| + | | JP10 | **USB host power select:** This jumper is used to select which host connector is powered when host power is enabled. Place the shorting block in the " | ||
| + | | JP11 | **USB Serial converter reset disconnect: | ||
| + | | JP17 | **Do Not Use.** | | ||
| - | ===== 16 External Interrupts ===== | + | ---- |
| - | The PIC32 microcontroller provides five external interrupt inputs. An external interrupt input can be used to | + | ====== Appendix B: Example of Configuration Values ====== |
| - | generate an interrupt to the microprocessor CPU when the pin changes state. They can be programmed to | + | |
| - | interrupt on a rising edge or a falling edge on the pin. | + | |
| - | Refer to the PIC32 Family Reference Manual, Section 8, Interrupts | + | The following example illustrates setting the configuration values in the PIC32 microcontroller on the chipKIT Pro MX7. The microcontroller configuration should be done in a single source file in the project, and is typically done in the ' |
| - | external interrupts. | + | |
| - | These are accessed using the attachInterrupt() and detachInterrupt() functions when using the MPIDE software. | + | < |
| - | The interrupt number is specified using the numbers 0-4, or preferably, the symbols EXT_INT0 through EXT_INT4. | + | /* ------------------------------------------------------------ */ |
| - | The symbols PIN_INT0 through PIN_INT4 are also defined to refer to the digital pin numbers used for the external | + | /* PIC32 Configuration Settings |
| - | interrupt inputs. | + | /* ------------------------------------------------------------ */ |
| - | The following gives connector position, chipKIT pin number, and microcontroller I/O port and bit number. Note | + | /* Oscillator Settings |
| - | that INT0-INT1 are on Pmod connectors. INT3 and INT4 are on I2C1 daisy chain connector J7. When using these | + | */ |
| - | pins as external interrupt inputs, they are not available to use for I2C. It may also be necessary to disable the pullups | + | #pragma config FNOSC = PRIPLL // Oscillator selection |
| - | by pulling the shorting blocks from JP3 or JP4. | + | #pragma config POSCMOD = EC // Primary oscillator mode |
| + | #pragma config FPLLIDIV = DIV_2 // PLL input divider | ||
| + | #pragma config FPLLMUL = MUL_20 // PLL multiplier | ||
| + | #pragma config FPLLODIV = DIV_1 // PLL output divider | ||
| + | #pragma config FPBDIV = DIV_8 // Peripheral bus clock divider | ||
| + | #pragma config FSOSCEN = OFF // Secondary oscillator enable | ||
| - | | + | /* Clock control settings |
| - | * INT1 – JE-07, digital pin 36, RE08 | + | */ |
| - | | + | #pragma config IESO = OFF // Internal/ |
| - | | + | #pragma config FCKSM = CSDCMD // Clock switching (CSx)/Clock monitor (CMx) |
| - | | + | #pragma config OSCIOFNC = OFF // Clock output on OSCO pin enable |
| + | /* USB Settings | ||
| + | */ | ||
| + | #pragma config UPLLEN = ON // USB PLL enable | ||
| + | #pragma config UPLLIDIV = DIV_2 // USB PLL input divider | ||
| + | #pragma config FVBUSONIO = OFF // VBUS pin control | ||
| + | #pragma config FUSBIDIO = OFF // USBID pin control | ||
| - | ===== 17 RTCC ===== | + | /* Other Peripheral Device settings |
| + | */ | ||
| + | #pragma config FWDTEN = OFF // Watchdog timer enable | ||
| + | #pragma config WDTPS = PS1024 // Watchdog timer post-scaler | ||
| + | #pragma config FSRSSEL = PRIORITY_7 // SRS interrupt priority | ||
| + | #pragma config FCANIO = OFF // Standard/ | ||
| + | #pragma config FETHIO = ON // Standard/ | ||
| + | #pragma config FMIIEN = OFF // MII/RMII select (OFF=RMII) | ||
| + | /* Code Protection settings | ||
| + | */ | ||
| + | #pragma config CP = OFF // Code protection | ||
| + | #pragma config BWP = OFF // Boot flash write protect | ||
| + | #pragma config PWP = OFF // Program flash write protect | ||
| - | The PIC32 microcontroller contains a low frequency oscillator and Real Time Clock/Calendar circuit, RTCC, which | + | /* Debug settings |
| - | can be used to maintain time and date information. The operation of the RTCC requires a 32.768 KHz frequency | + | */ |
| - | source. The crystal X2 position, just above and on the right of the PIC32 microcontroller, | + | #pragma config ICESEL = ICS_PGx1 // ICE pin selection |
| - | user to solder in a 32 KHz watch crystal. The Citizen CFS206-32.768KDZF-UB is a crystal part that can be used in this | + | </ |
| - | location. | + | |
| - | === Appendix A: Connector Descriptions and Jumper Settings === | + | ---- |
| - | === Appendix | + | ====== Appendix |
| + | ===== Arranged by Microcontroller Pin Number ===== | ||
| - | The following example illustrates setting the configuration values in the PIC32 microcontroller on the ChipKIT Pro | + | ^ PIC32 Pin # ^ Connector Pin ^ chipKIT Pin # ^ MCU Port Bit ^ PIC32 Signal Name ^ Notes ^ |
| - | MX7. The microcontroller configuration should be done in a single source file in the project, and is typically done in | + | | 1 | LD4 | 54 | RG15 | AERXERR/ |
| - | the ‘main’ project source file. This example sets all configuration values to valid values for the ChipKIT Pro MX7 | + | | 3 | JB-08 | 13 | RE05 | PMD5/ |
| - | board. It sets the system clock for processor operation at 80 MHz, and the peripheral bus at 10 MHz. | + | | 4 | JB-09 | 14 | RE06 | PMD6/ |
| + | | 5 | JB-10 | 15 | RE07 | PMD7/ | ||
| + | | 6 | JC-01 | 16 | RC01 | T2CK/ | ||
| + | | 7 | N/A | N/A | RC02 | T3CK/ | ||
| + | | 8 | N/A | N/A | RC03 | T4CK/ | ||
| + | | 9 | JD-03 | 26 | RC04 | T5CK/ | ||
| + | | 10 | BTN1 | 47 | RG06 | .../ | ||
| + | | 11 | BTN2 | 49 | RG07 | .../ | ||
| + | | 12 | N/A | N/A | RG08 | .../ | ||
| + | | 14 | N/A | N/A | RG09 | .../ | ||
| + | | 17 | BTN3 | 50 | RA00 | TMS/ | ||
| + | | 18 | JE-07 | 36 | RE08 | AERXD0/ | ||
| + | | 19 | JF-07 | 44 | RE09 | AERXD1/ | ||
| + | | 20 | N/A | 59 | RB05 | AN5/ | ||
| + | | 21 | JA-03 | 2 | RB04 | AN4/ | ||
| + | | 22 | JA-02 | 1 | RB03 | AN3/ | ||
| + | | 23 | JA-01 | 0 | RB02 | AN2/ | ||
| + | | 24 | N/A | N/A | RB01 | PGEC1/ | ||
| + | | 25 | N/A | N/A | RB00 | PGED1/ | ||
| + | | 26 | JA-04 | 3 | RB06 | PGEC2/ | ||
| + | | 27 | JA-07 | 4 | RB07 | PGED2/ | ||
| + | | 28 | JE-09 | 38 | RA09 | Vref-/ | ||
| + | | 29 | JE-10 | 39 | RA10 | Vref+/ | ||
| + | | 32 | JA-08 | 5 | RB08 | AN8/ | ||
| + | | 33 | JA-09 | 6 | RB09 | AN9/ | ||
| + | | 34 | JA-10 | 7 | RB10 | CVrefout/ | ||
| + | | 35 | N/A | N/A | RB11 | AN11/ | ||
| + | | 38 | JF-08 | 45 | RA01 | TCK/ | ||
| + | | 39 | JF-04 | 43 | RF13 | AC1TX/ | ||
| + | | 40 | JF-01 | 40 | RF12 | AC1RX/ | ||
| + | | 41 | N/A | N/A | RB12 | AN12/ | ||
| + | | 42 | N/A | N/A | RB13 | AN13/ | ||
| + | | 43 | JC-10 | 23 | RB14 | AN14/ | ||
| + | | 44 | JC-07 | 20 | RB15 | AN15/.../ | ||
| + | | 47 | JE-01 | 32 | RD14 | AETXD0/ | ||
| + | | 48 | JE-04 | 35 | RD15 | AETXD1/ | ||
| + | | 49 | JF-03 | 42 | RF04 | SDA3A/ | ||
| + | | 50 | JF-02 | 41 | RF05 | SCL3A/ | ||
| + | | 51 | N/A | N/A | RF03 | USBID/ | ||
| + | | 52 | JE-03 | 34 | RF02 | SDA1A/ | ||
| + | | 53 | JE-02 | 33 | RF08 | SCL1A/ | ||
| + | | 56 | N/A | N/A | RG03 | D-/ | ||
| + | | 57 | N/A | N/A | RG02 | D+/ | ||
| + | | 58 | J7-1, J7-2 | 55 | RA02 | SCL2/ | ||
| + | | 59 | J7-3, J7-4 | 56 | RA03 | SDA2/ | ||
| + | | 60 | JF-09 | 46 | RA04 | TDI/ | ||
| + | | 61 | JF-10 | 48 | RA05 | TDO/ | ||
| + | | 63 | N/A | N/A | RC12 | OSC1/ | ||
| + | | 64 | N/A | N/A | RC15 | OSC2/ | ||
| + | | 66 | J8-1, J8-2 | 57 | RA14 | AETXCLK/ | ||
| + | | 67 | J8-3, J8-4 | 58 | RA15 | AETXEN/ | ||
| + | | 68 | N/A | N/A | RD08 | RTCC/ | ||
| + | | 69 | JD-01 | 24 | RD09 | SS1/ | ||
| + | | 70 | JD-04 | 27 | RD10 | SCK1/ | ||
| + | | 71 | N/A | N/A | RD11 | EMDC/ | ||
| + | | 72 | JD-02 | 25 | RD00 | SDO1/ | ||
| + | | 73 | N/A | N/A | RC13 | SOSCI/ | ||
| + | | 74 | N/A | N/A | RC14 | SOSCO/ | ||
| + | | 76 | JD-07 | 28 | RD01 | OC2/ | ||
| + | | 77 | JD-08 | 29 | RD02 | OC3/ | ||
| + | | 78 | JD-09 | 30 | RD03 | OC4/ | ||
| + | | 79 | JD-10 | 31 | RD12 | ETXD2/ | ||
| + | | 80 | N/A | 60 | RD13 | ETXD3/ | ||
| + | | 81 | JC-09 | 22 | RD04 | OC5/ | ||
| + | | 82 | JC-08 | 21 | RD05 | PMRD/ | ||
| + | | 83 | N/A | N/A | RD06 | ETXEN/ | ||
| + | | 84 | JC-04 | 19 | RD07 | ETXCLK/ | ||
| + | | 87 | N/A | N/A | RF00 | C1RX/ | ||
| + | | 88 | N/A | N/A | RF01 | C1TX/ | ||
| + | | 89 | JC-03 | 18 | RG01 | C2TX/ | ||
| + | | 90 | JC-02 | 17 | RG00 | C2RX/ | ||
| + | | 91 | N/A | N/A | RA06 | TRCLK/ | ||
| + | | 92 | JE-08 | 37 | RA07 | TRD3/ | ||
| + | | 93 | JB-01 | 8 | RE00 | PMD0/ | ||
| + | | 94 | JB-02 | 9 | RE01 | PMD1/ | ||
| + | | 95 | LD3 | 53 | RG14 | TRD2/ | ||
| + | | 96 | LD1 | 51 | RG12 | TRD1/ | ||
| + | | 97 | LD2 | 52 | RG13 | TRD0/ | ||
| + | | 98 | JB-03 | 10 | RE02 | PMD2/ | ||
| + | | 99 | JB-04 | 11 | RE03 | PMD3/ | ||
| + | | 100 | JB-07 | 12 | RE04 | PMD4/ | ||
| - | === Appendix C: Connector Pinout Tables === | ||
| - | === Arranged by Connector Pin Number and Digital Pin Number === | + | ===== Arranged by Connector Pin Number and Digital Pin Number |
| - | === Arranged by MCU Port and Bit Number === | + | ^ PIC32 Pin # ^ Connector Pin # ^ chipKIT Pin # ^ MCU Port Bit ^ PIC32 Signal Name ^ Notes ^ |
| + | | 23 | JA-01 | 0 | RB02 | AN2/ | ||
| + | | 22 | JA-02 | 1 | RB03 | AN3/ | ||
| + | | 21 | JA-03 | 2 | RB04 | AN4/ | ||
| + | | 26 | JA-04 | 3 | RB06 | PGEC2/ | ||
| + | | 27 | JA-07 | 4 | RB07 | PGED2/ | ||
| + | | 32 | JA-08 | 5 | RB08 | AN8/ | ||
| + | | 33 | JA-09 | 6 | RB09 | AN9/ | ||
| + | | 34 | JA-10 | 7 | RB10 | CVrefout/ | ||
| + | | 93 | JB-01 | 8 | RE00 | PMD0/ | ||
| + | | 94 | JB-02 | 9 | RE01 | PMD1/ | ||
| + | | 98 | JB-03 | 10 | RE02 | PMD2/ | ||
| + | | 99 | JB-04 | 11 | RE03 | PMD3/ | ||
| + | | 100 | JB-07 | 12 | RE04 | PMD4/ | ||
| + | | 3 | JB-08 | 13 | RE05 | PMD5/ | ||
| + | | 4 | JB-09 | 14 | RE06 | PMD6/ | ||
| + | | 5 | JB-10 | 15 | RE07 | PMD7/ | ||
| + | | 6 | JC-01 | 16 | RC01 | T2CK/ | ||
| + | | 90 | JC-02 | 17 | RG00 | C2RX/ | ||
| + | | 89 | JC-03 | 18 | RG01 | C2TX/ | ||
| + | | 84 | JC-04 | 19 | RD07 | ETXCLK/ | ||
| + | | 44 | JC-07 | 20 | RB15 | AN15/ | ||
| + | | 82 | JC-08 | 21 | RD05 | PMRD/ | ||
| + | | 81 | JC-09 | 22 | RD04 | OC5/ | ||
| + | | 43 | JC-10 | 23 | RB14 | AN14/ | ||
| + | | 69 | JD-01 | 24 | RD09 | SS1/ | ||
| + | | 72 | JD-02 | 25 | RD00 | SDO1/ | ||
| + | | 9 | JD-03 | 26 | RC04 | T5CK/ | ||
| + | | 70 | JD-04 | 27 | RD10 | SCK1/ | ||
| + | | 76 | JD-07 | 28 | RD01 | OC2/ | ||
| + | | 77 | JD-08 | 29 | RD02 | OC3/ | ||
| + | | 78 | JD-09 | 30 | RD03 | OC4/ | ||
| + | | 79 | JD-10 | 31 | RD12 | ETXD2/ | ||
| + | | 47 | JE-01 | 32 | RD14 | AETXD0/ | ||
| + | | 53 | JE-02 | 33 | RF08 | SCL1A/ | ||
| + | | 52 | JE-03 | 34 | RF02 | SDA1A/ | ||
| + | | 48 | JE-04 | 35 | RD15 | AETXD1/ | ||
| + | | 18 | JE-07 | 36 | RE08 | AERXD0/ | ||
| + | | 92 | JE-08 | 37 | RA07 | TRD3/ | ||
| + | | 28 | JE-09 | 38 | RA09 | Vref-/ | ||
| + | | 29 | JE-10 | 39 | RA10 | Vref+/ | ||
| + | | 40 | JF-01 | 40 | RF12 | AC1RX/ | ||
| + | | 50 | JF-02 | 41 | RF05 | SCL3A/ | ||
| + | | 49 | JF-03 | 42 | RF04 | SDA3A/ | ||
| + | | 39 | JF-04 | 43 | RF13 | AC1TX/ | ||
| + | | 19 | JF-07 | 44 | RE09 | AERXD1/ | ||
| + | | 38 | JF-08 | 45 | RA01 | TCK/ | ||
| + | | 60 | JF-09 | 46 | RA04 | TDI/ | ||
| + | | 10 | BTN1 | 47 | RG06 | .../ | ||
| + | | 61 | JF-10 | 48 | RA05 | TDO/ | ||
| + | | 11 | BTN2 | 49 | RG07 | .../ | ||
| + | | 17 | BTN3 | 50 | RA00 | TMS/ | ||
| + | | 96 | LD1 | 51 | RG12 | TRD1/ | ||
| + | | 97 | LD2 | 52 | RG13 | TRD0/ | ||
| + | | 95 | LD3 | 53 | RG14 | TRD2/ | ||
| + | | 1 | LD4 | 54 | RG15 | AERXERR/ | ||
| + | | 58 | J7-1, J7-2 | 55 | RA02 | SCL2/ | ||
| + | | 59 | J7-3, J7-4 | 56 | RA03 | SDA2/ | ||
| + | | 66 | J8-1, J8-2 | 57 | RA14 | AETXCLK/ | ||
| + | | 67 | J8-3, J8-4 | 58 | RA15 | AETXEN/ | ||
| + | | 20 | N/A | 59 | RB05 | AN5/ | ||
| + | | 80 | N/A | 60 | RD13 | ETXD3/ | ||
| + | | 7 | N/A | N/A | RC02 | T3CK/ | ||
| + | | 8 | N/A | N/A | RC03 | T4CK/ | ||
| + | | 12 | N/A | N/A | RG08 | .../ | ||
| + | | 14 | N/A | N/A | RG09 | .../ | ||
| + | | 24 | N/A | N/A | RB01 | PGEC1/ | ||
| + | | 25 | N/A | N/A | RB00 | PGED1/ | ||
| + | | 35 | N/A | N/A | RB11 | AN11/ | ||
| + | | 41 | N/A | N/A | RB12 | AN12/ | ||
| + | | 42 | N/A | N/A | RB13 | AN13/ | ||
| + | | 51 | N/A | N/A | RF03 | USBID/ | ||
| + | | 56 | N/A | N/A | RG03 | D-/ | ||
| + | | 57 | N/A | N/A | RG02 | D+/ | ||
| + | | 63 | N/A | N/A | RC12 | OSC1/ | ||
| + | | 64 | N/A | N/A | RC15 | OSC2/ | ||
| + | | 68 | N/A | N/A | RD08 | RTCC/ | ||
| + | | 71 | N/A | N/A | RD11 | EMDC/ | ||
| + | | 73 | N/A | N/A | RC13 | SOSCI/ | ||
| + | | 74 | N/A | N/A | RC14 | SOSCO/ | ||
| + | | 83 | N/A | N/A | RD06 | ETXEN/ | ||
| + | | 87 | N/A | N/A | RF00 | C1RX/ | ||
| + | | 88 | N/A | N/A | RF01 | C1TX/ | ||
| + | | 91 | N/A | N/A | RA06 | TRCLK/ | ||
| + | ===== Arranged by MCU Port and Bit Number ===== | ||
| + | ^ PIC32 Pin # ^ Connector Pin # ^ chipKIT Pin # ^ MCU Port Bit ^ PIC32 Signal Name ^ Notes ^ | ||
| + | | 17 | BTN3 | 50 | RA00 | TMS/ | ||
| + | | 38 | JF-08 | 45 | RA01 | TCK/ | ||
| + | | 58 | J7-1, J7-2 | 55 | RA02 | SCL2/ | ||
| + | | 59 | J7-3, J7-4 | 56 | RA03 | SDA2/ | ||
| + | | 60 | JF-09 | 46 | RA04 | TDI/ | ||
| + | | 61 | JF-10 | 48 | RA05 | TDO/ | ||
| + | | 91 | N/A | 47 | RA06 | TRCLK/ | ||
| + | | 92 | JE-08 | 37 | RA07 | TRD3/ | ||
| + | | 28 | JE-09 | 38 | RA09 | Vref-/ | ||
| + | | 29 | JE-10 | 39 | RA10 | Vref+/ | ||
| + | | 66 | J8-1, J8-2 | 57 | RA14 | AETXCLK/ | ||
| + | | 67 | J8-3, J8-4 | 58 | RA15 | AETXEN/ | ||
| + | | 25 | N/A | N/A | RB00 | PGED1/ | ||
| + | | 24 | N/A | N/A | RB01 | PGEC1/ | ||
| + | | 23 | JA-01 | 0 | RB02 | AN2/ | ||
| + | | 22 | JA-02 | 1 | RB03 | AN3/ | ||
| + | | 21 | JA-03 | 2 | RB04 | AN4/ | ||
| + | | 20 | N/A | 59 | RB05 | AN5/ | ||
| + | | 26 | JA-04 | 3 | RB06 | PGEC2/ | ||
| + | | 27 | JA-07 | 4 | RB07 | PGED2/ | ||
| + | | 32 | JA-08 | 5 | RB08 | AN8/ | ||
| + | | 33 | JA-09 | 6 | RB09 | AN9/ | ||
| + | | 34 | JA-10 | 7 | RB10 | CVrefout/ | ||
| + | | 35 | N/A | N/A | RB11 | AN11/ | ||
| + | | 41 | N/A | N/A | RB12 | AN12/ | ||
| + | | 42 | N/A | N/A | RB13 | AN13/ | ||
| + | | 43 | JC-10 | 23 | RB14 | AN14/ | ||
| + | | 44 | JC-07 | 20 | RB15 | AN15/ | ||
| + | | 6 | JC-01 | 16 | RC01 | T2CK/ | ||
| + | | 7 | N/A | N/A | RC02 | T3CK/ | ||
| + | | 8 | N/A | N/A | RC03 | T4CK/ | ||
| + | | 9 | JD-03 | 26 | RC04 | T5CK/ | ||
| + | | 63 | N/A | N/A | RC12 | OSC1/ | ||
| + | | 73 | N/A | N/A | RC13 | SOSCI/ | ||
| + | | 74 | N/A | N/A | RC14 | SOSCO/ | ||
| + | | 64 | N/A | N/A | RC15 | OSC2/ | ||
| + | | 72 | JD-02 | 25 | RD00 | SDO1/ | ||
| + | | 76 | JD-07 | 28 | RD01 | OC2/ | ||
| + | | 77 | JD-08 | 29 | RD02 | OC3/ | ||
| + | | 78 | JD-09 | 30 | RD03 | OC4/ | ||
| + | | 81 | JC-09 | 22 | RD04 | OC5/ | ||
| + | | 82 | JC-08 | 21 | RD05 | PMRD/ | ||
| + | | 83 | N/A | N/A | RD06 | ETXEN/ | ||
| + | | 84 | JC-04 | 19 | RD07 | ETXCLK/ | ||
| + | | 68 | N/A | N/A | RD08 | RTCC/ | ||
| + | | 69 | JD-01 | 24 | RD09 | SS1/ | ||
| + | | 70 | JD-04 | 27 | RD10 | SCK1/ | ||
| + | | 71 | N/A | N/A | RD11 | EMDC/ | ||
| + | | 79 | JD-10 | 31 | RD12 | ETXD2/ | ||
| + | | 80 | N/A | 60 | RD13 | ETXD3/ | ||
| + | | 47 | JE-01 | 32 | RD14 | AETXD0/ | ||
| + | | 48 | JE-04 | 35 | RD15 | AETXD1/ | ||
| + | | 93 | JB-01 | 8 | RE00 | PMD0/ | ||
| + | | 94 | JB-02 | 9 | RE01 | PMD1/ | ||
| + | | 98 | JB-03 | 10 | RE02 | PMD2/ | ||
| + | | 99 | JB-04 | 11 | RE03 | PMD3/ | ||
| + | | 100 | JB-07 | 12 | RE04 | PMD4/ | ||
| + | | 3 | JB-08 | 13 | RE05 | PMD5/ | ||
| + | | 4 | JB-09 | 14 | RE06 | PMD6/ | ||
| + | | 5 | JB-10 | 15 | RE07 | PMD7/ | ||
| + | | 18 | JE-07 | 36 | RE08 | AERXD0/ | ||
| + | | 19 | JF-07 | 44 | RE09 | AERXD1/ | ||
| + | | 87 | N/A | N/A | RF00 | C1RX/ | ||
| + | | 88 | N/A | N/A | RF01 | C1TX/ | ||
| + | | 52 | JE-03 | 34 | RF02 | SDA1A/ | ||
| + | | 51 | N/A | N/A | RF03 | USBID/ | ||
| + | | 49 | JF-03 | 42 | RF04 | SDA3A/ | ||
| + | | 50 | JF-02 | 41 | RF05 | SCL3A/ | ||
| + | | 53 | JE-02 | 33 | RF08 | SCL1A/ | ||
| + | | 40 | JF-01 | 40 | RF12 | AC1RX/ | ||
| + | | 39 | JF-04 | 43 | RF13 | AC1TX/ | ||
| + | | 90 | JC-02 | 17 | RG00 | C2RX/ | ||
| + | | 89 | JC-03 | 18 | RG01 | C2TX/ | ||
| + | | 57 | N/A | N/A | RG02 | D+/ | ||
| + | | 56 | N/A | N/A | RG03 | D-/ | ||
| + | | 10 | BTN1 | 47 | RG06 | .../ | ||
| + | | 11 | BTN2 | 49 | RG07 | .../ | ||
| + | | 12 | N/A | N/A | RG08 | .../ | ||
| + | | 14 | N/A | N/A | RG09 | .../ | ||
| + | | 96 | LD1 | 51 | RG12 | TRD1/ | ||
| + | | 97 | LD2 | 52 | RG13 | TRD0/ | ||
| + | | 95 | LD3 | 53 | RG14 | TRD2/ | ||
| + | | 1 | LD4 | 54 | RG15 | AERXERR/ | ||

