Olimex PIC32-PINGUINO-MICRO User guide

PIC32-PINGUINO-MICRO development board
USER’S MANUAL
Revision A, April 2012
Designed by OLIMEX Ltd, 2011
All boards produced by Olimex LTD are ROHS compliant
OLIMEX© 2012 PIC32-PINGUINO-MICRO User's Manual
Disclaimer:
© 2012 Olimex Ltd. Olimex®, logo and combinations thereof, are registered trademarks of Olimex Ltd. Other terms and product names may be trademarks of others.
The information in this document is provided in connection with Olimex products. No license, express or implied or otherwise, to any intellectual property right is granted by this document or in connection with the sale of Olimex products.
Neither the whole nor any part of the information contained in or the product described in this document may be adapted or reproduced in any material from except with the prior written permission of the copyright holder, unless it is clearly stated by Olimex that the product is licensed under the Open Source Hardware (OSHW) Definition 1.0.
The product described in this document is subject to continuous development and improvements. All particulars of the product and its use contained in this document are given by OLIMEX in good faith. However all warranties implied or expressed including but not limited to implied warranties of merchantability or fitness for purpose are excluded. This document is intended only to assist the reader in the use of the product. OLIMEX Ltd. shall not be liable for any loss or damage arising from the use of any information in this document or any error or omission in such information or any incorrect use of the product.
Thank you for purchasing PIC32-PINGUINO-MICRO development board
assembled by OLIMEX LTD
Page 2 of 29
OLIMEX© 2012 PIC32-PINGUINO-MICRO User's Manual
Table of Contents
CHAPTER 1.................................................................................................................5
OVERVIEW.................................................................................................................5
1. Introduction to the chapter.......................................................................................................5
1.1 Features.....................................................................................................................................5
1.2 Similar boards..........................................................................................................................5
1.3 Organization.............................................................................................................................6
Chapter 2......................................................................................................................7
Introduction to arduino/pinguino/maple...................................................................7
2. What is Arduino?.......................................................................................................................7
2.1 First steps with Pinguino IDE.................................................................................................8
CHAPTER 3 ................................................................................................................9
SETTING UP THE PIC32-PINGUINO-MICRO BOARD.....................................9
3. Introduction to the chapter.......................................................................................................9
3.1 Electrostatic warning...............................................................................................................9
3.2 Requirements...........................................................................................................................9
3.3 Powering the board..................................................................................................................9
3.4 Prebuilt software....................................................................................................................10
CHAPTER 4...............................................................................................................11
PIC32-PINGUINO-MICRO BOARD DESCRIPTION.........................................11
4. Introduction to the chapter.....................................................................................................11
4.1 Layout (top view)...................................................................................................................11
4.2 Layout (bottom view).............................................................................................................12
CHAPTER 5...............................................................................................................13
THE PIC32MX440F256H MICROCONTROLLER.............................................13
5. Introduction to the chapter.....................................................................................................13
5.1 The microcontroller...............................................................................................................13
CONTROL CIRCUITY............................................................................................15
6. Introduction to the chapter.....................................................................................................15
6.1 Reset........................................................................................................................................15
6.2 Clock.......................................................................................................................................15
CHAPTER 7...............................................................................................................16
HARDWARE.............................................................................................................16
7. Introduction to the chapter.....................................................................................................16
7.1 mini ICSP................................................................................................................................16
7.2 UEXT......................................................................................................................................16
Page 3 of 29
OLIMEX© 2012 PIC32-PINGUINO-MICRO User's Manual
7.3 CON1.......................................................................................................................................17
7.4 CON2.......................................................................................................................................18
7.5 USB-OTG (On-The-Go)........................................................................................................19
7.6 SD/MMC Micro card slot......................................................................................................19
7.7 Jumper description................................................................................................................20
7.8 Pinguino IDE PIN TABLE....................................................................................................21
7.9 Additional hardware components........................................................................................22
CHAPTER 8...............................................................................................................23
MEMORY AND BLOCK DIAGRAM....................................................................23
8. Introduction to the chapter.....................................................................................................23
8.1 Memory organization............................................................................................................24
CHAPTER 9...............................................................................................................25
SCHEMATICS...........................................................................................................25
9. Introduction to the chapter.....................................................................................................25
9.1 Eagle schematic......................................................................................................................25
9.2 Physical dimensions...............................................................................................................27
CHAPTER 10.............................................................................................................28
REVISION HISTORY..............................................................................................28
10. Introduction to the chapter...................................................................................................28
10.1 Document revision...............................................................................................................28
10.2 Web page of your device.....................................................................................................29
Page 4 of 29
OLIMEX© 2012 PIC32-PINGUINO-MICRO User's Manual

