When students build their own development boards, they then own the boards and can hack them.
This means they can learn more and use the boards in creative ways.
There are two target boards which were created by Sean Carroll:
--- The first is large and intended to be used for the lab exercise part of the course.
--- The second board is small and is intended to be a CPU carrier for final projects and other space-limited uses.
Both boards are programmed using a PICkit 3 programmer/debugger, or by tapping the programming signals
from a Microstick2 (see below).
The large board
The large board features a port expander, DAC, TFT socket, programming header, and power supply.
-- Assembly instructions
-- Large board schematic and layout (ExpressPCB format)
-- Using the Port Expander and ZIP code (Sean Carroll)
-- Using the TFT LCD
-- SPI and DAC
An example uses Protothreads 1.2.1 to drive the TFT-LCD, on-board LED and DAC. The example displays some graphics, blinks the LED at 0.5 Hz and outputs a 24.4 Hz sawtooth from the DACA (DAC channel A) output pin. SPI channel 1 runs the TFT, SPI channel 2 runs the DAC. Pin RA0 is attached to the LED. (code, ZIP)
PIC32 i/o pins used on big board, sorted by port number. Any pin can be
recovered for general use by unplugging the device that uses the pin.
SPI chip select ports have jumpers to unplug.
RA0 on-board LED. Active high.
RA2 port expander intZ
RA3 port expander intY
RA4 PortExpander SPI MISO
RB0 TFT D/C
RB1 TFT-LCD SPI chip select (can be disconnected/changed)
RB2 TFT reset
RB4 DAC SPI chip select (can be disconnected/changed)
RB5 DAC/PortExpander SPI MOSI
RB9 Port Expander SPI chip select (can be disconnected/changed)
RB11 TFT SPI MOSI
RB14 TFT SPI Sclock
RB15 DAC/PortExpander SPI Sclock
The small board
The small board is stripped down to just a MCU and power supply.
The intention is that this board can be built into projects easily.
-- Assembly instructions.
-- Small board schematic and layout (ExpressPCB format)
Microstick2 as a programmer
The connections to the microcontroller socket on the Microstick2 act like the
standard programming signals from the PICKIT3, which was used to develop the boards you will build.
On both boards, J1 marks pin1 of the 6-pin ICSP header.
Note that for the pins shown, the programming selector switch on the Microstick2 must be set to position A.
connector on boardMicrostick2
prog data (PGD)44
prog clock (PGC)55
A wiring example is shown below. Note that pin 1, MCLR, is only available on the Microstick2 DIP socket as shown.
Also note that the programming selector switch on the Microstick2 must be set to position A.
When you click on the small images, you will get enlargments with the pin numbers indicated. For systems that do not
draw too much power, you could attach the VDD output from the Microstick2 to pin 2 of the programming header to provide
power, BUT ONLY IF you do not connect any other power to the big or small board.
- Parts spreadsheet
- Small board schematic and layout (ExpressPCB format)
- Large board schematic and layout (ExpressPCB format)
- Port Expander Using the Port Expander and ZIP code (Sean Carroll)
- PIC32MX2xx datasheet -- Errata
- PIC32MX250 configuration options
- JTAG enable overrides pins 13, 14, and 15
- Primary oscillator enable overrides pins 9 and 10
- Secondary oscillator enalbe overrudes pins 11 and 12
- PIC32 reference manual -- go to PIC32 page, then scroll down to: Documentation>Reference Manual and choose the section