OLIMEX PIC32-PINGUINO-MX220 User Manual

PIC32-PINGUINO-MX220 development board
USER’S MANUAL
Initial release, March 2012
Designed by OLIMEX Ltd, 2011
All boards produced by Olimex LTD are ROHS compliant
OLIMEX© 2012 PIC32-PINGUINO-MX220 User's Manual
© 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-MX220 development board
assembled by OLIMEX LTD
Page 2 of 28
OLIMEX© 2012 PIC32-PINGUINO-MX220 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......................................................................................................................8
Introduction to arduino/pinguino/maple...................................................................8
2. What is Arduino?.......................................................................................................................8
2.1 First steps with Pinguino IDE.................................................................................................9
CHAPTER 3 ..............................................................................................................10
SETTING UP THE PIC32-PINGUINO-MX220 BOARD.....................................10
3. Introduction to the chapter.....................................................................................................10
3.1 Electrostatic warning.............................................................................................................10
3.2 Requirements.........................................................................................................................10
3.3 Powering the board................................................................................................................10
3.4 Prebuilt software....................................................................................................................11
CHAPTER 4...............................................................................................................12
PIC32-PINGUINO-MX220 BOARD DESCRIPTION..........................................12
4. Introduction to the chapter.....................................................................................................12
4.1 Layout (top view)...................................................................................................................12
CHAPTER 5...............................................................................................................13
THE PIC32MX220F032D MICROCONTROLLER.............................................13
5. Introduction to the chapter.....................................................................................................13
5.1 The microcontroller...............................................................................................................13
CONTROL CIRCUITY............................................................................................16
6. Introduction to the chapter.....................................................................................................16
6.1 Reset........................................................................................................................................16
6.2 Clock.......................................................................................................................................16
CHAPTER 7...............................................................................................................17
HARDWARE.............................................................................................................17
7. Introduction to the chapter.....................................................................................................17
7.1 Battery connector...................................................................................................................17
7.2 ICSP pin holes........................................................................................................................17
7.3 UEXT......................................................................................................................................18
Page 3 of 28
OLIMEX© 2012 PIC32-PINGUINO-MX220 User's Manual
7.4 Arduino shield pin holes........................................................................................................19
7.5 USB mini connector...............................................................................................................20
7.7 Jumper description................................................................................................................20
7.9 Additional hardware components........................................................................................21
CHAPTER 8...............................................................................................................22
MEMORY AND BLOCK DIAGRAM....................................................................22
8. Introduction to the chapter.....................................................................................................22
8.1 Memory organization............................................................................................................23
CHAPTER 9...............................................................................................................24
SCHEMATICS...........................................................................................................24
9. Introduction to the chapter.....................................................................................................24
9.1 Eagle schematic......................................................................................................................24
9.2 Physical dimensions...............................................................................................................26
CHAPTER 10.............................................................................................................27
REVISION HISTORY..............................................................................................27
10. Introduction to the chapter...................................................................................................27
10.1 Document revision...............................................................................................................27
10.2 Web page of your device.....................................................................................................28
Page 4 of 28
OLIMEX© 2012 PIC32-PINGUINO-MX220 User's Manual
CHAPTER 1
OVERVIEW
1. Introduction to the chapter
Thank you for choosing the PIC32-PINGUINO-MX220 development board from Olimex! This document provides a User’s Guide for the Olimex PIC32-PINGUINO-MX220 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-MX220 development board enables code development of applications running on the PIC32MX220F032D microcontroller, manufactured by Microchip technology.
1.1 Features
PIC32MX220F032D 32 bit, 40 Mhz microcontroller 32KB Flash 8KB RAM
Ultra Low Power design
PINGUINO IDE ready
Li-Po battery connector for handheld applications
Arduino/Pinguino/Maple shield pinout on the top
UEXT connector which allows many extensions modules like RF, ZIGBEE, GSM, GPS to
be connected
Two LEDs
One USER BUTTON
RESET button
Mini USB connector is used which is common and used in most cell phones, so you do not
have to buy other cables
All PIC ports available on 0.1" connectors matching ARDUINO platform and second row with correct 0.1"step
ICSP signals provided on 0.1" step connector if you do not want to use Pinguino IDE and want to program this board with PIC-KIT3.
1.2 Similar boards
PIC32-PINGUINO-MX220 is ARDUINO-UNO like board with PIC32MX220F032D. Generally
Page 5 of 28
OLIMEX© 2012 PIC32-PINGUINO-MX220 User's Manual
this board outperform ARDUINO-UNO as hardware capabilities as you can see from the table below while being considerably cheaper:
PIC32-PINGUINO-MX220 ARDUINO-UNO
CPU
32bit 32bit
CLOCK
40MHz 20MHz
FLASH
32KB 32KB
RAM
8KB 1KB
USB
YES NO
LOW PWR
YES NO
GPIO MAX
40MHz 5MHz
ADC
1.1MSPS 15KSPS
DMA
YES 4 Channel NO
UEXT
YES NO
PIC32-PINGUINO-MX220 is a powerful considering its low price but yet a starter board for the PINGUINO family. If you are searching for powerful Pinguino board with a faster processor, more memory, more peripherals, wider range of options be sure to check the PIC32-PINGUINO-OTG:
http://olimex.com/dev/pic32-pinguino-otg.html
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
Page 6 of 28
OLIMEX© 2012 PIC32-PINGUINO-MX220 User's Manual
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 7 of 28
OLIMEX© 2012 PIC32-PINGUINO-MX220 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 8 of 28
OLIMEX© 2012 PIC32-PINGUINO-MX220 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-MX220 hold BUT and press RST after connected). Start the IDE from it's shortcut. From Preferences choose board (for PIC32-PINGUINO-MX220 that would be PIC32-Pinguino_220). 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. 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 9 of 28
Loading...
+ 20 hidden pages