CHAPTER 1

OVERVIEW

1. Introduction to the chapter

Thank you for choosing the PIC32-PINGUINO-MICRO development board from Olimex! This document provides a User’s Guide for the Olimex PIC32-PINGUINO-MICRO development board. As an overview, this chapter gives the scope of this document and lists the board’s features. The document’s organization is then detailed.
The PIC32-PINGUINO-MICRO development board enables code development of applications running on the PIC32MX220F032D microcontroller, manufactured by Microchip technology.

1.1 Features

PIC32MX440F256H 80 MHz microcontroller 256KB Flash 32KB RAM
microSD card for data logging
UEXT connector which allow many existing modules like RF, ZIGBEE, GSM, GPS to be
connected
Two LEDs
One BUTTON
RESET button
USB-OTG (On-the-go) connector – so your device acts as a host allowing easier connection
All PIC ports available on 0.1" connectors
miniICSP connector 0.05"step if you do not want to use Pinguino IDE and want to program
this board with PIC-ICD2-POCKET or PIC-KIT3 you should use also PIC-ICSP convertor board, same applies for Microchip programmers.
Dimensions only 33,4mm at 54mm (1,3’’ at 2,125’’)

1.2 Similar boards

PIC32-PINGUINO-OTG is the bigger version of PIC32-PINGINO-MICRO. It features mounted external power connector, Li-Ion battery option with built-in onboard charger, 1 LED more, wider range of power supply options, 4 mount holes making board attachment easier.
Page 5 of 29
OLIMEX© 2012 PIC32-PINGUINO-MICRO User's Manual

1.3 Organization

Each section in this document covers a separate topic, organized as follow:
Chapter 1 is an overview of the board usage and features
Chapter 2 has a short introduction to Arduino platform and its derivatives Pinguino and
Maple
Chapter 3 provides a guide for quickly setting up the board
Chapter 4 contains the general board diagram and layout
Chapter 5 describes the component that is the heart of the board: the PIC32MX220F032D
microcontroller
Chapter 6 is an explanation of the control circuitry associated with the microcontroller to
reset. Also shows the clocks on the board
Chapter 7 covers the connector pinout, peripherals and jumper description
Chapter 8 shows the processor diagram and memory map
Chapter 9 provides the schematics
Chapter 10 contains the revision history
Page 6 of 29
OLIMEX© 2012 PIC32-PINGUINO-MICRO User's Manual

CHAPTER 2

INTRODUCTION TO ARDUINO/PINGUINO/MAPLE

2. What is Arduino?

Arduino is an open-source electronics prototyping platform, designed to make the process of using electronics in multidisciplinary projects easily accessible. The hardware consists of a simple open hardware design for the Arduino board with an Atmel AVR processor and on-board I/O support. The software consists of a standard programming language and the boot loader that runs on the board.
Arduino hardware is programmed using a Wiring-based language (syntax + libraries), similar to C+ + with some simplifications and modifications, and a Processing-based Integrated Development Environment (IDE).
The project began in Ivrea, Italy in 2005 aiming to make a device for controlling student-built interaction design projects less expensively than other prototyping systems available at the time. As of February 2010 more than 120,000 Arduino boards had been shipped. Founders Massimo Banzi and David Cuartielles named the project after a local bar named Arduino. The name is an Italian masculine first name, meaning "strong friend". The English pronunciation is "Hardwin", a namesake of Arduino of Ivrea.
More information could be found at the creators web page http://arduino.cc/ and in the Arduino Wiki http://en.wikipedia.org/wiki/Arduino
To make the story short - Arduino is easy for beginners who lack Electronics knowledge, but also does not restrict professionals as they can program it in C++ or mix of Arduino/C++ language.
There are thousands of projects which makes it easy to startup as there is barely no field where Arduino enthusiasts to have not been already.
Arduino has inspired two other major derivates - MAPLE and PINGUINO. Based on 8-bit AVR technology the computational power of Arduino boards is modest, this is why a team from MIT developed the MAPLE project which is based on ARM7 STM32F103RBT6 microcontroller. The board have same friendly IDE as Arduino and offers the same capabilities as hardware and software but runs the Arduino code much faster. The Maple project can be found at http://leaflabs.com
In parallel with Arduino another project was started called PINGUINO. This project chose its first implementation to be with PIC microcontrollers, as AVRs were hard to find in some parts of the world like South America so it is likely to see lot of PINGUINO developers are from that part of the
Page 7 of 29
OLIMEX© 2012 PIC32-PINGUINO-MICRO User's Manual
world. PINGUINO project founders decided to go with Python instead Java for processing language. For the moment PINGUINO is much more flexible than Arduino as it is not limited to 8bit microcontrollers. Currently the IDE, which has GCC in background, can support 8-bit PIC microcontrollers, 32bit PIC32 (MIPS) microcontrollers and ARM7/CORTEXM3 microcontrollers which makes PINGUINO very flexible because once you make your project you can migrate easily through different hardware platforms and not being bound to a single microcontroller manufacturer. The PINGUINO project can be found at: http://www.pinguino.cc.

2.1 First steps with Pinguino IDE

Download the latest Pinguino IDE distribution depending on your operation system and install it. Connect your device in bootloader mode to the computer (for PIC32-PINGUINO-MICRO hold BUT and press RST after connected). Start the IDE from it's shortcut. From Preferences choose board (for PIC32-PINGUINO-MICRO that would be PIC32 Pinguino Micro). From File->Open navigate to the examples folder which is found in the Pingino IDE installation folder. Choose a simple example to begin with like BlinkWithoutDelay.pde and open it. Change the pins for the LEDs in the example according the the table in the hardware section and the schematic (for instance LEDs at the moment of writing are pinguino pins 10 and 32). Click “Compile” (blue arrow) and after it compiles click “Upload to Pinguino” (green arrow). Voila, you have uploaded code to your Pinguino device.
Now start exploring the world of Pinguino! More info and help on the software can be found and the official pinguino web site. You can leave your feedback on the project and report bugs at the forum: http://forum.pinguino.cc/.
Page 8 of 29
OLIMEX© 2012 PIC32-PINGUINO-MICRO User's Manual

CHAPTER 3

SETTING UP THE PIC32-PINGUINO-MICRO BOARD

3. Introduction to the chapter

This section helps you set up the PIC32-PINGUINO-MICRO development board for the first time.
Please consider first the electrostatic warning to avoid damaging the board, then discover the hardware and software required to operate the board.
The procedure to power up the board is given, and a description of the default board behavior is detailed.

3.1 Electrostatic warning

PIC32-PINGUINO-MICRO is shipped in a protective anti-static package. The board must not be exposed to high electrostatic potentials. A grounding strap or similar protective device should be worn when handling the board. Avoid touching the component pins or any other metallic element.

3.2 Requirements

In order to set up the PIC32-PINGUINO-MICRO, the following items are required:
If using the free PINGUINO IDE the ONLY requirement is a miniUSB to USB-A cable to connect to a computer.
If you want to upgrade the bootloader, or program the board without the PINGUINO-IDE there are pinouts for ICSP programmer (note that there isn't a connector mounted). You can use our PIC­KIT3 programmer for custom programming without PINGUINO IDE.

3.3 Powering the board

The PIC32-PINGUINO-MICRO board is self-powered by the miniUSB if it is connected to a USB hub of a computer.
To enter bootloader mode – either power the board hold button BUT, press RST, release BUT; or hold BUT, power the board, release BUT
Page 9 of 29
Loading...
+ 20 hidden pages