dsPICDEM 2 User's Guide

dsPICDEM™ 2
Development Board
User’s Guide
© 2005 Microchip Technology Inc.
DS51558A
Note the following details of the code protection feature on Microchip devices:
•
Microchip products meet the specification contained in their particular Microchip Data Sheet.
•
Microchip believes that its family of products is one of the most secure families of its kind on the market today, when used in the
intended manner and under normal conditions.
•
There are dishonest and possibly illegal methods used to breach the code protection feature. All of these methods, to our
knowledge, require using the Microchip products in a manner outside the operating specifications contained in Microchip’s Data
Sheets. Most likely, the person doing so is engaged in theft of intellectual property.
•
Microchip is willing to work with the customer who is concerned about the integrity of their code.
•
Neither Microchip nor any other semiconductor manufacturer can guarantee the security of their code. Code protection does not
mean that we are guaranteeing the product as “unbreakable.”
Code protection is constantly evolving. We at Microchip are committed to continuously improving the code protection features of our
products. Attempts to break Microchip’s code protection feature may be a violation of the Digital Millennium Copyright Act. If such acts
allow unauthorized access to your software or other copyrighted work, you may have a right to sue for relief under that Act.
Information contained in this publication regarding device
applications and the like is provided only for your convenience
and may be superseded by updates. It is your responsibility to
ensure that your application meets with your specifications.
MICROCHIP MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND WHETHER EXPRESS OR IMPLIED,
WRITTEN OR ORAL, STATUTORY OR OTHERWISE,
RELATED TO THE INFORMATION, INCLUDING BUT NOT
LIMITED TO ITS CONDITION, QUALITY, PERFORMANCE,
MERCHANTABILITY OR FITNESS FOR PURPOSE.
Microchip disclaims all liability arising from this information and
its use. Use of Microchip’s products as critical components in
life support systems is not authorized except with express
written approval by Microchip. No licenses are conveyed,
implicitly or otherwise, under any Microchip intellectual property
rights.
Trademarks
The Microchip name and logo, the Microchip logo, Accuron,
dsPIC, KEELOQ, microID, MPLAB, PIC, PICmicro, PICSTART,
PRO MATE, PowerSmart, rfPIC, and SmartShunt are
registered trademarks of Microchip Technology Incorporated
in the U.S.A. and other countries.
AmpLab, FilterLab, Migratable Memory, MXDEV, MXLAB,
PICMASTER, SEEVAL, SmartSensor and The Embedded
Control Solutions Company are registered trademarks of
Microchip Technology Incorporated in the U.S.A.
Analog-for-the-Digital Age, Application Maestro, dsPICDEM,
dsPICDEM.net, dsPICworks, ECAN, ECONOMONITOR,
FanSense, FlexROM, fuzzyLAB, In-Circuit Serial
Programming, ICSP, ICEPIC, Linear Active Thermistor,
MPASM, MPLIB, MPLINK, MPSIM, PICkit, PICDEM,
PICDEM.net, PICLAB, PICtail, PowerCal, PowerInfo,
PowerMate, PowerTool, rfLAB, rfPICDEM, Select Mode,
Smart Serial, SmartTel, Total Endurance and WiperLock are
trademarks of Microchip Technology Incorporated in the
U.S.A. and other countries.
SQTP is a service mark of Microchip Technology Incorporated
in the U.S.A.
All other trademarks mentioned herein are property of their
respective companies.
© 2005, Microchip Technology Incorporated, Printed in the
U.S.A., All Rights Reserved.
Printed on recycled paper.
Microchip received ISO/TS-16949:2002 quality system certification for
its worldwide headquarters, design and wafer fabrication facilities in
Chandler and Tempe, Arizona and Mountain View, California in
October 2003. The Company’s quality system processes and
procedures are for its PICmicro® 8-bit MCUs, KEELOQ® code hopping
devices, Serial EEPROMs, microperipherals, nonvolatile memory and
analog products. In addition, Microchip’s quality system for the design
and manufacture of development systems is ISO 9001:2000 certified.
DS51558A-page ii
© 2005 Microchip Technology Inc.
dsPICDEM™ 2
DEVELOPMENT BOARD
USER’S GUIDE
Table of Contents
Preface ........................................................................................................................... 1
Chapter 1. Introduction
1.1 Introduction ..................................................................................................... 7
1.2 Highlights ........................................................................................................ 7
1.3 dsPICDEM™ 2 Development Board .............................................................. 7
1.4 dsPICDEM™ 2 Development Board Resources ............................................ 8
1.5 Sample Application Projects ......................................................................... 12
1.6 Host System Environment ............................................................................ 12
Chapter 2. Getting Started
2.1 Introduction ................................................................................................... 13
2.2 Highlights ...................................................................................................... 13
2.3 Getting Started ............................................................................................. 13
2.4 Out-of-the-Box Demo ................................................................................... 14
2.5 Device Programming Process ...................................................................... 17
2.6 In-Circuit Debugging Process ....................................................................... 19
2.7 Summary ...................................................................................................... 20
Chapter 3. Using the dsPIC30F2010
3.1 Introduction ................................................................................................... 21
3.2 Highlights ...................................................................................................... 21
3.3 Board Setup for the dsPIC30F2010 Sample Application ............................. 21
3.4 Device Programming .................................................................................... 23
3.5 Observing the Sample Application ............................................................... 24
3.6 In-Circuit Debugging ..................................................................................... 25
3.7 Summary ...................................................................................................... 26
Chapter 4. Using the dsPIC30F2011
4.1 Introduction ................................................................................................... 27
4.2 Highlights ...................................................................................................... 27
4.3 Board Setup for the dsPIC30F2011 Sample Application ............................. 27
4.4 Device Programming .................................................................................... 29
4.5 Observing the Sample Application ............................................................... 30
4.6 In-Circuit debugging ..................................................................................... 31
4.7 Summary ...................................................................................................... 32
Chapter 5. Using the dsPIC30F2012
5.1 Introduction ................................................................................................... 33
5.2 Highlights ...................................................................................................... 33
5.3 Board Setup for the dsPIC30F2012 Sample Application ............................. 33
5.4 Device Programming .................................................................................... 35
© 2005 Microchip Technology Inc.
DS51558A-page i
dsPICDEM 2 Development Board User’s Guide
5.5 Observing the Sample Application ............................................................... 36
5.6 In-Circuit Debugging ..................................................................................... 37
5.7 Summary ...................................................................................................... 38
Chapter 6. Using the dsPIC30F3010
6.1 Introduction ................................................................................................... 39
6.2 Highlights ...................................................................................................... 39
6.3 Board Setup for the dsPIC30F3010 Sample Application ............................. 39
6.4 Device Programming .................................................................................... 41
6.5 Observing the Sample Application ............................................................... 42
6.6 In-Circuit Debugging ..................................................................................... 43
6.7 Summary ...................................................................................................... 44
Chapter 7. Using the dsPIC30F3011
7.1 Introduction ................................................................................................... 45
7.2 Highlights ...................................................................................................... 45
7.3 Board Setup for the dsPIC30F3011 Sample Application ............................. 45
7.4 Device Programming .................................................................................... 47
7.5 Observing the Sample Application ............................................................... 48
7.6 In-Circuit Debugging ..................................................................................... 49
7.7 Summary ...................................................................................................... 50
Chapter 8. Using the dsPIC30F3012
8.1 Introduction ................................................................................................... 51
8.2 Highlights ...................................................................................................... 51
8.3 Board Setup for the dsPIC30F3012 Sample Application ............................. 51
8.4 Device Programming .................................................................................... 53
8.5 Observing the Sample Application ............................................................... 54
8.6 In-Circuit Debugging ..................................................................................... 55
8.7 Summary ...................................................................................................... 56
Chapter 9. Using the dsPIC30F3013
9.1 Introduction ................................................................................................... 57
9.2 Highlights ...................................................................................................... 57
9.3 Board Setup for the dsPIC30F3013 Sample Application ............................. 57
9.4 Device Programming .................................................................................... 59
9.5 Observing the Sample Application ............................................................... 60
9.6 In-Circuit Debugging ..................................................................................... 61
9.7 Summary ...................................................................................................... 62
Chapter 10. Using the dsPIC30F3014
10.1 Introduction ................................................................................................. 63
10.2 Highlights .................................................................................................... 63
10.3 Board Setup for the dsPIC30F3014 Sample Application ........................... 63
10.4 Device Programming .................................................................................. 65
10.5 Observing the Sample Application ............................................................. 66
10.6 In-Circuit Debugging ................................................................................... 67
10.7 Summary .................................................................................................... 68
DS51558A-page ii
© 2005 Microchip Technology Inc.
Chapter 11. Using the dsPIC30F4011
11.1 Introduction ................................................................................................. 69
11.2 Highlights .................................................................................................... 69
11.3 Board Setup for the dsPIC30F4011 Sample Application ........................... 69
11.4 Device Programming .................................................................................. 71
11.5 Observing the Sample Application ............................................................. 72
11.6 In-Circuit Debugging ................................................................................... 73
11.7 Summary .................................................................................................... 74
Chapter 12. Using the dsPIC30F4012
12.1 Introduction ................................................................................................. 75
12.2 Highlights .................................................................................................... 75
12.3 Board Setup for the dsPIC30F4012 Sample Application ........................... 75
12.4 Device Programming .................................................................................. 77
12.5 Observing the Sample Application ............................................................. 78
12.6 In-Circuit Debugging ................................................................................... 79
12.7 Summary .................................................................................................... 80
Chapter 13. Using the dsPIC30F4013
13.1 Introduction ................................................................................................. 81
13.2 Highlights .................................................................................................... 81
13.3 Board Setup for the dsPIC30F4013 Sample Application ........................... 81
13.4 Device Programming .................................................................................. 83
13.5 Observing the Sample Application ............................................................. 84
13.6 In-Circuit Debugging ................................................................................... 85
13.7 Summary .................................................................................................... 86
Chapter 14. Hardware
14.1 Hardware Overview .................................................................................... 87
Appendix A. Hardware Drawings and Schematics
A.1 Introduction .................................................................................................. 95
Appendix B. Writing to LCD
B.1 Overview .................................................................................................... 103
B.2 LCD Hardware Setup ................................................................................. 103
B.3 LCD Software Specification ....................................................................... 103
B.4 LCD Firmware Programming: .................................................................... 104
Appendix C. Board Errata
C.1 H7 and H6 Labelling Error ......................................................................... 105
Index ........................................................................................................................... 107
Worldwide Sales and Service .................................................................................. 114
© 2005 Microchip Technology Inc.
DS51558A-page iii
dsPICDEM 2 Development Board User’s Guide
DS51558A-page iv
© 2005 Microchip Technology Inc.
dsPICDEM™ 2
DEVELOPMENT BOARD
USER’S GUIDE
Preface
NOTICE TO CUSTOMERS
All documentation becomes dated, and this manual is no exception. Microchip tools and
documentation are constantly evolving to meet customer needs, so some actual dialogs
and/or tool descriptions may differ from those in this document. Please refer to our web site
(www.microchip.com) to obtain the latest documentation available, including errata
documents applicable to this product. Also, refer to the errata information in Appendix C.
Documents are identified with a “DS” number. This number is located on the bottom of each
page, in front of the page number. The numbering convention for the DS number is
“DSXXXXXA”, where “XXXXX” is the document number and “A” is the revision level of the
document.
For the most up-to-date information on development tools, see the MPLAB® IDE on-line help.
Select the Help menu, and then Topics to open a list of available on-line help files.
INTRODUCTION
This chapter contains general information that will be useful to know before using the
dsPICDEM 2 Development Board. Items discussed in this chapter include:
•
•
•
•
•
•
•
•
Document Layout
Conventions Used in this Guide
Warranty Registration
Recommended Reading
The Microchip Web Site
Development Systems Customer Change Notification Service
Customer Support
Document Revision History
DOCUMENT LAYOUT
This document describes how to use dsPICDEM 2 Development Board as a development tool to emulate and debug firmware on a target board. The manual layout is as
follows:
• Chapter 1. Introduction – This chapter introduces the dsPICDEM 2
Development Board, provides a brief description of the hardware components on
the board and introduces the demonstration software provided with each of the
supported dsPIC30F devices.
• Chapter 2. Getting Started – This chapter describes the out-of-the-box operation
of the dsPICDEM 2 Development Board. It also provides a detailed descripton of
how to perform programming and in-circuit debugging operations.
• Chapter 3. Using the dsPIC30F2010 – This chapter describes how to configure
the dsPICDEM 2 Development Board for use with the dsPIC30F2010 Digital
Signal Controller. It provides suggested procedures for device programming and
in-circuit debugging of the dsPIC30F2010 using the sample application.
© 2005 Microchip Technology Inc.
DS51558A-page 1
dsPICDEM 2 Development Board User’s Guide
• Chapter 4. Using the dsPIC30F2011 – This chapter describes how to configure
the dsPICDEM 2 Development Board for use with the dsPIC30F2011 Digital
Signal Controller. It provides suggested procedures for device programming and
in-circuit debugging of the dsPIC30F2011using the sample application.
• Chapter 5. Using the dsPIC30F2012 – This chapter describes how to configure
the dsPICDEM 2 Development Board for use with the dsPIC30F2012 Digital
Signal Controller. It provides suggested procedures for device programming and
in-circuit debugging of the dsPIC30F2012 using the sample application.
• Chapter 6. Using the dsPIC30F3010 – This chapter describes how to configure
the dsPICDEM 2 Development Board for use with the dsPIC30F3010 Digital
Signal Controller. It provides suggested procedures for device programming and
in-circuit debugging of the dsPIC30F3010 using the sample application.
• Chapter 7. Using the dsPIC30F3011 – This chapter describes how to configure
the dsPICDEM 2 Development Board for use with the dsPIC30F3011 Digital
Signal Controller. It provides suggested procedures for device programming and
in-circuit debugging of the dsPIC30F3011 using the sample application.
• Chapter 8. Using the dsPIC30F3012 – This chapter describes how to configure
the dsPICDEM 2 Development Board for use with the dsPIC30F3012 Digital
Signal Controller. It provides suggested procedures for device programming and
in-circuit debugging of the dsPIC30F3012 using the sample application.
• Chapter 9. Using the dsPIC30F3013 – This chapter describes how to configure
the dsPICDEM 2 Development Board for use with the dsPIC30F3013 Digital
Signal Controller. It provides suggested procedures for device programming and
in-circuit debugging of the dsPIC30F3013 using the sample application.
• Chapter 10. Using the dsPIC30F3014 – This chapter describes how to configure
the dsPICDEM 2 Development Board for use with the dsPIC30F3014 Digital
Signal Controller. It provides suggested procedures for device programming and
in-circuit debugging of the dsPIC30F3014 using the sample application.
• Chapter 11. Using the dsPIC30F4011 – This chapter describes how to configure
the dsPICDEM 2 Development Board for use with the dsPIC30F4011 Digital
Signal Controller. It provides suggested procedures for device programming and
in-circuit debugging of the dsPIC30F4011 using the sample application.
• Chapter 12. Using the dsPIC30F4012 – This chapter describes how to configure
the dsPICDEM 2 Development Board for use with the dsPIC30F4012 Digital
Signal Controller. It provides suggested procedures for device programming and
in-circuit debugging of the dsPIC30F4012 using the sample application.
• Chapter 13. Using the dsPIC30F4013 – This chapter describes how to configure
the dsPICDEM 2 Development Board for use with the dsPIC30F4013 Digital
Signal Controller. It provides suggested procedures for device programming and
in-circuit debugging of the dsPIC30F4013 using the sample application.
• Chapter 14. Hardware – This chapter provides detailed information related to the
hardware components used on the dsPICDEM 2 Development Board.
• Appendix A. Hardware Drawings and Schematics – This appendix illustrates
the dsPICDEM 2 Development Board layout and includes complete schematic
diagrams.
• Appendix B. Writing to LCD – This appendix provides detailed instructions for
writing to the 2 x 16 character LCD.
• Appendix C. Board Errata – This appendix describes errata associated with
certain revisions of the dsPICDEM 2 Development Board.
• Index – This section provides cross-reference listing of terms, features and
sections of this document.
• Worldwide Sales and Service – A listing of Microchip sales and service locations
and telephone numbers worldwide.
DS51558A-page 2
© 2005 Microchip Technology Inc.
Preface
CONVENTIONS USED IN THIS GUIDE
This manual uses the following documentation conventions:
DOCUMENTATION CONVENTIONS
Description
Arial font:
Italic characters
Initial caps
Quotes
Underlined, italic text with
right angle bracket
Bold characters
‘bnnnn
Text in angle brackets < >
Courier font:
Plain Courier
Italic Courier
0xnnnn
Square brackets [ ]
Curly brackets and pipe
character: { | }
Ellipses...
© 2005 Microchip Technology Inc.
Represents
Examples
Referenced books
Emphasized text
A window
A dialog
A menu selection
A field name in a window or
dialog
A menu path
MPLAB® IDE User’s Guide
...is the only compiler...
the Output window
the Settings dialog
select Enable Programmer
“Save project before build”
A dialog button
A tab
A binary number where n is a
digit
A key on the keyboard
Click OK
Click the Power tab
‘b00100, ‘b10
File>Save
Press <Enter>, <F1>
Sample source code
Filenames
File paths
Keywords
Command-line options
Bit values
A variable argument
#define START
autoexec.bat
c:\mcc18\h
_asm, _endasm, static
-Opa+, -Opa0, 1
file.o, where file can be
any valid filename
A hexadecimal number where 0xFFFF, 0x007A
n is a hexadecimal digit
Optional arguments
mcc18 [options] file
[options]
Choice of mutually exclusive errorlevel {0|1}
arguments; an OR selection
Replaces repeated text
var_name [,
var_name...]
Represents code supplied by void main (void)
user
{ ...
}
DS51558A-page 3
dsPICDEM 2 Development Board User’s Guide
WARRANTY REGISTRATION
Please complete the enclosed Warranty Registration Card and mail it promptly.
Sending in the Warranty Registration Card entitles users to receive new product
updates. Interim software releases are available at the Microchip web site.
RECOMMENDED READING
This user's guide describes how to use dsPICDEM 2 Development Board. Other useful
documents are listed below. The following Microchip documents are available and recommended as supplemental reference resources.
dsPIC30F Family Reference Manual (DS70046)
Consult this document for detailed information on the dsPIC30F device operation. The
manual explains the operation of the dsPIC30F MCU family architecture and peripheral
modules but does not cover the specifics of each device. Refer to the appropriate
device data sheet, mentioned below, for device-specific information.
dsPIC30F Data Sheet, Motor Control and Power Conversion Family (DS70082)
Consult this document for information regarding the dsPIC30F Motor Control and
Power Conversion devices. Reference information found in this data sheet includes:
•
•
•
•
Device memory map
Device pinout and packaging details
Device electrical specifications
List of peripherals included on the device
dsPIC30F Data Sheet, General Purpose and Sensor Families (DS70083)
Consult this document for information regarding the dsPIC30F General Purpose and
Sensor devices. Reference information found in this data sheet includes:
•
•
•
•
Device memory map
Device pinout and packaging details
Device electrical specifications
List of peripherals included on the device
dsPIC30F Programmer’s Reference Manual (DS70030)
This manual is a software developer’s reference for the dsPIC30F 16-bit MCU family
of devices. This manual describes the instruction set in detail and also provides general
information to assist the user in developing software for the dsPIC30F MCU family.
dsPIC30F Family Overview, dsPIC® High Performance
16-bit Digital Signal Controller (DS70043)
This document provides an overview of the features and functionality of the dsPIC DSC
product family. It helps determine how the dsPIC 16-bit Digital Signal Controller Family
fits a specific product application. For detailed information about any of the functionality,
refer to the dsPIC30F Family Reference Manual (DS70046).
MPLAB® ASM30, MPLAB LINK30 and Utilities User’s Guide (DS51317)
This document details Microchip Technology’s language tools for dsPIC DSC devices
based on GNU technology. The language tools discussed are:
•
•
•
•
DS51558A-page 4
MPLAB ASM30 Assembler
MPLAB LINK30 Linker
MPLAB LIB30 Archiver/Librarian
Other Utilities
© 2005 Microchip Technology Inc.
Preface
MPLAB® C30 C Compiler User’s Guide (DS51284)
The purpose of this document is to help you use Microchip’s MPLAB C30 C compiler
for dsPIC DSC devices to develop your application. MPLAB C30 is a GNU-based language tool, based on source code from the Free Software Foundation (FSF). For more
information about the FSF, see www.fsf.org.
Other GNU language tools available from Microchip are:
• MPLAB ASM30 Assembler
• MPLAB LINK30 Linker
• MPLAB LIB30 Librarian/Archiver
MPLAB® IDE Simulator, Editor User’s Guide (DS51025)
Consult this document for more information pertaining to the installation and features
of the MPLAB Integrated Development Environment (IDE) Software.
To obtain any of these documents, contact the nearest Microchip sales location
(see back page) or visit the Microchip web site at: www.microchip.com.
THE MICROCHIP WEB SITE
Microchip provides online support via our web site at www.microchip.com. This web
site is used as a means to make files and information easily available to customers.
Accessible by using your favorite Internet browser, the web site contains the following
information:
• Product Support – Data sheets and errata, application notes and sample
programs, design resources, user’s guides and hardware support documents,
latest software releases and archived software
• General Technical Support – Frequently Asked Questions (FAQs), technical
support requests, online discussion groups, Microchip consultant program
member listing
• Business of Microchip – Product selector and ordering guides, latest Microchip
press releases, listing of seminars and events, listings of Microchip sales offices,
distributors and factory representatives
DEVELOPMENT SYSTEMS CUSTOMER CHANGE NOTIFICATION SERVICE
Microchip’s customer notification service helps keep customers current on Microchip
products. Subscribers will receive e-mail notification whenever there are changes,
updates, revisions or errata related to a specified product family or development tool of
interest.
To register, access the Microchip web site at www.microchip.com, click on Customer
Change Notification and follow the registration instructions.
The Development Systems product group categories are:
• Compilers – The latest information on Microchip C compilers and other language
tools. These include the MPLAB C18 and MPLAB C30 C compilers; MPASM™
and MPLAB ASM30 assemblers; MPLINK™ and MPLAB LINK30 object linkers;
and MPLIB™ and MPLAB LIB30 object librarians.
• Emulators – The latest information on Microchip in-circuit emulators.This
includes the MPLAB ICE 2000 and MPLAB ICE 4000.
• In-Circuit Debuggers – The latest information on the Microchip in-circuit
debugger, MPLAB ICD 2.
© 2005 Microchip Technology Inc.
DS51558A-page 5
dsPICDEM 2 Development Board User’s Guide
• MPLAB® IDE – The latest information on Microchip MPLAB IDE, the Windows®
Integrated Development Environment for development systems tools. This list is
focused on the MPLAB IDE, MPLAB SIM simulator, MPLAB IDE Project Manager
and general editing and debugging features.
• Programmers – The latest information on Microchip programmers. These include
the MPLAB PM3 and PRO MATE® II device programmers and the PICSTART®
Plus and PICkit® 1 development programmers.
CUSTOMER SUPPORT
Users of Microchip products can receive assistance through several channels:
•
•
•
•
•
Distributor or Representative
Local Sales Office
Field Application Engineer (FAE)
Technical Support
Development Systems Information Line
Customers should contact their distributor, representative or field application engineer
(FAE) for support. Local sales offices are also available to help customers. A listing of
sales offices and locations is included in the back of this document.
Technical support is available through the web site at: http://support.microchip.com
In addition, there is a Development Systems Information Line which lists the latest
versions of Microchip's development systems software products. This line also
provides information on how customers can receive currently available upgrade kits.
The Development Systems Information Line numbers are:
1-800-755-2345 – United States and most of Canada
1-480-792-7302 – Other International Locations
Customers may also exchange ideas with each other and with Microchip personnel by
logging on to http:\\forum.microchip.com.
DOCUMENT REVISION HISTORY
Revision A (June 2005)
• Initial Release of this Document.
DS51558A-page 6
© 2005 Microchip Technology Inc.
dsPICDEM™ 2
DEVELOPMENT BOARD
USER’S GUIDE
Chapter 1. Introduction
1.1
INTRODUCTION
The dsPICDEM™ 2 Development Board is a development and evaluation tool that
helps you create embedded applications using dsPIC30F Digital Signal Controllers
(DSC) in 18-pin PDIP, 28-pin SPDIP and 40-pin PDIP packages. The dsPICDEM™ 2
Development Board provides both a hardware and software baseline capability to help
jump start your application.
Sockets are provided for 28 and 40-pin devices in the dsPIC30F Motor Control family
and 18, 28 and 40-pin devices in the dsPIC30F General Purpose and Sensor family.
For each device supported by the board, the product CD includes a sample application
program designed specifically for that device. Thus, regardless of the dsPIC30F device
you choose for your application, you also have sample code appropriate to that device.
1.2
HIGHLIGHTS
This chapter discusses:
•
•
•
•
1.3
dsPICDEM™ 2 Development Board
dsPICDEM™ 2 Development Board Resources
Sample Application Projects
Host System Environment
dsPICDEM™ 2 DEVELOPMENT BOARD
The dsPICDEM™ 2 Development Board (Figure 1-1) includes a dsPIC30F4011 Digital
Signal Processor in the 40-pin motor control socket, a power supply regulator, crystal
oscillators for each set of sockets, an ICD header for the MPLAB ICD 2 In-Circuit
Debugger and both UART and CAN ports for external communication. In addition, the
board is populated with prototyping hardware, including LED indicators, push-button
switches, a potentiometer, a temperature sensor and an LCD screen. All pins on all the
device sockets are accessible on prototyping areas. Also included is the dsPICDEM™
2 Development Kit CD, which contains software and this User’s Guide.
Key hardware features include:
• Multiple sockets for 18, 28 and 40-pin PDIP and SPDIP devices
• dsPIC30F4011 40-pin PDIP sample device installed on the board
• 5V regulator provides VDD and AVDD from a 9V DC power supply. An LED
indicates when the power is on.
• Connector for MPLAB® ICD 2 In-Circuit Debugger or MPLAB ICE 4000 In-Circuit
Emulator
• RS-232 interface
• Controller Area Network (CAN) interface
• Temperature sensor and analog potentiometer to simulate A/D inputs
• Pushbutton switches and LED indicators to simulate digital input and output
• 2x16 ASCII Character LCD with SPI™ interface
• 2x20 prototyping header area for user hardware expansion (header not provided)
© 2005 Microchip Technology Inc.
DS51558A-page 7
dsPICDEM 2 Development Board User’s Guide
FIGURE 1-1:
1.4
dsPICDEM™ 2 DEVELOPMENT BOARD
dsPICDEM™ 2 DEVELOPMENT BOARD RESOURCES
The dsPICDEM™ 2 Development Board accommodates the devices listed in
Table 1-1.
TABLE 1-1:
DEVICES SUPPORTED BY dsPICDEM™ 2
dsPIC30F Device
Pins
Socket
Resources
2010
28
U2B1
Six 10-bit A/D (500 ksps) channels,
UART, SPI, I2C™ and 20 I/O pins*
3010
28
U2B1
Six 10-bit A/D (500 ksps) channels,
UART, SPI, I2C and 20 I/O pins*
3011
40
U2A1
Nine 10-bit A/D (500 ksps) channels, two
UARTs, SPI, I2C and 30 I/O pins*
4011
40
U2A1
Nine 10-bit A/D (500 ksps) channels, two
UARTs, SPI, I2C, CAN and 30 I/O pins*
4012
28
U2B1
Six 10-bit A/D (500 ksps) channels,
UART, SPI, I2C, CAN and 20 I/O pins*
Motor Control Family
General Purpose and Sensor Family
2011
18
U1C1
Eight 12-bit A/D (100 ksps) channels,
UART, SPI, I2C and 12 I/O pins*
3012
18
U1C1
Eight 12-bit A/D (100 ksps) channels,
UART, SPI, I2C and 12 I/O pins*
2012
28
U1B1
Ten 12-bit A/D (100 ksps) channels,
UART, SPI, I2C and 20 I/O pins*
3013
28
U1B1
Ten 12-bit A/D (100 ksps) channels, two
UARTs, SPI, I2C and 20 I/O pins*
3014
40
U1A1
13 12-bit A/D (100 ksps) channels, two
UARTs, SPI, I2C and 30 I/O pins*
4013
40
U1A1
13 12-bit A/D (100 ksps) channels, two
UARTs, SPI, I2C, CAN and 30 I/O pins*
*
DS51558A-page 8
Includes pins shared by the peripheral functions
© 2005 Microchip Technology Inc.
Introduction
The dsPICDEM™ 2 must be configured for the device you have chosen for your application. Switches and headers are provided to connect hardware components on the
board with corresponding pins on the dsPIC30F device. Figure 1-2 shows the location
of hardware components and configuration headers that need to be set up depending
on the dsPIC30F device.
FIGURE 1-2:
dsPICDEM™ 2 HARDWARE COMPONENTS
UART Connection (J2)
®
MPLAB Programmer
/Debugger Connection (J1)
CAN Connection (J3)
CAN Header (H2)
Power Supply
Selector S2 (for programming
and debugging)
Power Supply jumpers
(JP1 and JP2)
UART1 Header (H3)
Selector S3 (for debugging
motor control devices)
Selector (S4) for debugging
general purpose devices
Oscillator for motor control
device (Y2)
Alternate UART1 Header (H4)
Concentric sockets for
General Purpose devices
(U1A1, U1B1, U1C1)
Reset switch (S1)
Oscillator for General
Purpose device (Y5)
Concentric sockets for
motor control devices
(U2A1 & U2B1 under
dsPIC30F4011)
External connection prototyping
headers (H8 and H9)
Temperature Header (H10)
Temperature Sensor (U5)
LCD SPI Header (H1)
LCD Controller Programming
Header (H11)
UART2 Header (H5)
Output LEDs (D3 and D4)
LED Header (H12)
Switches (S5 and S6)
Switches Header (H6 and H7)
Analog Pot (R15)
Pot Header (H13)
SPI™ controller for LCD
LCD (LCD1)
1.4.1
dsPIC30F Device Sockets
For convenience, the board provides separate sockets for Motor Control family devices
and general purpose/sensor family devices. As shown in Figure 1-3, the left side of the
board includes concentric sockets (U2B1 and U2A1) for 28 and 40-pin devices, respectively, in the Motor Control family. The right side includes concentric sockets (U1C1,
U1B1 and U1A1) for 18, 28 and 40-pin devices, respectively, in the General Purpose
and Sensor family.
© 2005 Microchip Technology Inc.
DS51558A-page 9
dsPICDEM 2 Development Board User’s Guide
FIGURE 1-3:
dsPICDEM™ 2 DEVELOPMENT BOARD LAYOUT
Sockets for Motor
Control Family
Devices:
U2A1
U2B1
dsPIC30F2010
dsPIC30F3010
dsPIC30F3011
dsPIC30F4011
dsPIC30F4012
1.4.2
U1A1
U1B1
U1C1
Sockets for General
Purpose and Sensor
Family Devices:
dsPIC30F2011
dsPIC30F3012
dsPIC30F2012
dsPIC30F3013
dsPIC30F3014
dsPIC30F4013
MPLAB ICD 2 Header
An RJ11 connector (J1) allows the MPLAB ICD 2 Debugger/Programmer to be used
with the dsPIC30F device you have plugged into the board. Switches S2, S3 and S4
physically connect this interface to the device sockets. Switch S2 connects the MPLAB
ICD 2 interface to the default programming and debugging pins on the dsPIC30F
devices (PGC/EMUC and PGD/EMUD). This switch should be turned on during
programming.
Switches S3 and S4 connect the MPLAB ICD 2 interface to alternative debugging pins
on the dsPIC30F devices (EMUC1/EMUD1 and EMUC2/EMUD2). These switches
should be turned off during device programming and turned on during debugging, if
needed.
1.4.3
UART Connection
A DB9 connector (J2) facilitates external RS-232RS-232 communication. Headers H3,
H4 and H5 connect this interface to the UART peripheral in the dsPIC DSC device.
Header H3 selects UART1. Header H4 selects alternate pins for UART1 in all
dsPIC30F devices supported by this board. Header H5 selects UART2 in dsPIC30F
devices that provide two UARTs (dsPIC30F3011, 3013, 3014, 4011 and 4013).
1.4.4
CAN Connection
A second DB9 connector (J3) is used for CAN communication. Header H2 selects the
dsPIC DSC device for the CAN interface. The CAN interface is supported by
dsPIC30F4011, 4012 and 4013 devices.
1.4.5
Power Supply
The dsPICDEM™ 2 power supply IS powered from an AC/DC wall adapter that
furnishes 9 VDC to the PWR jack (J4). The power supply is split at the regulator to
provide a separate, de-coupled analog supply voltage useful in designs taking
advantage of the dsPIC30F A/D converters. The power supply includes an on-board
+5V regulator for supplying VDD and AVDD. An LED indicates when the power is on.
Jumpers (JP1 and JP2) let you disconnect the power supply from the board if you want
to supply external DC power via terminals TP1 and TP2.
DS51558A-page 10
© 2005 Microchip Technology Inc.
Introduction
1.4.6
Reset Switch
This pushbutton switch (S1) is tied to the MCLR pin on the dsPIC30F device. It is used
to reset the device regardless of the socket used.
1.4.7
Device Clocking
Device clocking can be provided by on-chip RC oscillators, on-board crystal oscillators
or external sources. Crystal (Y1) provides a 7.3728 MHz oscillator for the motor control
device. Crystal (Y2) provides a 7.3728 MHz oscillator for the general purpose and
sensor devices.
1.4.8
Analog and Digital Inputs
The dsPICDEM™ 2 provides the following sensors that can be used to provide input
signals to your application program:
• Temperature sensor (U5)
• Potentiometer (R15)
• Pushbutton switches (S5 and S6)
1.4.8.1
TEMPERATURE SENSOR
The temperature sensor is a TC1047A that provides an analog signal to analog
channel AN3 in either the general purpose or motor control device via header H10.
1.4.8.2
ANALOG POTENTIOMETER
A 5-kOhm potentiometer provides an analog signal to analog channel AN2 in either the
general purpose or motor control device via header H13. The voltage source to the
potentiometer is provided by VR1, through a low-pass filter. VR1 is the main voltage
regulator for all components on the development board.
1.4.8.3
PUSHBUTTON SWITCHES
Two pushbutton switches, S5 and S6, are connected to external interrupt pins INT0 and
INT1, respectively, on the dsPIC30F device via headers H6 and H7, respectively.
1.4.9
Digital Outputs
The dsPICDEM™ 2 provides the following output devices that can be used to display
output information from your application program:
• LED Indicators (D3 and D4)
• LCD Display (LCD1/LCD2)
1.4.9.1
LED INDICATORS
LEDs D3 and D4 are connected to port pins RB0 and RB1, respectively on the installed
dsPIC DSC device via header H12. The LED anodes are tied to VDD through a 1.2K
resistor.
1.4.9.2
LCD DISPLAY
A 2 x 16 character dot matrix LCD display is provided on the development board. The
installed dsPIC30F device writes characters to the LCD via the clock (SCK1) and data
(SDO1) pins on the device’s SPI1 module.
1.4.10
External Connections
Prototyping areas H8 and H9 provide external connections from the motor control and
general purpose devices, respectively. These connections allow you to use hardware
and test equipment not provided on the dsPICDEM™ 2 board.
© 2005 Microchip Technology Inc.
DS51558A-page 11
dsPICDEM 2 Development Board User’s Guide
1.5
SAMPLE APPLICATION PROJECTS
The dsPICDEM™ 2 Development Kit CD contains sample projects for each of the
dsPIC DSC devices supported by the dsPICDEM™ 2 Development Board. These sample programs are intended to jump start your application development by showing you
how to implement and configure dsPIC30F peripherals such as A/D converters, external interrupts, timers, SPI, and UART interfaces and I/O ports. Complete C source code
is provided that shows how to how to write interrupt service routines and how to use
device control register structures for configuring peripherals and I/O ports. These sample C files are bundled into MPLAB IDE projects that let you begin work out of the box.
The sample application projects and source code were created with:
• MPLAB IDE v7.11
• MPLAB C30 v1.32
The sample application projects for each dsPIC30F device are located in the folder:
path/dsPICDEM 2 Development Kit/Example Software/
1.6
HOST SYSTEM ENVIRONMENT
A host system is used to support the MPLAB IDE and ICD 2 development tools (as well
as HyperTerminal® communication). Minimum requirements are:
• PC-compatible system with an Intel Pentium class or higher processor, or
equivalent
• A minimum of 16 MB RAM
• A minimum of 40 MB available hard drive space
• CD ROM drive
• Microsoft Windows® 98, Windows NT®4.0, Windows 2000 or Windows XP
DS51558A-page 12
© 2005 Microchip Technology Inc.
dsPICDEM™ 2
DEVELOPMENT BOARD
USER’S GUIDE
Chapter 2. Getting Started
2.1
INTRODUCTION
The dsPICDEM™ 2 Development Board provides both a hardware and software baseline capability to help jump start your application. The board is pre-configured for and
populated with a dsPIC30F4011 Digital Signal Controller (DSC). The dsPIC30F4011 is
preprogrammed with a sample application program ready to run out of the box.
This chapter describes how to run the application and evaluate the program to take
advantage of the sample software.
2.2
HIGHLIGHTS
Items discussed in this chapter include:
•
•
•
•
•
2.3
Getting Started
Out-of-the-Box Demo
Device Programming Process
In-Circuit Debugging Process
Summary
GETTING STARTED
The dsPICDEM 2 sample application program demonstrates key functionality of the
dsPIC30F devices. This sample application program processes analog data from a
temperature sensor and potentiometer provided on the board. It also processes
interrupts generated from pushbutton switches on the board. Based on the input data,
the program creates output in the form of LED indicators, which blink in response to the
pushbutton switches, and an LCD screen, which displays the temperature and
potentiometer values. The program also uses the dsPIC30F’s UART module to mirror
LCD information (via RS-232 connection) to a remote terminal.
The sample application is written in C language and tailored specifically for each
dsPIC30F device supported by the dsPICDEM™ 2 Development Board. Figure 2-1
outlines helpful processes to get you started using the dsPICDEM 2 board.
FIGURE 2-1:
GETTING STARTED PROCESSES
Out-of-the-Box Demo
Device Programming
®
In-Circuit Debugging
Connect your PC to the
dsPICDEM™ 2 board
(see Figure 2-2)
Open the MPLAB IDE
workspace for selected
dsPIC30F device (see
Setting up MPLAB IDE)
Select MPLAB ICD 2 as
Debugger, build project and
program device
Launch HyperTerminal®
(see Connect PC and Start
HyperTerminal Session)
Build project and program
the dsPIC30F device
(see Build the Project)
Set breakpoint and
examine application
program code
Apply power to board and
run application
(see Observe Sample
Application)
Release device from reset
& observe application (see
Run the Application)
Evaluate program for
applicability to your need
© 2005 Microchip Technology Inc.
DS51558A-page 13
dsPICDEM 2 Development Board User’s Guide
Out-of-the-box, you can power up the dsPICDEM™ 2 Development Board and run the
sample application on the dsPIC30F4011 device. The objective of this process is to
acquaint you with the board and demonstrate how the dsPIC30F device interacts with
the hardware components used for the demo (see Section 2.4 “Out-of-the-Box
Demo”).
Eventually, as you develop your own application, you will need to program and debug
the dsPIC30F device. The second phase of the getting-started process is programming
the device for stand-alone operation. For this process, you attach the MPLAB ICD 2
In-Circuit Debugger to the dsPICDEM 2 board, designate it as a programmer in MPLAB
IDE, build your program in MPLAB IDE and then program the device with MPLAB ICD
2. The procedures for this process are outline in Section 2.5 “Device Programming
Process”, using the dsPIC30F4011 device as an example.
To examine program operation on a step-by-step basis, you need to set up MPLAB ICD
2 as a debugger. For this process you attach the MPLAB ICD 2 In-Circuit Debugger to
the dsPICDEM 2 board, designate it as a debugger in MPLAB IDE, build your program
in MPLAB IDE and then program the device for debug mode with MPLAB ICD 2. The
procedures for this process are outline in Section 2.6 “In-Circuit Debugging
Process”, using the dsPIC30F4011 device as an example.
2.4
OUT-OF-THE-BOX DEMO
As the first phase of your getting-started process, you only need to connect your PC to
the dsPICDEM™ 2 Development Board, apply power to the board and observe the
sample application on the board and on HyperTerminal®.
2.4.1
dsPICDEM 2 Configuration
Out-of-the-box, the dsPICDEM™ 2 Development Board is configured to operate with
the dsPIC304011 device. When you use a different type of supported device you need
to reconfigure the board for that device. In general, you follow this process to reconfigure the dsPICDEM™ 2 Development Board. For the out-of-the-box configuration, you
simply can verify these settings:
1. Select a supported dsPIC30F device and plug it into the appropriate socket (not
necessary out of the box).
2. Note the hardware configuration for the dsPIC30F4011device:
This functionality:
Is set up by this hardware component:
Program/Debug device
Switch S2 switched OFF
Alternate Debugging
Switch S3 or S4 – all switches OFF
Temperature (A/D)
H10 set to M ALL
Potentiometer (A/D)
H13 set to M ALL
CAN
H2 open
UART1
H3 open
Alternate UART1
H4 set to M ALL
UART2
H5 open
LCD (SPI)
H1 set to M 40
SPI™ Controller ProgrammingH11 open
Switch S5 (INT0)
H6 set to M ALL
Switch S6 (INT1)
H7 set to M ALL
External connections
H8 or H9 open
LEDs D3 and D4 (I/O)
H12 set to M
Power Supply
Jumpers JP1 and JP2
Note:
DS51558A-page 14
Chapters 3-13 provide specific set-up instructions for each type of
dsPIC30F device supported by the dsPICDEM™ 2 Development Board.
© 2005 Microchip Technology Inc.
Getting Started
2.4.2
Connect PC and Start HyperTerminal Session
Follow the information in Figure 2-2 to set up your PC to operate with the dsPICDEM™
2 Development Board.
1. Use an RS-232 cable to connect the serial port on your PC to the UART connector (J2) on the board.
2. On your PC, start a HyperTerminal session and set it up with these port settings:
9600 baud
8 data bits
No parity
1 stop bit
No flow control
Note:
For convenience, each of the sample program folders contains a utility that
automatically launches HyperTerminal set up to run with the demo program. Double clicking the file (Hyperterminal_RS232_dsPICDEM2.ht)
starts the session.
FIGURE 2-2:
SETUP DIAGRAM
PC running HyperTerminal®
J2
CAN
J4
UART
J1
J2
J3
GP 28
GP 18
M ALL
GP 40
1 2 3 4
U2A1
1 2
U1A1
1 2 3 4
U1B1
U2B1
Motor
Control
dsPICDEM™ 2 Development Board
running sample application
Connect RS-232 cable to
PC
General
Purpose
9 VDC Power Cable
U1C1
H8
H9
115 VAC
Apply power to the board
© 2005 Microchip Technology Inc.
DS51558A-page 15
dsPICDEM 2 Development Board User’s Guide
2.4.3
Observe Sample Application
To run and observe the sample application follow these steps:
1. Plug the 9 VDC cable into the DC IN connector (J4). The PWR ON indicator
should illuminate.
2. Press the RESET ALL pushbutton (S1). The LCD displays the current temperature and voltage values, which represent the A/D conversions from the temperature sensor and potentiometer, respectively.
dsPICDEM™ 2 Board
T=+18C Pot=3.42v
The LED indicators (D3 and D4) should initially be off and then start to blink.
3. Touch the temperature sensor for a moment and observe the temperature reading. It should increase as your finger warms the sensor.
4. Adjust the potentiometer clockwise and observe the voltage reading increase.
Then readjust it counterclockwise and observe the voltage reading decrease.
5. Observe the HyperTerminal screen and note that the information is updated to
match the LCD (see Figure 2-3).
FIGURE 2-3:
TYPICAL HyperTerminal® SESSION
6. Press pushbutton S5 (INT0) once and note that the rate at which D3 and D4 blink
changes. As you press S5 again, observe that the blink rate cycles from
extremely fast (both LEDs appear to be on) to fast (blinking rapidly) to moderate
(blinking slowly) to slow (appear to be switching on and off).
7. Press pushbutton S6 (INT1) once and note that D3 and D4 blink alternately. As
you press S6 again, note the LEDs cycle between blinking together and blinking
alternately.
DS51558A-page 16
© 2005 Microchip Technology Inc.
Getting Started
2.5
DEVICE PROGRAMMING PROCESS
The second phase of the getting-started process introduces the MPLAB Integrated
Development Environment (IDE) and MPLAB ICD 2 In-Circuit Debugger. The
emphasis in this phase is to program the sample application into a dsPIC30F4011
device. After observing the demonstration, this process gets you ready to examine
what you observed.
2.5.1
Connect MPLAB ICD 2
Follow the information in Figure 2-2 to set up the MPLAB ICD 2 for use as a
programmer.
1. With an RJ11 cable, connect the MPLAB ICD 2 to the ICD header (J1) on the
board.
2. Use a USB cable to connect the MPLAB ICD 2 to your PC.
Note:
Make sure that the USB driver for the MPLAB ICD 2 has been installed on
your PC (see the MPLAB® ICD 2 User’s Guide, DS51331, for more details
regarding the installation of MPLAB ICD 2).
FIGURE 2-4:
MPLAB® ICD 2 CONNECTION DIAGRAM
PC running MPLAB® IDE
MPLAB ICD 2
Connect USB cable to PC
Connect RJ-11 cable to ICD
J2
CAN
J4
UART
J1
J2
J3
Connect RS-232 cable to
PC
GP 28
GP 18
M ALL
GP 40
1 2 3 4
U2A1
1 2
U1A1
dsPICDEM™ 2 Development Board
running dsPIC30F4011 sample
application
1 2 3 4
U1B1
U2B1
Motor
Control
General
Purpose
9 VDC Power Cable
U1C1
H8
115 VAC
H9
Apply power to the board
2.5.2
Setting up MPLAB IDE
The sample application program files on the dsPICDEM 2 CD contain a workspace and
project information needed by MPLAB IDE, MPLAB ICD 2 and MPLAB C30.
The first step is to open the sample application project in MPLAB IDE.
Note:
These instructions presume the use of MPLAB IDE version 7.11 or newer
and MPLAB C30 version 1.32 or newer.
A project contains the files needed to build an application (source code, linker script
files, etc.) along with their associations to various build tools and build options. A workspace contains information on the selected device, debug tool and/or programmer,
open windows and their location, and other MPLAB IDE configuration settings.
1. Start MPLAB IDE.
2. From the File menu select Open Workspace>[path], as shown in Figure 2-5,
where [path] is the location of the sample application files.
© 2005 Microchip Technology Inc.
DS51558A-page 17
dsPICDEM 2 Development Board User’s Guide
FIGURE 2-5:
OPEN WORKSPACE DIALOG
3. Select 30F4011/Demo.mcw. A project and workspace is created in MPLAB IDE.
As shown in Figure 2-6, Demo.mcw is the workspace file and Demo.mcp is the
project file.
FIGURE 2-6:
DS51558A-page 18
PROJECT WORKSPACE IN MPLAB® IDE
© 2005 Microchip Technology Inc.
Getting Started
2.5.3
1.
2.
3.
4.
Build the Project
Select Project>Build All.
Observe the progress of the build in the Output window.
When BUILD SUCCEEDED displays you are ready to program the device.
Program the dsPIC30F4011device (Programmer>Program)
2.5.4
Run the Application
1. From the Programmer menu, select Release from Reset to enable code
exectution.
2. On the board, turn off the M ALL switch in S2.
3. As the code begins executing, note that the operation is identical to what you
observed out-of-the-box (see Section 2.4.3 “Observe Sample Application”)
2.6
IN-CIRCUIT DEBUGGING PROCESS
MPLAB IDE lets you run, halt and step the program. It lets you set breakpoints to
examine the code at specific locations or on occurrence of specific events. It also lets
you examine the contents of the RAM and registers. The MPLAB ICD 2 allows you to
run the application on the dsPICDEM 2 while monitoring it in MPLAB IDE on your PC.
The examination process requires that three changes be made to the sample
application setup.
• The dsPIC30F4011 device must be reprogrammed to recognize the MPLAB ICD
2 as a debugger rather than as a programmer.
• MPLAB IDE must be reconfigured to specify the pins on the dsPIC30F device to
be used for debugging.
• The dsPICDEM 2 board must be physically reconfigured to ensure that it connects
the MPLAB ICD 2 debugger to the pins on the dsPIC30F device that were
specified in MPLAB IDE.
Note:
2.6.1
The primary programming and debugging functions (PGC/EMUC,
PGD/EMUD) on the dsPIC30F device are multiplexed with other peripheral
modules on the device used by the sample application. Thus it is necessary
to use an alternate pair of debugging pins (EMUC1/EMUD1,
EMUC2/EMUD2 or EMUC3/EMUD3) to examine the baseline code
provided in the sample application.
Select MPLAB ICD 2 as Debugger
To change MPLAB ICD 2 from a programmer to a debugger for a dsPIC30F4011
device:
1. From the Debugger menu, click Select Tool>MPLAB ICD 2 to designate the
MPLAB ICD 2 as the debug tool in MPLAB IDE.
2. From the Configure menu, select Configuration Bits... The Configuration Bits
window displays the current configuration settings for the device, as shown in
Figure 2-7.
3. Change the “Comm Channel Select” parameter to Use EMUC2 and EMUD2.
4. On the dsPICDEM 2 board, change the setting on switch S3 to turn on EMUC2
and EMUD2.
5. Program the dsPIC30F device (Debugger>Program menu).
6. On the dsPICDEM 2 board, turn off M ALL on switch S2.
7. Reset the program and run it. From the Debugger menu, select Reset>Processor
Reset. Then select Debugger>Run.
© 2005 Microchip Technology Inc.
DS51558A-page 19
dsPICDEM 2 Development Board User’s Guide
FIGURE 2-7:
2.6.2
CONFIGURATION BITS WINDOW
Debugging the Code
The MPLAB ICD 2 In-Circuit Debugger can be used to run, halt and step the code. A
breakpoint can be set to halt the program after the code has executed the instruction
at the breakpoint. The contents of the RAM and registers can be viewed whenever the
processor has been halted.
The MPLAB ICD 2 In-Circuit Debugger uses the following function keys to access the
main debugging functions:
<F5>
<F6>
<F7>
<F9>
Halt
Reset
Single Step
Run
In addition, there are more functions available by right clicking on a line of source code.
These functions include the ability to set simple and advanced breakpoints.
2.7
SUMMARY
This chapter has provided a suggested process for using the dsPICDEM™ 2
Development Board to jump start your own application. If you have reviewed this
process, you should be able to:
• Configure the dsPICDEM™ 2 Development Board for the dsPIC30F device you
select for your application.
• Set up MPLAB IDE to use the MPLAB ICD 2 In-Circuit Debugger.
• Locate the sample application for your dsPIC30F device.
• Program the chip with the MPLAB ICD 2.
• View the code execution in program memory and source code.
• Reset, Run, Halt and Single-Step the code.
DS51558A-page 20
© 2005 Microchip Technology Inc.
dsPICDEM™ 2
DEVELOPMENT BOARD
USER’S GUIDE
Chapter 3. Using the dsPIC30F2010
3.1
INTRODUCTION
This chapter assumes you have chosen the dsPIC30F2010 for your application. The
dsPICDEM 2 Development Board supports a dsPIC30F2010 device in a 28-pin SPDIP
package, as shown in Figure 3-1. This device provides six 10-bit A/D (500 ksps)
channels, a UART, an SPI module, an I2C™ module and 20 I/O pins. A sample
application program provides a software baseline for building your own embedded
solution.
U2B1
3.2
28-PIN SPDIP dsPIC30F2010
MCLR
EMUD3/AN0/VREF+/CN2/RB0
EMUC3/AN1/VREF-/CN3/RB1
AN2/SS1/CN4/RB2
AN3/INDX/CN5/RB3
AN4/QEA/IC7/CN6/RB4
AN5/QEB/IC8/CN7/RB5
VSS
OSC1/CLKI
OSC2/CLKO/RC15
EMUD1/SOSCI/T2CK/U1ATX/CN1//RC13
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
VDD
EMUD2/OC2/IC2/INT2/RD1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
dsPIC30F2010
FIGURE 3-1:
28
27
26
25
24
23
22
21
20
19
18
17
16
15
AVDD
AVSS
PWM1L/RE0
PWM1H/RE1
PWM2L/RE2
PWM2H/RE3
PWM3L/RE4
PWM3H/RE5
VDD
VSS
PGC/EMUC/U1RX/SDI1/SDA/RF2
PGD/EMUD/U1TX/SDO1/SCL/RF3
FLTA/INT0/SCK1/OCFA/RE8
EMUC2/OC1/IC1/INT1/RD0
HIGHLIGHTS
This chapter discusses:
•
•
•
•
•
3.3
Board Setup for the dsPIC30F2010 Sample Application
Device Programming
Observing the Sample Application
In-Circuit Debugging
Summary
BOARD SETUP FOR THE dsPIC30F2010 SAMPLE APPLICATION
The dsPICDEM 2 Development Board supports dsPIC30F devices that have multiple
peripheral devices multiplexed on some pins. Therefore, the jumper set up of various
headers depends on which of the dsPIC30F peripherals are used by the application.
This section demonstrates how the board is set up for the dsPIC30F2010 device to
support the dsPIC30F2010 example software in the dsPICDEM 2 Development Kit CD.
Follow these steps to configure the hardware on the dsPICDEM 2 Development Board
for the sample application.
1. Disconnect the power source.
2. Remove any dsPIC30Fxxxx device currently plugged into the dsPICDEM 2
Development Board.
© 2005 Microchip Technology Inc.
DS51558A-page 21
dsPICDEM 2 Development Board User’s Guide
3. Plug the dsPIC30F2010 into socket U2B1.
4. Configure the hardware components as shown in Table 3-1.
TABLE 3-1:
dsPIC30F2010 CONFIGURATION SETTINGS
Header
Component
No.
Socket U2B1
Jumper
Setting
Pin
Device Functions (see Figure 3-1)
Jumper JP1
JP1
Jumper
—
5 VDC jumper installed
Jumper JP2
JP2
Jumper
—
5 VDC jumper installed
Selector Switch
S2
Selector Switch
S3
M ALL ON 17,18 PGC and PGD
OFF
—
Not used in this configuration
Not used in this configuration
Selector Switch
S4
OFF
—
PGM U3
H11
Open
—
—
CAN Tx
H2
Open
—
—
CAN Rx
H2
Open
—
—
UART1 Tx*
H3
Open
—
—
UART1 Rx*
H3
Open
—
—
Alternate UART1 Tx* H4
M ALL
11
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
Alternate UART1 Rx* H4
M ALL
12
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
UART2 Tx*
H5
Open
—
—
UART2 Rx*
H5
Open
—
—
Temperature Sensor H10
M ALL
5
AN3/INDX/CN5/RB3
Potentiometer
M ALL
4
AN2/SS1/CN4/RB2
H13
Switch S5
H6
M ALL
16
FLTA/INT0/SCK1/OCFA/RE8
Switch S6
H7
M ALL
15
EMUC2/OC1/IC1/INT1/RD0
LED D3
H12
M D3
2
EMUD3/AN0/VREF+/CN2/RB0
H12
M D4
3
EMUC3/AN1/VREF-/CN3/RB1
H1
M28
16
FLTA/INT0/SCK1/OCFA/RE8
H1
M28
17
PGD/EMUD/U1TX/SDO1/SCL/RF3
LED D4
LCD - SPI™ Clock
LCD - SPI Data*
*
*
On this device, multiplexing of various peripherals on the pins does not allow the
simultaneous use of:
– Switch S5 and LCD
– Primary UART1 pins and LCD.
Since only one DB-9 connector is provided for RS-232 communication, you can
select either UART1 (primary or alternate pins) or UART2, but not both.
5. Connect the RS-232 cable from the PC to the UART connector (J2).
6. Reapply power to the DC IN connector (J4). The PWR ON LED should illuminate.
7. Load the sample application program for the dsPIC30F2010 (see
Section 3.4 “Device Programming”).
DS51558A-page 22
© 2005 Microchip Technology Inc.
Using the dsPIC30F2010
3.4
DEVICE PROGRAMMING
Load the sample application program for the dsPIC30F2010 using this process:
1. Plug the RJ11cable from the MPLAB ICD 2 into the ICD header (J1). Make sure
the USB cable from the MPLAB ICD 2 is connected to your PC.
2. Start MPLAB IDE.
3. Open the dsPIC30F2010 sample project (File>Open Workspace) from
path/dsPICDEM 2 Development Kit/Example Software/30F2010/Demo.mcw.
Note:
For detailed information and procedures on using the MPLAB IDE and ICD
2 refer to Chapter 2 “Getting Started”.
4. Build the sample project in MPLAB IDE (Project>Build All).
5. On the dsPICDEM™ 2 board set all positions on switches S3 and S4 to OFF.
Then set switch S2 to M ALL. The MPLAB ICD 2 is now connected to the PGC
and PGD pins on the dsPIC30F2010.
6. Download the sample application (Programmer>Program). The Output window
(Figure 3-2) displays the status as the download occurs and indicates when the
programming has succeeded.
FIGURE 3-2:
PROGRAMMING THE dsPIC30F2010 DEVICE
7. Disconnect the MPLAB ICD 2 cable from the ICD header. The program is now
ready to run (see Section 3.5 “Observing the Sample Application”).
© 2005 Microchip Technology Inc.
DS51558A-page 23
dsPICDEM 2 Development Board User’s Guide
3.5
OBSERVING THE SAMPLE APPLICATION
1. Press RESET ALL. The program begins to run.
2. Set up a HyperTerminal session on the PC to run with these parameters:
Port Setting
Value
Bits per second
9600
Data bits
8
Parity
None
Stop bits
1
Flow control
None
As a shortcut, you can launch the Hyperterminal_RS232_dsPICDEM2.ht
file in the dsPICDEM 2 Development Kit/Example Software/30F2010
folder.
3. See information on LCD. Note that the HyperTerminal displays the same
information.
4. Adjust temperature and note LCD and HyperTerminal readings.
5. Adjust potentiometer and note LCD and HyperTerminal readings.
6. Observe the rate at which LEDs D3 and D4 blink.
7. Press S6 (INT1) and note the affect on D3 and D4.
DS51558A-page 24
© 2005 Microchip Technology Inc.
Using the dsPIC30F2010
3.6
IN-CIRCUIT DEBUGGING
The sample application program is intended to illustrate how the processor and
peripheral modules handle the functionality provided on the dsPICDEM 2 Development
Board. The MPLAB ICD 2 In-Circuit Debugger was used to program the sample
application into the dsPIC30F device. You can also use the MPLAB ICD 2 In-Circuit
Debugger to examine this baseline code to determine specific applicability to your
application.
The examination process requires that three changes be made to the sample
application setup.
• The dsPIC30F2010 device must be reprogrammed to recognize the MPLAB ICD
2 as a debugger rather than as a programmer.
• MPLAB IDE must be reconfigured to specify the pins on the dsPIC30F2010
device to be used for debugging.
• The dsPICDEM 2 board must be physically reconfigured to ensure that it connects
the MPLAB ICD 2 debugger to the pins on the dsPIC30F2010 device that were
specified in MPLAB IDE.
The primary programming and debugging functions (PGC/EMUC, PGD/EMUD) on the
dsPIC30F device are multiplexed with other peripheral modules on the device used by
the sample application. Thus it is necessary to use an alternate pair of debugging pins
(EMUC1/EMUD1, EMUC2/EMUD2 or EMUC3/EMUD3) to examine the baseline code
provided in the sample application.
3.6.1
Setting Up MPLAB ICD 2 for Debugging
To change MPLAB ICD 2 from a programmer to a debugger:
1. From the Debugger menu, click Select Tool>MPLAB ICD 2 to designate the
MPLAB ICD 2 as the debug tool in MPLAB IDE.
2. From the Configure menu, select Configuration Bits... The Configuration Bits
window displays the current configuration settings for the device, as shown in
Figure 3-3.
3. Change the “Comm Channel Select” parameter to Use EMUC2 and EMUD2.
4. On the dsPICDEM 2 board, change the setting on switch S3 to turn on EMUC2
and EMUD2.
5. Remove any jumpers on headers H6 and H7.
6. Reprogram the dsPIC30F device (Debugger>Program menu).
7. On the dsPICDEM 2 board, turn off M ALL on switch S2.
8. Reset the program and run it. From the Debugger menu, select Reset>Processor
Reset. Then select Debugger>Run.
© 2005 Microchip Technology Inc.
DS51558A-page 25
dsPICDEM 2 Development Board User’s Guide
FIGURE 3-3:
3.6.2
CONFIGURATION BITS WINDOW
Examining the Code
After the application has been reprogrammed to use the MPLAB ICD 2 as a debugger,
you can use MPLAB IDE to run, halt and step the program. You can set breakpoints to
halt the program and examine the actual code at any point. You can also examine the
contents of the RAM and registers whenever the processor is halted.
Refer to Section 2.3 “Getting Started” for an overview of the sample application.
Flowcharts illustrate each of these processes:
•
•
•
•
Startup and initialization
Main loop processing
A/D conversion processing
External interrupt processing
The dsPICDEM 2 Development Kit/Example Software/30F2010 folder
contains fully annotated code files that you can examine, compare and copy.
3.7
SUMMARY
This chapter has provided specific instructions for using the dsPICDEM 2 Development
Board with a dsPIC30F2010 device. If you have reviewed this process, you should be
able to:
•
•
•
•
•
DS51558A-page 26
Configure the dsPICDEM 2 Development Board for the dsPIC30F2010 device.
Set up MPLAB IDE to use the MPLAB ICD 2 In-Circuit Debugger.
Locate the sample application for the dsPIC30F2010 device.
Program the chip with the MPLAB ICD 2.
Examine the sample application and identify applicable code for your embedded
solution.
© 2005 Microchip Technology Inc.
dsPICDEM™ 2
DEVELOPMENT BOARD
USER’S GUIDE
Chapter 4. Using the dsPIC30F2011
4.1
INTRODUCTION
This chapter assumes you have chosen the dsPIC30F2011 for your application. The
dsPICDEM 2 Development Board supports a dsPIC30F2011 device in an 18-pin PDIP
package, as shown in Figure 4-1. This device provides eight 12-bit A/D (100 ksps)
channels, a UART, an SPI module, an I2C module and 12 I/O pins. A sample application program provides a software baseline for building your own embedded solution.
18-PIN PDIP dsPIC30F2011
MCLR
EMUD3\AN0/VREF+/CN2/RB0
EMUD3\AN1/VREF-/CN3/RB1
AN2/SS1/LVDIN/CN4/RB2
AN3/CN5/RB3
U1A1
OSC1/CLKI
OSC2/CLKO/RC15
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
4.2
1
2
3
4
5
6
7
8
9
dsPIC30F2011
FIGURE 4-1:
18
17
16
15
14
13
12
11
10
AVDD
AVSS
AN6/SCK1/INT0/OCFA/RB6
EMUD2/AN7/OC2/IC2/INT2/RB7
VDD
VSS
PGC/EMUC/AN5/U1RX/SDI1/SDA/CN7/RB5
PGD/EMUD/AN4/U1TX/SDO1/SCL/CN6/RB4
EMUC2/OC1/IC1/INT1/RD0
HIGHLIGHTS
This chapter discusses:
•
•
•
•
•
4.3
Board Setup for the dsPIC30F2011 Sample Application
Device Programming
Observing the Sample Application
In-Circuit debugging
Summary
BOARD SETUP FOR THE dsPIC30F2011 SAMPLE APPLICATION
The dsPICDEM 2 Development Board supports dsPIC30F devices that have multiple
peripheral devices multiplexed on some pins. Therefore, the jumper set up of various
headers depends on which of the dsPIC30F peripherals are used by the application.
This section demonstrates how the board is set up for the dsPIC30F2011 device to
support the dsPIC30F2011 example software in the dsPICDEM 2 Development Kit CD.
Follow these steps to configure the hardware on the dsPICDEM 2 Development Board
for the sample application.
1. Disconnect the power source.
2. Remove any dsPIC30Fxxxx device currently plugged into the dsPICDEM 2
Development Board.
3. Plug the dsPIC30F2011 into socket U1C1.
© 2005 Microchip Technology Inc.
DS51558A-page 27
dsPICDEM 2 Development Board User’s Guide
4. Configure the hardware components as shown in Table 4-1.
TABLE 4-1:
dsPIC30F2011 CONFIGURATION SETTINGS
Header
Component
No.
Socket U1A1
Jumper
Setting
Pin
Device Functions (see Figure 4-1)
Jumper JP1
JP1
Jumper
—
5 VDC jumper installed
Jumper JP2
JP2
Jumper
—
5 VDC jumper installed
Selector Switch
S2
Selector Switch
S3
OFF
—
Not used in this configuration
Selector Switch
S4
OFF
—
Not used in this configuration
PGM U3
H11
Open
—
No jumper connections
CAN Tx
H2
Open
—
—
CAN Rx
H2
Open
—
—
UART1 Tx*
H3
Open
—
—
UART1 Rx*
H3
Open
—
—
Alternate UART1 Tx * H4
GP ALL
8
EMUD1/SOSC1/T2CK/U1ATX/CN1/RC13
Alternate UART1 Rx * H4
GP 18 ON 11,12 PGC and PGD
GP ALL
9
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
UART2 Tx*
H5
Open
—
—
UART2 Rx*
H5
Open
—
—
Temperature Sensor H10
GP ALL
5
AN3/CN5/RB3
AN2/SS1/LVDIN/CN4/RB2
Potentiometer
H13
GP ALL
4
Switch S5
H6
Open
—
Switch S6
H7
GP 18
10
EMUC2/OC1/IC1/INT1/RD0
LED D3
H12
GP D3
2
AN0/VREF+/CN2/RB0
LED D4
H12
GP D4
3
AN1/VREF-/CN3/RB1
LCD - SPI™ Clock*
H1
GP 18
16
AN6/SCK1/INT0/OCFA/RB6
LCD - SPI Data*
H1
GP18
11
PGD/EMUD/AN4/U1TX/SDO1/SCL/CN6/RB4
*
—
On this device, multiplexing of various peripherals on the pins does not allow the
simultaneous use of:
– Switch S5 and LCD
– Primary UART1 pins and LCD.
Since only one DB-9 connector is provided for RS-232 communication, you can
select either UART1 (primary or alternate pins) or UART2, but not both.
5. Connect the RS-232 cable from the PC to the UART connector (J2).
6. Reapply power to the DC IN connector (J4). The PWR ON LED should illuminate.
7. Load the sample application program for the dsPIC30F2011 (see
Section 4.4 “Device Programming”).
DS51558A-page 28
© 2005 Microchip Technology Inc.
Using the dsPIC30F2011
4.4
DEVICE PROGRAMMING
Load the sample application program for the dsPIC30F2011 using this process:
1. Plug the RJ11 (telephone) cable from the MPLAB ICD 2 into the ICD header (J1).
Make sure the USB cable from the MPLAB ICD 2 is connected to your PC.
2. Start MPLAB IDE.
3. Open the dsPIC30F2011 sample project (File>Open Workspace) from
path/dsPICDEM 2 Development Kit/Example Software/30F2011/Demo.mcw.
Note:
For detailed information and procedures on using the MPLAB IDE and ICD
2, refer to Chapter 2 “Getting Started”.
4. Build the sample project in MPLAB IDE (Project>Build All).
5. On the dsPICDEM™ 2 board set all positions on switches S3 and S4 to off. Then
set switch S2 to GP 18. The MPLAB ICD 2 is now connected to the PGC and
PGD pins on the dsPIC30F2011.
6. Download the sample application (Programmer>Program). The Output window
(Figure 4-2) displays the status as the download occurs and indicates when the
programming has succeeded.
FIGURE 4-2:
PROGRAMMING THE dsPIC30F2011 DEVICE
7. Disconnect the MPLAB ICD 2 cable from the ICD header. The program is now
ready to run (see Section 4.5 “Observing the Sample Application”).
© 2005 Microchip Technology Inc.
DS51558A-page 29
dsPICDEM 2 Development Board User’s Guide
4.5
OBSERVING THE SAMPLE APPLICATION
1. Press RESET ALL. The program begins to run.
2. Set up a HyperTerminal session on the PC to run with these parameters:
Port Setting
Value
Bits per second
9600
Data bits
8
Parity
None
Stop bits
1
Flow control
None
As a shortcut, you can launch the Hyperterminal_RS232_dsPICDEM2.ht
file in the dsPICDEM 2 Development Kit/Example Software/30F2011
folder.
3. See information on LCD. Note that the HyperTerminal displays the same
information.
4. Adjust temperature and note LCD and HyperTerminal readings.
5. Adjust potentiometer and note LCD and HyperTerminal readings.
6. Observe the rate at which LEDs D3 and D4 blink.
7. Press S6 (INT1) and note the affect on D3 and D4.
DS51558A-page 30
© 2005 Microchip Technology Inc.
Using the dsPIC30F2011
4.6
IN-CIRCUIT DEBUGGING
The sample application program is intended to illustrate how the processor and I/O
modules handle the functionality provided on the dsPICDEM 2 Development Board.
The MPLAB ICD 2 In-Circuit Debugger was used to program the sample application
into the dsPIC30F device. You can also use the MPLAB ICD 2 In-Circuit Debugger to
examine this baseline code to determine specific applicability to your application.
The examination process requires that three changes be made to the sample application setup.
• The dsPIC30F2011 device must be reprogrammed to recognize the MPLAB ICD
2 as a debugger rather than as a programmer.
• MPLAB IDE must be reconfigured to specify the pins on the dsPIC30F2011
device to be used for debugging.
• The dsPICDEM 2 board must be physically reconfigured to ensure that it connects
the MPLAB ICD 2 debugger to the pins on the dsPIC30F2011 device that were
specified in MPLAB IDE.
The primary programming and debugging functions (PGC/EMUC, PGD/EMUD) on the
dsPIC30F device are multiplexed with other peripheral modules on the device used by
the sample application. Thus it is necessary to use an alternate pair of debugging pins
(EMUC1/EMUD1, EMUC2/EMUD2 or EMUC3/EMUD3) to examine the baseline code
provided in the sample application.
4.6.1
Setting Up MPLAB ICD 2 for Debugging
To change MPLAB ICD 2 from a programmer to a debugger:
1. From the Debugger menu, click Select Tool>MPLAB ICD 2 to designate the
MPLAB ICD 2 as the debug tool in MPLAB IDE.
2. From the Configure menu, select Configuration Bits... The Configuration Bits
window displays the current configuration settings for the device, as shown in
Figure 4-3.
3. Change the “Comm Channel Select” parameter to Use EMUC2 and EMUD2.
4. On the dsPICDEM 2 board, change the setting on switch S4 to turn on EMUC2
and EMUD2 for GP 18.
5. Remove any jumpers on headers H6 and H7.
6. Reprogram the dsPIC30F device (Debugger>Program menu).
7. On the dsPICDEM 2 board, turn off GP 18 on switch S2.
8. Reset the program and run it. From the Debugger menu, select Reset>Processor
Reset. Then select Debugger>Run.
© 2005 Microchip Technology Inc.
DS51558A-page 31
dsPICDEM 2 Development Board User’s Guide
FIGURE 4-3:
4.6.2
CONFIGURATION BITS WINDOW
Examining the Code
After the application has been reprogrammed to use the MPLAB ICD 2 as a debugger,
you can use MPLAB IDE to run, halt and step the program. You can set breakpoints to
halt the program and examine the actual code at any point. You can also examine the
contents of the RAM and registers whenever the processor is halted.
Refer to Section 2.3 “Getting Started” for an overview of the sample application.
Flowcharts illustrate each of these processes:
•
•
•
•
Startup and initialization
Main loop processing
A/D conversion processing
External interrupt processing
The dsPICDEM 2 Development Kit/Example Software/30F2011 folder
contains fully annotated code files that you can examine, compare and copy.
4.7
SUMMARY
This chapter has provided specific instructions for using the dsPICDEM 2 Development
Board with a dsPIC30F2011 device. If you have reviewed this process, you should be
able to:
•
•
•
•
•
DS51558A-page 32
Configure the dsPICDEM 2 Development Board for the dsPIC30F2011 device.
Set up MPLAB IDE to use the MPLAB ICD 2 In-Circuit Debugger.
Locate the sample application for the dsPIC30F2011 device.
Program the chip with the MPLAB ICD 2.
Examine the sample application and identify applicable code for your embedded
solution.
© 2005 Microchip Technology Inc.
dsPICDEM™ 2
DEVELOPMENT BOARD
USER’S GUIDE
Chapter 5. Using the dsPIC30F2012
5.1
INTRODUCTION
This chapter assumes you have chosen the dsPIC30F2012 for your application. The
dsPICDEM 2 Development Board supports a dsPIC30F2012 device in an 28-pin,
SPDIP package, as shown in Figure 5-1. This device provides ten 12-bit A/D (100 ksps)
channels, a UART, an SPI module, an I2C module and 20 I/O pins. A sample application program provides a software baseline for building your own embedded solution.
U1B1
5.2
28-PIN SPDIP dsPIC30F2012
MCLR
EMUD3/AN0/VREF+/CN2/RB0
EMUC3/AN1/VREF-/CN3/RB1
AN2/SS1/LVDIN/CN4/RB2
AN3/CN5/RB3
AN4/CN6/RB4
AN5/CN7/RB5
VSS
OSC1/CLKI
OSC2/CLKO/RC15
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
VDD
IC2/INT2/RD9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
dsPIC30F2012
FIGURE 5-1:
28
27
26
25
24
23
22
21
20
19
18
17
16
15
AVDD
AVSS
AN6/OCFA/RB6
EMUD2/AN7/RB7
AN8/OC1/RB8
AN9/OC2/RB9
CN17/RF4
CN18/RF5
VDD
VSS
PGC/EMUC/U1RX/SDI1/SDA/RF2
PGD/EMUD/U1TX/SDO1/SCL/RF3
SCK1/INT0/RF6
EMUC2/IC1/INT1/RD8
HIGHLIGHTS
This chapter discusses:
•
•
•
•
•
5.3
Board Setup for the dsPIC30F2012 Sample Application
Device Programming
Observing the Sample Application
In-Circuit Debugging
Summary
BOARD SETUP FOR THE dsPIC30F2012 SAMPLE APPLICATION
The dsPICDEM 2 Development Board supports dsPIC30F devices that have multiple
peripheral devices multiplexed on some pins. Therefore, the jumper set up of various
headers depends on which of the dsPIC30F peripherals are used by the application.
This section demonstrates how the board is set up for the dsPIC30F2012 device to
support the dsPIC30F2012 example software in the dsPICDEM 2 Development Kit CD.
Follow these steps to configure the hardware on the dsPICDEM 2 Development Board.
1. Disconnect the power source.
2. Remove any dsPIC30Fxxxx device currently plugged into the dsPICDEM 2
Development Board.
3. Plug the dsPIC30F2012 into socket U1B1.
4. Configure the hardware components as shown in Table 5-1.
© 2005 Microchip Technology Inc.
DS51558A-page 33
dsPICDEM 2 Development Board User’s Guide
TABLE 5-1:
dsPIC30F2012 CONFIGURATION SETTINGS
Header
Component
No.
Socket U1B1
Jumper
Setting
Pin
Device Functions (see Figure 5-1)
Jumper JP1
JP1
Jumper
—
5 VDC jumper installed
Jumper JP2
JP2
Jumper
—
5 VDC jumper installed
Selector Switch
S2
Selector Switch
S3
Selector Switch
S4
OFF
—
Not used in this configuration
PGM U3
H11
Open
—
No jumper connections
CAN Tx
H2
Open
—
—
CAN Rx
H2
Open
—
—
UART1 Tx *
H3
Open
—
—
UART1 Rx *
H3
Open
—
—
Alternate UART1 Tx * H4
GP ALL
11
EMUD1/SOSC1/T2CK/U1ATX/CN1/RC13
Alternate UART1 Rx * H4
GP ALL
12
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
GP 28 ON 17,18 PGC and PGD
OFF
—
Not used in this configuration
UART2 Tx *
H5
Open
—
—
UART2 Rx *
H5
Open
—
—
Temperature Sensor H10
GP ALL
5
AN3/CN5/RB3
Potentiometer
GP ALL
4
AN2/SS1/LVDIN/CN4/RB2
H13
Switch S5
H6
Open
16
—
Switch S6
H7
GP 28
15
EMUC2/IC1/INT1/RD8
LED D3
H12
GP D3
2
EMUD3/AN0/VREF+/CN2/RB0
LED D4
H12
GP D4
3
EMUC3/AN1/VREF-/CN3/RB1
LCD - SPI™ Clock*
H1
GP 40/28
16
SCK1/INT0/RF6
LCD - SPI Data*
H1
GP 40/28
17
PGD/EMUD/UITX/SDO1/SCL/RF3
*
On this device, multiplexing of various peripherals on the pins does not allow the
simultaneous use of:
– Switch S5 and LCD
– Primary UART1 pins and LCD.
Since only one DB-9 connector is provided for RS-232 communication, you can
select either UART1 (primary or alternate pins) or UART2, but not both.
5. Connect the RS-232 cable from the PC to the UART connector (J2).
6. Reapply power to the DC IN connector (J4). The PWR ON LED should illuminate.
7. Load the sample application program for the dsPIC30F2012 (see
Section 5.4 “Device Programming”).
DS51558A-page 34
© 2005 Microchip Technology Inc.
Using the dsPIC30F2012
5.4
DEVICE PROGRAMMING
Load the sample application program for the dsPIC30F2012 using this process:
1. Plug the RJ11 (telephone) cable from the MPLAB ICD 2 into the ICD header (J1).
Make sure the USB cable from the MPLAB ICD 2 is connected to your PC.
2. Start MPLAB IDE.
3. Open the dsPIC30F2012 sample project
(File>Open Workspace) from path/dsPICDEM 2 Development Kit/Example Software/30F2012/Demo.mcw.
Note:
For detailed information and procedures on using the MPLAB IDE and ICD
2 refer to Chapter 2 “Getting Started”.
4. Build the sample project in MPLAB IDE (Project>Build All).
5. On the dsPICDEM™ 2 board set all positions on switches S3 and S4 to off. Then
set switch S2 to GP 28. The MPLAB ICD 2 is now connected to the PGC and
PGD pins on the dsPIC30F2012.
6. Download the sample application (Programmer>Program). The Output window
(Figure 5-2) displays the status as the download occurs and indicates when the
programming has succeeded.
FIGURE 5-2:
PROGRAMMING THE dsPIC30F2012 DEVICE
7. Disconnect the MPLAB ICD 2 cable from the ICD header. The program is now
ready to run (see Section 5.5 “Observing the Sample Application”).
© 2005 Microchip Technology Inc.
DS51558A-page 35
dsPICDEM 2 Development Board User’s Guide
5.5
OBSERVING THE SAMPLE APPLICATION
1. Press RESET ALL. The program begins to run.
2. Set up a HyperTerminal session on the PC to run with these parameters:
Port Setting
Value
Bits per second
9600
Data bits
8
Parity
None
Stop bits
1
Flow control
None
As a shortcut, you can launch the Hyperterminal_RS232_dsPICDEM2.ht
file in the dsPICDEM 2 Development Kit/Example Software/30F2012
folder.
3. See information on LCD. Note that the HyperTerminal displays the same
information.
4. Adjust temperature and note LCD and HyperTerminal readings.
5. Adjust potentiometer and note LCD and HyperTerminal readings.
6. Observe the rate at which LEDs D3 and D4 blink.
7. Press S6 (INT1) and note the affect on D3 and D4.
DS51558A-page 36
© 2005 Microchip Technology Inc.
Using the dsPIC30F2012
5.6
IN-CIRCUIT DEBUGGING
The sample application program is intended to illustrate how the processor and
peripheral modules handle the functionality provided on the dsPICDEM 2 Development
Board. The MPLAB ICD 2 In-Circuit Debugger was used to program the sample
application into the dsPIC30F device. You can also use the MPLAB ICD 2 In-Circuit
Debugger to examine this baseline code to determine specific applicability to your
application.
The examination process requires that three changes be made to the sample
application setup.
• The dsPIC30F2012 device must be reprogrammed to recognize the MPLAB ICD
2 as a debugger rather than as a programmer.
• MPLAB IDE must be reconfigured to specify the pins on the dsPIC30F2012
device to be used for debugging.
• The dsPICDEM 2 board must be physically reconfigured to ensure that it connects
the MPLAB ICD 2 debugger to the pins on the dsPIC30F2012 device that were
specified in MPLAB IDE.
The primary programming and debugging functions (PGC/EMUC, PGD/EMUD) on the
dsPIC30F device are multiplexed with other peripheral modules on the device used by
the sample application. Thus it is necessary to use an alternate pair of debugging pins
(EMUC1/EMUD1, EMUC2/EMUD2 or EMUC3/EMUD3) to examine the baseline code
provided in the sample application.
5.6.1
Setting Up MPLAB ICD 2 for Debugging
To change MPLAB ICD 2 from a programmer to a debugger:
1. From the Debugger menu, click Select Tool>MPLAB ICD 2 to designate the
MPLAB ICD 2 as the debug tool in MPLAB IDE.
2. From the Configure menu, select Configuration Bits... The Configuration Bits
window displays the current configuration settings for the device, as shown in
Figure 5-3.
3. Change the “Comm Channel Select” parameter to Use EMUC2 and EMUD2.
4. On the dsPICDEM 2 board, change the setting on switch S4 to turn on EMUC2
and EMUD2 for GP 28.
5. Remove any jumpers on headers H6 and H7.
6. Reprogram the dsPIC30F device (Debugger>Program menu).
7. On the dsPICDEM 2 board, turn off GP 28 on switch S2.
8. Reset the program and run it. From the Debugger menu, select Reset>Processor
Reset. Then select Debugger>Run.
© 2005 Microchip Technology Inc.
DS51558A-page 37
dsPICDEM 2 Development Board User’s Guide
FIGURE 5-3:
5.6.2
CONFIGURATION BITS WINDOW
Examining the Code
After the application has been reprogrammed to use the MPLAB ICD 2 as a debugger,
you can use MPLAB IDE to run, halt and step the program. You can set breakpoints to
halt the program and examine the actual code at any point. You can also examine the
contents of the RAM and registers whenever the processor is halted.
Refer to Section 2.3 “Getting Started” for an overview of the sample application.
Flowcharts illustrate each of these processes:
•
•
•
•
Startup and initialization
Main loop processing
A/D conversion processing
External interrupt processing
The dsPICDEM 2 Development Kit/Example Software/30F2012 folder
contains fully annotated code files that you can examine, compare and copy.
5.7
SUMMARY
This chapter has provided specific instructions for using the dsPICDEM 2 Development
Board with a dsPIC30F2012 device. If you have reviewed this process, you should be
able to:
•
•
•
•
•
DS51558A-page 38
Configure the dsPICDEM 2 Development Board for the dsPIC30F2012 device.
Set up MPLAB IDE to use the MPLAB ICD 2 In-Circuit Debugger.
Locate the sample application for the dsPIC30F2012 device.
Program the chip with the MPLAB ICD 2.
Examine the sample application and identify applicable code for your embedded
solution.
© 2005 Microchip Technology Inc.
dsPICDEM™ 2
DEVELOPMENT BOARD
USER’S GUIDE
Chapter 6. Using the dsPIC30F3010
6.1
INTRODUCTION
This chapter assumes you have chosen the dsPIC30F3010 for your application. The
dsPICDEM 2 Development Board supports a dsPIC30F3010 device in a 28-pin SPDIP
package, as shown in Figure 6-1. This device provides six 10-bit A/D (500 ksps)
channels, a UART, an SPI module, an I2C™ module and 20 I/O pins. A sample
application program provides a software baseline for building your own embedded
solution.
U2B1
6.2
28-PIN SPDIP dsPIC30F3010
MCLR
EMUD3/AN0/VREF+/CN2/RB0
EMUC3/AN1/VREF-/CN3/RB1
AN2/SS1/CN4/RB2
AN3/INDX/CN5/RB3
AN4/QEA/IC7/CN6/RB4
AN5/QEB/IC8/CN7/RB5
VSS
OSC1/CLKIN
OSC2/CLKO/RC15
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
VDD
EMUD2/OC2/IC2/INT2/RD1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
dsPIC30F3010
FIGURE 6-1:
28
27
26
25
24
23
22
21
20
19
18
17
16
15
AVDD
AVSS
PWM1L/RE0
PWM1H/RE1
PWM2L/RE2
PWM2H/RE3
PWM3L/RE4
PWM3H/RE5
VDD
VSS
PGC/EMUC/U1RX/SDI1/SDA/RF2
PGD/EMUD/U1TX/SDO1/SCL/RF3
FLTA/INT0/SCK1/OCFA/RE8
EMUC2/OC1/IC1/INT1/RD0
HIGHLIGHTS
This chapter discusses:
•
•
•
•
•
6.3
Board Setup for the dsPIC30F3010 Sample Application
Device Programming
Observing the Sample Application
In-Circuit Debugging
Summary
BOARD SETUP FOR THE dsPIC30F3010 SAMPLE APPLICATION
The dsPICDEM 2 Development Board supports dsPIC30F devices that have multiple
peripheral devices multiplexed on some pins. Therefore, the jumper set up of various
headers depends on which of the dsPIC30F peripherals are used by the application.
This section demonstrates how the board is set up for the dsPIC30F3010 device to
support the dsPIC30F3010 example software in the dsPICDEM 2 Development Kit CD.
Follow these steps to configure the hardware on the dsPICDEM 2 Development Board
for the sample application.
1. Disconnect the power source.
2. Remove any dsPIC30Fxxxx device currently plugged into the dsPICDEM 2
Development Board.
© 2005 Microchip Technology Inc.
DS51558A-page 39
dsPICDEM 2 Development Board User’s Guide
3. Plug the dsPIC30F3010 into socket U2B1.
4. Configure the hardware components as shown in Table 6-1.
TABLE 6-1:
dsPIC30F3010 CONFIGURATION SETTINGS
Header
Component
No.
Socket U2B1
Jumper
Setting
Pin
Device Functions (see Figure 6-1)
Jumper JP1
JP1
Jumper
—
5 VDC jumper installed
Jumper JP2
JP2
Jumper
—
5 VDC jumper installed
Selector Switch*
S2
Selector Switch*
S3
M ALL ON 17,18 PGC and PGD
OFF
—
Not used in this configuration
Not used in this configuration
Selector Switch*
S4
OFF
—
PGM U3
H11
Open
—
—
CAN Tx
H2
Open
—
—
CAN Rx
H2
Open
—
—
UART1 Tx*
H3
Open
—
—
UART1 Rx*
H3
Open
—
—
Alternate UART1 Tx* H4
M ALL
11
EMUD1/SOSC1/T2CK/U1ATX/CN1/RC13
Alternate UART1 Rx* H4
M ALL
12
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
UART2 Tx*
H5
Open
—
—
UART2 Rx*
H5
Open
—
—
Temperature Sensor H10
M ALL
5
AN3/INDX/CN5/RB3
Potentiometer
M ALL
4
AN2/SSI/CN4/RB2
H13
Switch S5
H6
Open
—
Switch S6
H7
M ALL
15
EMUC2/OC1/IC1/INT1/RD0
—
LED D3
H12
M D3
2
EMUD3/AN0/VREF+/CN2/RB0
LED D4
H12
M D4
3
EMUC3/AN1/VREF-/CN3/RB1
LCD - SPI™ Clock*
H1
M 28
16
FLTA/INT0/SCK1/OCFA/RE8
LCD - SPI Data*
H1
M 28
17
PGD/EMUD/U1TX/SDO1/SCL/RF3
*
On this device, multiplexing of various peripherals on the pins does not allow the
simultaneous use of:
– Switch S5 and LCD
– Primary UART1 pins and LCD.
Since only one DB-9 connector is provided for RS-232 communication, you can
select either UART1 (primary or alternate pins) or UART2, but not both.
5. Connect the RS-232 cable from the PC to the UART connector (J2).
6. Reapply power to the DC IN connector (J4). The PWR ON LED should illuminate.
7. Load the sample application program for the dsPIC30F3010 (see
Section 6.4 “Device Programming”).
DS51558A-page 40
© 2005 Microchip Technology Inc.
Using the dsPIC30F3010
6.4
DEVICE PROGRAMMING
Load the sample application program for the dsPIC30F3010 using this process:
1. Plug the RJ11 (telephone) cable from the MPLAB ICD 2 into the ICD header (J1).
Make sure the USB cable from the MPLAB ICD 2 is connected to your PC.
2. Start MPLAB IDE.
3. Open the dsPIC30F3010 sample project (File>Open Workspace) from
path/dsPICDEM 2 Development Kit/Example Software/30F3010/Demo.mcw.
Note:
For detailed information and procedures on using the MPLAB IDE and ICD
2, refer to Chapter 2 “Getting Started”.
4. Build the sample project in MPLAB IDE (Project>Build All).
5. On the dsPICDEM™ 2 board set all positions on switch S4 to off. Then set switch
S2 to M ALL. The MPLAB ICD 2 is now connected to the PGC and PGD pins on
the dsPIC30F3010.
6. Download the sample application (Programmer>Program). The Output window
(Figure 6-2) displays the status as the download occurs and indicates when the
programming has succeeded.
FIGURE 6-2:
PROGRAMMING THE dsPIC30F3010 DEVICE
7. Disconnect the MPLAB ICD 2 cable from the ICD header. The program is now
ready to run (see Section 6.5 “Observing the Sample Application”).
© 2005 Microchip Technology Inc.
DS51558A-page 41
dsPICDEM 2 Development Board User’s Guide
6.5
OBSERVING THE SAMPLE APPLICATION
1. Press RESET ALL. The program begins to run.
2. Set up a HyperTerminal session on the PC to run with these parameters:
Port Setting
Value
Bits per second
9600
Data bits
8
Parity
None
Stop bits
1
Flow control
None
As a shortcut, you can launch the Hyperterminal_RS232_dsPICDEM2.ht
file in the dsPICDEM 2 Development Kit/Example Software/30F3010
folder.
3. See information on LCD. Note that the HyperTerminal displays the same
information.
4. Adjust temperature and note LCD and HyperTerminal readings.
5. Adjust potentiometer and note LCD and HyperTerminal readings.
6. Observe the rate at which LEDs D3 and D4 blink.
7. Press S6 (INT1) and note the affect on D3 and D4.
DS51558A-page 42
© 2005 Microchip Technology Inc.
Using the dsPIC30F3010
6.6
IN-CIRCUIT DEBUGGING
The sample application program is intended to illustrate how the processor and
peripheral modules handle the functionality provided on the dsPICDEM 2 Development
Board. The MPLAB ICD 2 In-Circuit Debugger was used to program the sample
application into the dsPIC30F device. You can also use the MPLAB ICD 2 In-Circuit
Debugger to examine this baseline code to determine specific applicability to your
application.
The examination process requires that three changes be made to the sample
application setup.
• The dsPIC30F3010 device must be reprogrammed to recognize the MPLAB ICD
2 as a debugger rather than as a programmer.
• MPLAB IDE must be reconfigured to specify the pins on the dsPIC30F3010
device to be used for debugging.
• The dsPICDEM 2 board must be physically reconfigured to ensure that it connects
the MPLAB ICD 2 debugger to the pins on the dsPIC30F2010 device that were
specified in MPLAB IDE.
The primary programming and debugging functions (PGC/EMUC, PGD/EMUD) on the
dsPIC30F device are multiplexed with other peripheral modules on the device used by
the sample application. Thus it is necessary to use an alternate pair of debugging pins
(EMUC1/EMUD1, EMUC2/EMUD2 or EMUC3/EMUD3) to examine the baseline code
provided in the sample application.
6.6.1
Setting Up MPLAB ICD 2 for Debugging
To change MPLAB ICD 2 from a programmer to a debugger:
1. From the Debugger menu, click Select Tool>MPLAB ICD 2 to designate the
MPLAB ICD 2 as the debug tool in MPLAB IDE.
2. From the Configure menu, select Configuration Bits... The Configuration Bits
window displays the current configuration settings for the device, as shown in
Figure 6-3.
3. Change the “Comm Channel Select” parameter to Use EMUC2 and EMUD2.
4. On the dsPICDEM 2 board, change the setting on switch S3 to turn on EMUC2
and EMUD2.
5. Remove any jumpers on headers H6 and H7.
6. Reprogram the dsPIC30F device (Debugger>Program menu).
7. On the dsPICDEM 2 board, turn off M ALL on switch S2.
8. Reset the program and run it. From the Debugger menu, select Reset>Processor
Reset. Then select Debugger>Run.
© 2005 Microchip Technology Inc.
DS51558A-page 43
dsPICDEM 2 Development Board User’s Guide
FIGURE 6-3:
6.6.2
CONFIGURATION BITS WINDOW
Examining the Code
After the application has been reprogrammed to use the MPLAB ICD 2 as a debugger,
you can use MPLAB IDE to run, halt and step the program. You can set breakpoints to
halt the program and examine the actual code at any point. You can also examine the
contents of the RAM and registers whenever the processor is halted.
Refer to Section 2.3 “Getting Started” for an overview of the sample application.
Flowcharts illustrate each of these processes:
•
•
•
•
Startup and initialization
Main loop processing
A/D conversion processing
External interrupt processing
The dsPICDEM 2 Development Kit/Example Software/30F3010 folder contains fully annotated code files that you can examine, compare and copy.
6.7
SUMMARY
This chapter has provided specific instructions for using the dsPICDEM 2 Development
Board with a dsPIC30F3010 device. If you have reviewed this process, you should be
able to:
•
•
•
•
•
DS51558A-page 44
Configure the dsPICDEM 2 Development Board for the dsPIC30F3010 device.
Set up MPLAB IDE to use the MPLAB ICD 2 In-Circuit Debugger.
Locate the sample application for the dsPIC30F3010 device.
Program the chip with the MPLAB ICD 2.
Examine the sample application and identify applicable code for your embedded
solution.
© 2005 Microchip Technology Inc.
dsPICDEM™ 2
DEVELOPMENT BOARD
USER’S GUIDE
Chapter 7. Using the dsPIC30F3011
7.1
INTRODUCTION
This chapter assumes you have chosen the dsPIC30F3011 for your application. The
dsPICDEM 2 Development Board supports a dsPIC30F3011 device in a 40-pin PDIP
package, as shown in Figure 7-1. This device provides nine 10-bit A/D (500 ksps)
channels, two UARTs, an SPI module, an I2C module and 30 I/O pins. A sample
application program provides a software baseline for building your own embedded
solution.
U2A1
7.2
40-PIN PDIP dsPIC30F3011
MCLR
EMUD3/AN0/VREF+/CN2/RB0
EMUC3/AN1/VREF-/CN3/RB1
AN2/SS1/CN4/RB2
AN3/INDX/CN5/RB3
AN4/QEA/IC7/CN6/RB4
AN5/QEB/IC8/CN7/RB5
AN6/OCFA/RB6
AN7/RB7
AN8/RB8
VDD
VSS
OSC1/CLKIN
OSC2/CLKO/RC15
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
FLTA/INT0/RE8
EMUD2/OC2/IC2/INT2/RD1
OC4/RD3
VSS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
dsPIC30F3011
FIGURE 7-1:
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
AVDD
AVSS
PWM1L/RE0
PWM1H/RE1
PWM2L/RE2
PWM2H/RE3
PWM3L/RE4
PWM3H/RE5
VDD
VSS
RF0
RF1
U2RX/CN17/RF4
U2TX/CN18/RF5
PGC/EMUC/U1RX/SDI1/SDA/RF2
PGD/EMUD/U1TX/SDO1/SCL/RF3
SCK1/RF6
EMUC2/OC1/IC1/INT1/RD0
OC3/RD2
VDD
HIGHLIGHTS
This chapter discusses:
•
•
•
•
•
7.3
Board Setup for the dsPIC30F3011 Sample Application
Device Programming
Observing the Sample Application
In-Circuit Debugging
Summary
BOARD SETUP FOR THE dsPIC30F3011 SAMPLE APPLICATION
The dsPICDEM 2 Development Board supports dsPIC30F devices that have multiple
peripheral devices multiplexed on some pins. Therefore, the jumper set up of various
headers depends on which of the dsPIC30F peripherals are used by the application.
This section demonstrates how the board is set up for the dsPIC30F3011 device to
support the dsPIC30F3011 example software in the dsPICDEM 2 Development Kit CD.
Follow these steps to configure the hardware on the dsPICDEM 2 Development Board
for the sample application.
1. Disconnect the power source.
© 2005 Microchip Technology Inc.
DS51558A-page 45
dsPICDEM 2 Development Board User’s Guide
2. Remove any dsPIC30Fxxxx device currently plugged into the dsPICDEM 2
Development Board.
3. Plug the dsPIC30F3011 into socket U2A1.
4. Configure the hardware components as shown in Table 7-1.
TABLE 7-1:
dsPIC30F3011 CONFIGURATION SETTINGS
Header
Component
No.
Socket U2A1
Jumper
Setting
Pin
Device Functions (see Figure 7-1)
Jumper JP1
JP1
Jumper
—
5 VDC jumper installed
Jumper JP2
JP2
Jumper
—
5 VDC jumper installed
Selector Switch
S2
Selector Switch
S3
M ALL ON 25,26 PGC and PGD
OFF
—
Not used in this configuration
Selector Switch
S4
OFF
—
Not used in this configuration
PGM U3
H11
Open
—
—
CAN Tx
H2
Open
—
—
CAN Rx
H2
Open
—
—
UART1 Tx*
H3
Open
—
—
UART1 Rx*
H3
Open
—
Alternate UART1 Tx* H4
M ALL
15
EMUD1/SOSCI/T2CL/U1ATX/CN1/RC13
—
Alternate UART1 Rx* H4
M ALL
16
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
UART2 Tx*
H5
Open
—
—
UART2 Rx*
H5
Open
—
—
Temperature Sensor H10
M ALL
5
AN3/INDX/CN5/RB3
Potentiometer
H13
M ALL
4
AN2/SS1/CN4/RB2
Switch S5
H6
M ALL
17
FLTA/INT0/RE8
Switch S6
H7
M ALL
23
EMUC2/OC1/IC1/INT1/RD0
LED D3
H12
M D3
2
EMUD3/AN0/VREF+/CN2/RB0
LED D4
H12
M D4
3
EMUC3/AN1/VREF-/CN3/RB1
LCD - SPI™ Clock*
H1
M 40
24
SCK1/RF6
LCD - SPI Data*
H1
M 40
25
PGD/EMUD/U1TX/SDO1/SCL/RF3
*
On this device, multiplexing of various peripherals on the pins does not allow the
simultaneous use of:
– Switch S5 and LCD.
– Primary UART1 pins and LCD.
Since only one DB-9 connector is provided for RS-232 communication, you can
select either UART1 (primary or alternate pins) or UART2, but not both.
5. Connect the RS-232 cable from the PC to the UART connector (J2).
6. Reapply power to the DC IN connector (J4). The PWR ON LED should illuminate.
7. Load the sample application program for the dsPIC30F3011 (see
Section 7.4 “Device Programming”).
DS51558A-page 46
© 2005 Microchip Technology Inc.
Using the dsPIC30F3011
7.4
DEVICE PROGRAMMING
Load the sample application program for the dsPIC30F3011 using this process:
1. Plug the RJ11 (telephone) cable from the MPLAB ICD 2 into the ICD header (J1).
Make sure the USB cable from the MPLAB ICD 2 is connected to your PC.
2. Start MPLAB IDE.
3. Open the dsPIC30F3011 sample project (File>Open Workspace> from
path/dsPICDEM 2 Development Kit/Example Software/30F3011/Demo.mcw.
Note:
For detailed information and procedures on using the MPLAB IDE and ICD
2, refer to Chapter 2 “Getting Started”.
4. Build the sample project in MPLAB IDE (Project>Build All).
5. On the dsPICDEM™ 2 board set all positions on switches S3 and S4 to off. Then
set switch S2 to M ALL. The MPLAB ICD 2 is now connected to the PGC and
PGD pins on the dsPIC30F3011.
6. Download the sample application (Programmer>Program). The Output window
(Figure 7-2) displays the status as the download occurs and indicates when the
programming has succeeded.
FIGURE 7-2:
PROGRAMMING THE dsPIC30F3011 DEVICE
7. Disconnect the MPLAB ICD 2 cable from the ICD header. The program is now
ready to run (see Section 7.5 “Observing the Sample Application”).
© 2005 Microchip Technology Inc.
DS51558A-page 47
dsPICDEM 2 Development Board User’s Guide
7.5
OBSERVING THE SAMPLE APPLICATION
1. Press RESET ALL. The program begins to run.
2. Set up a HyperTerminal session on the PC to run with these parameters:
Port Setting
Value
Bits per second
9600
Data bits
8
Parity
None
Stop bits
1
Flow control
None
As a shortcut, you can launch the Hyperterminal_RS232_dsPICDEM2.ht
file in the dsPICDEM 2 Development Kit/Example Software/30F3011
folder.
3. See information on LCD. Note that the HyperTerminal displays the same
information.
4. Adjust temperature and note LCD and HyperTerminal readings.
5. Adjust potentiometer and note LCD and HyperTerminal readings.
6. Observe the rate at which LEDs D3 and D4 blink.
7. Press S5 (INT0) and note the affect on D3 and D4.
8. Press S6 (INT1) and note the affect on D3 and D4.
DS51558A-page 48
© 2005 Microchip Technology Inc.
Using the dsPIC30F3011
7.6
IN-CIRCUIT DEBUGGING
The sample application program is intended to illustrate how the processor and I/O
modules handle the functionality provided on the dsPICDEM 2 Development Board.
The MPLAB ICD 2 In-Circuit Debugger was used to program the sample application
into the dsPIC30F device. You can also use the MPLAB ICD 2 In-Circuit Debugger to
examine this baseline code to determine specific applicability to your application.
The examination process requires that three changes be made to the sample
application setup.
• The dsPIC30F3011 device must be reprogrammed to recognize the MPLAB ICD
2 as a debugger rather than as a programmer.
• MPLAB IDE must be reconfigured to specify the pins on the dsPIC30F3011
device to be used for debugging.
• The dsPICDEM 2 board must be physically reconfigured to ensure that it connects
the MPLAB ICD 2 debugger to the pins on the dsPIC30F3011 device that were
specified in MPLAB IDE.
The primary programming and debugging functions (PGC/EMUC, PGD/EMUD) on the
dsPIC30F device are multiplexed with other peripheral modules on the device used by
the sample application. Thus it is necessary to use an alternate pair of debugging pins
(EMUC1/EMUD1, EMUC2/EMUD2 or EMUC3/EMUD3) to examine the baseline code
provided in the sample application.
7.6.1
Setting Up MPLAB ICD 2 for Debugging
To change MPLAB ICD 2 from a programmer to a debugger:
1. From the Debugger menu, click Select Tool>MPLAB ICD 2 to designate the
MPLAB ICD 2 as the debug tool in MPLAB IDE.
2. From the Configure menu, select Configuration Bits... The Configuration Bits
window displays the current configuration settings for the device, as shown in
Figure 7-3.
3. Change the “Comm Channel Select” parameter to Use EMUC2 and EMUD2.
4. On the dsPICDEM 2 board, change the setting on switch S3 to turn on EMUC2
and EMUD2.
5. Remove any jumpers on headers H6 and H7.
6. Reprogram the dsPIC30F device (Debugger>Program menu).
7. On the dsPICDEM 2 board, turn off M ALL on switch S2.
8. Reset the program and run it. From the Debugger menu, select Reset>Processor
Reset. Then select Debugger>Run.
© 2005 Microchip Technology Inc.
DS51558A-page 49
dsPICDEM 2 Development Board User’s Guide
FIGURE 7-3:
7.6.2
CONFIGURATION BITS WINDOW
Examining the Code
After the application has been reprogrammed to use the MPLAB ICD 2 as a debugger,
you can use MPLAB IDE to run, halt and step the program. You can set breakpoints to
halt the program and examine the actual code at any point. You can also examine the
contents of the RAM and registers whenever the processor is halted.
Refer to Section 2.3 “Getting Started” for an overview of the sample application.
Flowcharts illustrate each of these processes:
•
•
•
•
Startup and initialization
Main loop processing
A/D conversion processing
External interrupt processing
The dsPICDEM 2 Development Kit/Example Software/30F3011 folder
contains fully annotated code files that you can examine, compare and copy.
7.7
SUMMARY
This chapter has provided specific instructions for using the dsPICDEM 2 Development
Board with a dsPIC30F3011 device. If you have reviewed this process, you should be
able to:
•
•
•
•
•
DS51558A-page 50
Configure the dsPICDEM 2 Development Board for the dsPIC30F3011 device.
Set up MPLAB IDE to use the MPLAB ICD 2 In-Circuit Debugger.
Locate the sample application for the dsPIC30F3011 device.
Program the chip with the MPLAB ICD 2.
Examine the sample application and identify applicable code for your embedded
solution.
© 2005 Microchip Technology Inc.
dsPICDEM™ 2
DEVELOPMENT BOARD
USER’S GUIDE
Chapter 8. Using the dsPIC30F3012
8.1
INTRODUCTION
This chapter assumes you have chosen the dsPIC30F3012 for your application. The
dsPICDEM 2 Development Board supports a dsPIC30F3012 device in an 18-pin PDIP
package, as shown in Figure 8-1. This device provides eight 12-bit A/D (100 ksps)
channels, a UART, an SPI module, an I2C module and 12 I/O pins. A sample application program provides a software baseline for building your own embedded solution.
18-PIN PDIP dsPIC30F3012
MCLR
EMUD3\AN0/VREF+/CN2/RB0
EMUD3\AN1/VREF-/CN3/RB1
AN2/SS1/LVDIN/CN4/RB2
AN3/CN5/RB3
U1C1
OSC1/CLKI
OSC2/CLKO/RC15
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
8.2
1
2
3
4
5
6
7
8
9
dsPIC30F3012
FIGURE 8-1:
18
17
16
15
14
13
12
11
10
AVDD
AVSS
AN6/SCK1/INT0/OCFA/RB6
EMUD2/AN7/OC2/IC2/INT2/RB7
VDD
VSS
PGC/EMUC/AN5/U1RX/SDI1/SDA/CN7/RB5
PGD/EMUD/AN4/U1TX/SDO1/SCL/CN6/RB4
EMUC2/OC1/IC1/INT1/RD0
HIGHLIGHTS
This chapter discusses:
•
•
•
•
•
8.3
Board Setup for the dsPIC30F3012 Sample Application
Device Programming
Observing the Sample Application
In-Circuit Debugging
Summary
BOARD SETUP FOR THE dsPIC30F3012 SAMPLE APPLICATION
The dsPICDEM 2 Development Board supports dsPIC30F devices that have multiple
peripheral devices multiplexed on some pins. Therefore, the jumper set up of various
headers depends on which of the dsPIC30F peripherals are used by the application.
This section demonstrates how the board is set up for the dsPIC30F3012 device to
support the dsPIC30F3012 example software in the dsPICDEM 2 Development Kit CD.
Follow these steps to configure the hardware on the dsPICDEM 2 Development Board
for the sample application.
1. Disconnect the power source.
2. Remove any dsPIC30Fxxxx device currently plugged into the dsPICDEM 2
Development Board.
3. Plug the dsPIC30F3012 into socket U1C1.
4. Configure the hardware components as shown in Table 8-1.
© 2005 Microchip Technology Inc.
DS51558A-page 51
dsPICDEM 2 Development Board User’s Guide
TABLE 8-1:
dsPIC30F3012 CONFIGURATION SETTINGS
Header
Component
No.
Socket U1C1
Jumper
Setting
Pin
Device Functions (see Figure 8-1)
Jumper JP1
JP1
Jumper
—
5 VDC jumper installed
Jumper JP2
JP2
Jumper
—
5 VDC jumper installed
Selector Switch
S2
Selector Switch
S3
GP 18 ON 11,12 PGC and PGD
OFF
—
Not used in this configuration
Not used in this configuration
Selector Switch
S4
OFF
—
PGM U3
H11
Open
—
—
CAN Tx
H2
—
—
—
CAN Rx
H2
—
—
—
UART1 Tx*
H3
Open
—
—
UART1 Rx*
H3
Open
—
—
Alternate UART1 Tx* H4
GP ALL
8
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
Alternate UART1 Rx* H4
GP ALL
9
UMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
UART2 Tx*
H5
—
—
—
UART2 Rx*
H5
—
—
—
Temperature Sensor H10
GP ALL
5
AN3/CN5/RB3
Potentiometer
H13
GP ALL
4
AN2/SS1/LVDIN/CN4/RB2
Switch S5
H6
Open
—
Switch S6
H7
GP 18
10
EMUC2/OC1/IC1/INT1/RD0
LED D3
H12
GP D3
2
AN0/VREF+/CN2/RB0
LED D4
H12
GP D4
3
AN1/VREF-/CN3/RB1
LCD - SPI™ Clock*
H1
GP 18
16
AN6/SCK1/INT0/OCFA/RB6
LCD - SPI Data*
H1
GP 18
11
PGC/EMUD/AN4/U1TX/SDO1/SCL/CN6/RB4
*
—
On this device, multiplexing of various peripherals on the pins does not allow the
simultaneous use of:
– Switch S5 and LCD.
– Primary UART1 pins and LCD.
Since only one DB-9 connector is provided for RS-232 communication, you can
select either UART1 (primary or alternate pins) or UART2, but not both.
5. Connect the RS-232 cable from the PC to the UART connector (J2).
6. Reapply power to the DC IN connector (J4). The PWR ON LED should illuminate.
7. Load the sample application program for the dsPIC30F3012 (see
Section 8.4 “Device Programming”).
DS51558A-page 52
© 2005 Microchip Technology Inc.
Using the dsPIC30F3012
8.4
DEVICE PROGRAMMING
Load the sample application program for the dsPIC30F3012 using this process:
1. Plug the RJ11 (telephone) cable from the MPLAB ICD 2 into the ICD header (J1).
Make sure the USB cable from the MPLAB ICD 2 is connected to your PC.
2. Start MPLAB IDE.
3. Open the dsPIC30F3012 sample project
(File>Open Workspace>[path/dsPIC30F4013 Sample Project]) from
path/dsPICDEM 2 Development Kit/Example Software/30F3012/Demo.mcw.
Note:
For detailed information and procedures on using the MPLAB IDE and ICD
2 refer to Chapter 2 “Getting Started”.
4. Build the sample project in MPLAB IDE (Project>Build All).
5. On the dsPICDEM™ 2 board set all positions on switches S3 and S4 to off. Then
set switch S2 to GP 18. The MPLAB ICD 2 is now connected to the PGC and
PGD pins on the dsPIC30F3012.
6. Download the sample application (Programmer>Program). The Output window
(Figure 8-2) displays the status as the download occurs and indicates when the
programming has succeeded.
FIGURE 8-2:
PROGRAMMING THE dsPIC30F3012 DEVICE
7. Disconnect the MPLAB ICD 2 cable from the ICD header. The program is now
ready to run (see Section 8.5 “Observing the Sample Application”).
© 2005 Microchip Technology Inc.
DS51558A-page 53
dsPICDEM 2 Development Board User’s Guide
8.5
OBSERVING THE SAMPLE APPLICATION
1. Press RESET ALL. The program begins to run.
2. Set up a HyperTerminal session on the PC to run with these parameters:
Port Setting
Value
Bits per second
9600
Data bits
8
Parity
None
Stop bits
1
Flow control
None
As a shortcut, you can launch the Hyperterminal_RS232_dsPICDEM2.ht
file in the dsPICDEM 2 Development Kit/Example Software/30F3012
folder.
3. See information on LCD. Note that the HyperTerminal displays the same
information.
4. Adjust temperature and note LCD and HyperTerminal readings.
5. Adjust potentiometer and note LCD and HyperTerminal readings.
6. Observe the rate at which LEDs D3 and D4 blink.
7. Press S6 (INT1) and note the affect on D3 and D4.
DS51558A-page 54
© 2005 Microchip Technology Inc.
Using the dsPIC30F3012
8.6
IN-CIRCUIT DEBUGGING
The sample application program is intended to illustrate how the processor and
peripheral modules handle the functionality provided on the dsPICDEM 2 Development
Board. The MPLAB ICD 2 In-Circuit Debugger was used to program the sample
application into the dsPIC30F device. You can also use the MPLAB ICD 2 In-Circuit
Debugger to examine this baseline code to determine specific applicability to your
application.
The examination process requires that three changes be made to the sample
application setup.
• The dsPIC30F3012 device must be reprogrammed to recognize the MPLAB ICD
2 as a debugger rather than as a programmer.
• MPLAB IDE must be reconfigured to specify the pins on the dsPIC30F3012
device to be used for debugging.
• The dsPICDEM 2 board must be physically reconfigured to ensure that it connects
the MPLAB ICD 2 debugger to the pins on the dsPIC30F3012 device that were
specified in MPLAB IDE.
The primary programming and debugging functions (PGC/EMUC, PGD/EMUD) on the
dsPIC30F device are multiplexed with other peripheral modules on the device used by
the sample application. Thus it is necessary to use an alternate pair of debugging pins
(EMUC1/EMUD1, EMUC2/EMUD2 or EMUC3/EMUD3) to examine the baseline code
provided in the sample application.
8.6.1
Setting Up MPLAB ICD 2 for Debugging
To change MPLAB ICD 2 from a programmer to a debugger:
1. From the Debugger menu, click Select Tool>MPLAB ICD 2 to designate the
MPLAB ICD 2 as the debug tool in MPLAB IDE.
2. From the Configure menu, select Configuration Bits... The Configuration Bits
window displays the current configuration settings for the device, as shown in
Figure 8-3.
3. Change the “Comm Channel Select” parameter to Use EMUC2 and EMUD2.
4. On the dsPICDEM 2 board, change the setting on switch S4 to turn on EMUC2
and EMUD2 for GP 18.
5. Remove any jumpers on headers H6 and H7.
6. Reprogram the dsPIC30F device (Debugger>Program menu).
7. On the dsPICDEM 2 board, turn off GP 18 on switch S2.
8. Reset the program and run it. From the Debugger menu, select Reset>Processor
Reset. Then select Debugger>Run.
© 2005 Microchip Technology Inc.
DS51558A-page 55
dsPICDEM 2 Development Board User’s Guide
FIGURE 8-3:
8.6.2
CONFIGURATION BITS WINDOW
Examining the Code
After the application has been reprogrammed to use the MPLAB ICD 2 as a debugger,
you can use MPLAB IDE to run, halt and step the program. You can set breakpoints to
halt the program and examine the actual code at any point. You can also examine the
contents of the RAM and registers whenever the processor is halted.
Refer to Section 2.3 “Getting Started” for an overview of the sample application.
Flowcharts illustrate each of these processes:
•
•
•
•
Startup and initialization
Main loop processing
A/D conversion processing
External interrupt processing
The dsPICDEM 2 Development Kit/Example Software/30F3012 folder contains fully annotated code files that you can examine, compare and copy.
8.7
SUMMARY
This chapter has provided specific instructions for using the dsPICDEM 2 Development
Board with a dsPIC30F3012 device. If you have reviewed this process, you should be
able to:
•
•
•
•
•
DS51558A-page 56
Configure the dsPICDEM 2 Development Board for the dsPIC30F3012 device.
Set up MPLAB IDE to use the MPLAB ICD 2 In-Circuit Debugger.
Locate the sample application for the dsPIC30F3012 device.
Program the chip with the MPLAB ICD 2.
Examine the sample application and identify applicable code for your embedded
solution.
© 2005 Microchip Technology Inc.
dsPICDEM™ 2
DEVELOPMENT BOARD
USER’S GUIDE
Chapter 9. Using the dsPIC30F3013
9.1
INTRODUCTION
This chapter assumes you have chosen the dsPIC30F3013 for your application. The
dsPICDEM 2 Development Board supports a dsPIC30F3013 device in a 28-pin SPDIP
package, as shown in Figure 9-1. This device provides ten 12-bit A/D (100 ksps)
channels, two UARTs, an SPI module, an I2C module and 20 I/O pins. A sample
application program provides a software baseline for building your own embedded
solution.
U1B1
9.2
28-PIN SPDIP dsPIC30F3013
MCLR
EMUD3/AN0/VREF+/CN2/RB0
EMUC3/AN1/VREF-/CN3/RB1
AN2/SS1/LVDIN/CN4/RB2
AN3/CN5/RB3
AN4/CN6/RB4
AN5/CN7/RB5
VSS
OSC1/CLKI
OSC2/CLKO/RC15
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
VDD
IC2/INT2/RD9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
dsPIC30F3013
FIGURE 9-1:
28
27
26
25
24
23
22
21
20
19
18
17
16
15
AVDD
AVSS
AN6/OCFA/RB6
EMUD2/AN7/RB7
AN8/OC1/RB8
AN9/OC2/RB9
U2RX/CN17/RF4
U2TX/CN18/RF5
VDD
VSS
PGC/EMUC/U1RX/SDI1/SDA/RF2
PGD/EMUD/U1TX/SDO1/SCL/RF3
SCK1/INT0/RF6
EMUC2/IC1/INT1/RD8
HIGHLIGHTS
This chapter discusses:
•
•
•
•
•
9.3
Board Setup for the dsPIC30F3013 Sample Application
Device Programming
Observing the Sample Application
In-Circuit Debugging
Summary
BOARD SETUP FOR THE dsPIC30F3013 SAMPLE APPLICATION
The dsPICDEM 2 Development Board supports dsPIC30F devices that have multiple
peripheral devices multiplexed on some pins. Therefore, the jumper set up of various
headers depends on which of the dsPIC30F peripherals are used by the application.
This section demonstrates how the board is set up for the dsPIC30F3013 device to
support the dsPIC30F3013 example software in the dsPICDEM 2 Development Kit CD.
Follow these steps to configure the hardware on the dsPICDEM 2 Development Board
for the sample application.
1. Disconnect the power source.
2. Remove any dsPIC30Fxxxx device currently plugged into the dsPICDEM 2
Development Board.
3. Plug the dsPIC30F3013 into socket U1B1.
© 2005 Microchip Technology Inc.
DS51558A-page 57
dsPICDEM 2 Development Board User’s Guide
4. Configure the hardware components as shown in Table 9-1.
TABLE 9-1:
HARDWARE CONFIGURATION SETTINGS
Header
Component
No.
Socket U1B1
Jumper
Setting
Pin
Device Functions (see Figure 9-1)
Jumper JP1
JP1
Jumper
—
5 VDC jumper installed
Jumper JP2
JP2
Jumper
—
5 VDC jumper installed
Selector Switch
S2
Selector Switch
S3
GP 28 ON 17,18 PGC and PGD
OFF
—
Not used in this configuration
Selector Switch
S4
OFF
—
Not used in this configuration
PGM U3
H11
Open
—
No jumper connections
CAN Tx
H2
Open
—
—
CAN Rx
H2
Open
—
—
UART1 Tx*
H3
Open
—
—
UART1 Rx*
H3
Open
—
—
Alternate UART1 Tx* H4
GP ALL
11
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
Alternate UART1 Rx* H4
GP ALL
12
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
UART2 Tx*
H5
Open
—
—
UART2 Rx*
H5
Open
—
—
Temperature Sensor H10
GP ALL
5
AN3/CN5/RB3
Potentiometer
H13
GP ALL
4
AN2/SS1/LVDIN/CN4/RB2
Switch S5
H6
Open
Switch S6
H7
LED D3
H12
GP D3
2
EMUD3/AN0/VREF+/CN2/RB0
LED D4
H12
GP D4
3
EMUC3/AN1/VREF-/CN3/RB1
LCD - SPI™ Clock*
H1
GP 40/28 16
SCK1/INT0/RF6
LCD - SPI Data*
H1
GP 40/28 17
PGD/EMUD/U1TX/SDO1/SCL/RF3
*
—
GP 40/28 15
—
UMUC2/IC1/INT1/RD8
On this device, multiplexing of various peripherals on the pins does not allow the
simultaneous use of:
– Switch S5 and LCD.
– Primary UART1 pins and LCD.
Since only one DB-9 connector is provided for RS-232 communication, you can
select either UART1 (primary or alternate pins) or UART2, but not both.
5. Connect the RS-232 cable from the PC to the UART connector (J2).
6. Reapply power to the DC IN connector (J4). The PWR ON LED should illuminate.
7. Load the sample application program for the dsPIC30F3013 (see
Section 9.4 “Device Programming”).
DS51558A-page 58
© 2005 Microchip Technology Inc.
Using the dsPIC30F3013
9.4
DEVICE PROGRAMMING
Load the sample application program for the dsPIC30F3013 using this process:
1. Plug the RJ11 (telephone) cable from the MPLAB ICD 2 into the ICD header (J1).
Make sure the USB cable from the MPLAB ICD 2 is connected to your PC.
2. Start MPLAB IDE.
3. Open the dsPIC30F3013 sample project (File>Open Workspace) from
path/dsPICDEM 2 Development Kit/Example Software/30F3013/Demo.mcw.
Note:
For detailed information and procedures on using the MPLAB IDE and ICD
2, refer to Chapter 2 “Getting Started”.
4. Build the sample project in MPLAB IDE (Project>Build All).
5. On the dsPICDEM™ 2 board set all positions on switches S3 and S4 to off. Then
set switch S2 to GP 28. The MPLAB ICD 2 is now connected to the PGC and
PGD pins on the dsPIC30F3013.
6. Download the sample application (Programmer>Program). The Output window
(Figure 9-2) displays the status as the download occurs and indicates when the
programming has succeeded.
FIGURE 9-2:
PROGRAMMING THE dsPIC30F3013 DEVICE
7. Disconnect the MPLAB ICD 2 cable from the ICD header. The program is now
ready to run (see Section 9.5 “Observing the Sample Application”).
© 2005 Microchip Technology Inc.
DS51558A-page 59
dsPICDEM 2 Development Board User’s Guide
9.5
OBSERVING THE SAMPLE APPLICATION
1. Press RESET ALL. The program begins to run.
2. Set up a HyperTerminal session on the PC to run with these parameters:
Port Setting
Value
Bits per second
9600
Data bits
8
Parity
None
Stop bits
1
Flow control
None
As a shortcut, you can launch the Hyperterminal_RS232_dsPICDEM2.ht
file in the dsPICDEM 2 Development Kit/Example Software/30F3013
folder.
3. See information on LCD. Note that the HyperTerminal displays the same
information.
4. Adjust temperature and note LCD and HyperTerminal readings.
5. Adjust potentiometer and note LCD and HyperTerminal readings.
6. Observe the rate at which LEDs D3 and D4 blink.
7. Press S6 (INT1) and note the affect on D3 and D4.
DS51558A-page 60
© 2005 Microchip Technology Inc.
Using the dsPIC30F3013
9.6
IN-CIRCUIT DEBUGGING
The sample application program is intended to illustrate how the processor and I/O
modules handle the functionality provided on the dsPICDEM 2 Development Board.
The MPLAB ICD 2 In-Circuit Debugger was used to program the sample application
into the dsPIC30F device. You can also use the MPLAB ICD 2 In-Circuit Debugger to
examine this baseline code to determine specific applicability to your application.
The examination process requires that three changes be made to the sample
application setup.
• The dsPIC30F3013 device must be reprogrammed to recognize the MPLAB ICD
2 as a debugger rather than as a programmer.
• MPLAB IDE must be reconfigured to specify the pins on the dsPIC30F3013
device to be used for debugging.
• The dsPICDEM 2 board must be physically reconfigured to ensure that it connects
the MPLAB ICD 2 debugger to the pins on the dsPIC30F3013 device that were
specified in MPLAB IDE.
The primary programming and debugging functions (PGC/EMUC, PGD/EMUD) on the
dsPIC30F device are multiplexed with other peripheral modules on the device used by
the sample application. Thus it is necessary to use an alternate pair of debugging pins
(EMUC1/EMUD1, EMUC2/EMUD2 or EMUC3/EMUD3) to examine the baseline code
provided in the sample application.
9.6.1
Setting Up MPLAB ICD 2 for Debugging
To change MPLAB ICD 2 from a programmer to a debugger:
1. From the Debugger menu, click Select Tool>MPLAB ICD 2 to designate the
MPLAB ICD 2 as the debug tool in MPLAB IDE.
2. From the Configure menu, select Configuration Bits... The Configuration Bits
window displays the current configuration settings for the device, as shown in
Figure 9-3.
3. Change the “Comm Channel Select” parameter to Use EMUC2 and EMUD2.
4. On the dsPICDEM 2 board, change the setting on switch S3 to turn on EMUC2
and EMUD2 for GP 28.
5. Remove any jumpers on headers H6 and H7.
6. Reprogram the dsPIC30F device (Debugger>Program menu).
7. On the dsPICDEM 2 board, turn off GP 28 on switch S2.
8. Reset the program and run it. From the Debugger menu, select Reset>Processor
Reset. Then select Debugger>Run.
© 2005 Microchip Technology Inc.
DS51558A-page 61
dsPICDEM 2 Development Board User’s Guide
FIGURE 9-3:
9.6.2
CONFIGURATION BITS WINDOW
Examining the Code
After the application has been reprogrammed to use the MPLAB ICD 2 as a debugger,
you can use MPLAB IDE to run, halt and step the program. You can set breakpoints to
halt the program and examine the actual code at any point. You can also examine the
contents of the RAM and registers whenever the processor is halted.
Refer to Section 2.3 “Getting Started” for an overview of the sample application.
Flowcharts illustrate each of these processes:
•
•
•
•
Startup and initialization
Main loop processing
A/D conversion processing
External interrupt processing
The dsPICDEM 2 Development Kit/Example Software/30F3013 folder
contains fully annotated code files that you can examine, compare and copy.
9.7
SUMMARY
This chapter has provided specific instructions for using the dsPICDEM 2 Development
Board with a dsPIC30F3013 device. If you have reviewed this process, you should be
able to:
•
•
•
•
•
DS51558A-page 62
Configure the dsPICDEM 2 Development Board for the dsPIC30F3013 device.
Set up MPLAB IDE to use the MPLAB ICD 2 In-Circuit Debugger.
Locate the sample application for the dsPIC30F3013 device.
Program the chip with the MPLAB ICD 2.
Examine the sample application and identify applicable code for your embedded
solution.
© 2005 Microchip Technology Inc.
dsPICDEM™ 2
DEVELOPMENT BOARD
USER’S GUIDE
Chapter 10. Using the dsPIC30F3014
10.1
INTRODUCTION
This chapter assumes you have chosen the dsPIC30F3014 for your application. The
dsPICDEM 2 Development Board supports a dsPIC30F3014 device in a 40-pin PDIP
package, as shown in Figure 10-1. This device provides thirteen 12-bit A/D (100 ksps)
channels, two UARTs, an SPI module, an I2C module and 20 I/O pins. A sample application program provides a software baseline for building your own embedded solution.
U1A1
10.2
18-PIN PDIP dsPIC30F3014
MCLR
AN0/VREF+/CN2/RB0
AN1/VREF-/CN3/RB1
AN2/SS1/LVDIN/CN4/RB2
AN3/CN5/RB3
AN4/CN6/RB4
AN5/CN7/RB5
PGC/EMUC/AN6/OCFA/RB6
PGD/EMUD/AN7/RB7
AN8/RB8
VDD
Vss
OSC1/CLKIN
OSC2/CLKO/RC15
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
INT0/RA11
IC2/INT2/RD9
RD3
Vss
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
dsPIC30F3014
FIGURE 10-1:
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
AVDD
AVss
AN9/RB9
AN10/RB10
AN11/RB11
AN12/RB12
EMUC2/OC1/RD0
EMUD2/OC2/RD1
VDD
Vss
RF0
RF1
U2RX/CN17/RF4
U2TX/CN18/RF5
U1RX/SDI1/SDA/RF2
EMUC3/U1TX/SDO1/SCL/RF3
EMUC3/SCK1/RF6
IC1/INT1/RD8
RD2
VDD
HIGHLIGHTS
This chapter discusses:
•
•
•
•
•
10.3
Board Setup for the dsPIC30F3014 Sample Application
Device Programming
Observing the Sample Application
In-Circuit Debugging
Summary
BOARD SETUP FOR THE dsPIC30F3014 SAMPLE APPLICATION
The dsPICDEM 2 Development Board supports dsPIC30F devices that have multiple
peripheral devices multiplexed on some pins. Therefore, the jumper set up of various
headers depends on which of the dsPIC30F peripherals are used by the application.
This section demonstrates how the board is set up for the dsPIC30F3014 device to
support the dsPIC30F3014 example software in the dsPICDEM 2 Development Kit CD.
Follow these steps to configure the hardware on the dsPICDEM 2 Development Board
for the sample application.
1. Disconnect the power source.
© 2005 Microchip Technology Inc.
DS51558A-page 63
dsPICDEM 2 Development Board User’s Guide
2. Remove any dsPIC30Fxxxx device currently plugged into the dsPICDEM 2
Development Board.
3. Plug the dsPIC30F3014 into socket U1A1.
4. Configure the hardware components as shown in Table 10-1.
TABLE 10-1:
HARDWARE CONFIGURATION SETTINGS
Header
Component
No.
Socket U1A1
Jumper
Setting
Pin
Device Functions (see Figure 10-1)
Jumper JP1
JP1
Jumper
—
5 VDC jumper installed
Jumper JP2
JP2
Jumper
—
5 VDC jumper installed
Selector Switch
S2
GP 40 ON
8-9
PGC and PGD
Selector Switch
S3
OFF
—
Not used in this configuration
Selector Switch
S4
OFF
—
Not used in this configuration
PGM U3
H11
Open
—
—
CAN Tx
H2
Open
—
—
CAN Rx
H2
Open
—
—
UART1 Tx*
H3
Open
—
—
UART1 Rx*
H3
Open
—
Alternate UART1 Tx* H4
GP ALL
15
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
—
Alternate UART1 Rx* H4
GP ALL
16
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
UART2 Tx*
H5
Open
—
—
UART2 Rx*
H5
Open
—
—
Temperature Sensor H10
GP ALL
5
AN3/CN5/RB3
Potentiometer
H13
GP ALL
4
AN2/SS1/LVDIN/CN4/RB2
Switch S5
H6
GP 40/28
17
INT0/RA11
Switch S6
H7
GP 40
23
IC1/INT1/RD8
LED D3
H12
GP D3
2
AN0/VREF+/CN2/RB0
LED D4
H12
GP D4
3
AN1/VREF-/CN3/RB1
LCD - SPI™ Clock*
H1
GP 40/28
24
EMUC3/SCK1/RF6
LCD - SPI Data*
H1
GP 40/28
25
EMUC3/U1TX/SDO1/SCL/RF3
*
Since only one DB-9 connector is provided for RS-232 communication, you can
select either UART1 (primary or alternate pins) or UART2, but not both.
5. Connect the RS-232 cable from the PC to the UART connector (J2).
6. Reapply power to the DC IN connector (J4). The PWR ON LED should illuminate.
7. Load the sample application program for the dsPIC30F3014 (see
Section 10.4 “Device Programming”).
DS51558A-page 64
© 2005 Microchip Technology Inc.
Using the dsPIC30F3014
10.4
DEVICE PROGRAMMING
Load the sample application program for the dsPIC30F3014 using this process:
1. Plug the RJ11 (telephone) cable from the MPLAB ICD 2 into the ICD header (J1).
Make sure the USB cable from the MPLAB ICD 2 is connected to your PC.
2. Start MPLAB IDE.
3. Open the dsPIC30F3014 sample project (File>Open Workspace) from
path/dsPICDEM 2 Development Kit/Example Software/30F3014/Demo.mcw.
Note:
For detailed information and procedures on using the MPLAB IDE and ICD
2, refer to Chapter 2 “Getting Started”.
4. Build the sample project in MPLAB IDE (Project>Build All).
5. On the dsPICDEM™ 2 board set all positions on switches S3 and S4 to off. Then
set switch S2 to GP 40. The MPLAB ICD 2 is now connected to the PGC and
PGD pins on the dsPIC30F3014.
6. Download the sample application (Programmer>Program). The Output window
(Figure 10-2) displays the status as the download occurs and indicates when the
programming has succeeded.
FIGURE 10-2:
PROGRAMMING THE dsPIC30F3014 DEVICE
7. Disconnect the MPLAB ICD 2 cable from the ICD header. The program is now
ready to run (see Section 10.5 “Observing the Sample Application”).
© 2005 Microchip Technology Inc.
DS51558A-page 65
dsPICDEM 2 Development Board User’s Guide
10.5
OBSERVING THE SAMPLE APPLICATION
1. Press RESET ALL. The program begins to run.
2. Set up a HyperTerminal session on the PC to run with these parameters:
Port Setting
Value
Bits per second
9600
Data bits
8
Parity
None
Stop bits
1
Flow control
None
As a shortcut, you can launch the Hyperterminal_RS232_dsPICDEM2.ht
file in the dsPICDEM 2 Development Kit/Example Software/30F3014
folder.
3. See information on LCD. Note that the HyperTerminal displays the same
information.
4. Adjust temperature and note LCD and HyperTerminal readings.
5. Adjust potentiometer and note LCD and HyperTerminal readings.
6. Observe the rate at which LEDs D3 and D4 blink.
7. Press S5 (INT0) and note the affect on D3 and D4.
8. Press S6 (INT1) and note the affect on D3 and D4.
DS51558A-page 66
© 2005 Microchip Technology Inc.
Using the dsPIC30F3014
10.6
IN-CIRCUIT DEBUGGING
The sample application program is intended to illustrate how the processor and
peripheral modules handle the functionality provided on the dsPICDEM 2 Development
Board. The MPLAB ICD 2 In-Circuit Debugger was used to program the sample
application into the dsPIC30F device. You can also use the MPLAB ICD 2 In-Circuit
Debugger to examine this baseline code to determine specific applicability to your
application.
The examination process requires that the dsPIC30F3014 device be reprogrammed to
recognize the MPLAB ICD 2 debugger rather than a programmer.
10.6.1
Setting Up MPLAB ICD 2 for Debugging
To change MPLAB ICD 2 from a programmer to a debugger:
1. From the Debugger menu, click Select Tool>MPLAB ICD 2 to designate the
MPLAB ICD 2 as the debug tool in MPLAB IDE.
2. Reprogram the dsPIC30F device (Debugger>Program menu).
3. Reset the program and run it. From the Debugger menu, select Reset>Processor
Reset. Then select Debugger>Run.
Figure 10-3 shows the configuration bits for this set up.
FIGURE 10-3:
10.6.2
CONFIGURATION BITS WINDOW
Examining the Code
After the application has been reprogrammed to use the MPLAB ICD 2 as a debugger,
you can use MPLAB IDE to run, halt and step the program. You can set breakpoints to
halt the program and examine the actual code at any point. You can also examine the
contents of the RAM and registers whenever the processor is halted.
Refer to Section 2.3 “Getting Started” for an overview of the sample application.
Flowcharts illustrate each of these processes:
•
•
•
•
Startup and initialization
Main loop processing
A/D conversion processing
External interrupt processing
The dsPICDEM 2 Development Kit/Example Software/30F3014 folder
contains fully annotated code files that you can examine, compare and copy.
© 2005 Microchip Technology Inc.
DS51558A-page 67
dsPICDEM 2 Development Board User’s Guide
10.7
SUMMARY
This chapter has provided specific instructions for using the dsPICDEM 2 Development
Board with a dsPIC30F3014 device. If you have reviewed this process, you should be
able to:
•
•
•
•
•
DS51558A-page 68
Configure the dsPICDEM 2 Development Board for the dsPIC30F3014 device.
Set up MPLAB IDE to use the MPLAB ICD 2 In-Circuit Debugger.
Locate the sample application for the dsPIC30F2010 device.
Program the chip with the MPLAB ICD 2.
Examine the sample application and identify applicable code for your embedded
solution.
© 2005 Microchip Technology Inc.
dsPICDEM™ 2
DEVELOPMENT BOARD
USER’S GUIDE
Chapter 11. Using the dsPIC30F4011
11.1
INTRODUCTION
This chapter assumes you have chosen the dsPIC30F4011 for your application. The
dsPICDEM 2 Development Board supports a dsPIC30F4011 device in a 40-pin PDIP
package, as shown in Figure 11-1. This device provides nine 10-bit A/D (500 ksps)
channels, two UARTs, an SPI module, an I2C module, a CAN module and 30 I/O pins.
A sample application program provides a software baseline for building your own
embedded solution.
U2A1
11.2
40-PIN PDIP dsPIC30F4011
MCLR
EMUD3/AN0/VREF+/CN2/RB0
EMUC3/AN1/VREF-/CN3/RB1
AN2/SS1/CN4/RB2
AN3/INDX/CN5/RB3
AN4/QEA/IC7/CN6/RB4
AN5/QEB/IC8/CN7/RB5
AN6/OCFA/RB6
AN7/RB7
AN8/RB8
VDD
VSS
OSC1/CLKIN
OSC2/CLKO/RC15
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
FLTA/INT0/RE8
EMUD2/OC2/IC2/INT2/RD1
OC4/RD3
VSS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
dsPIC30F4011
FIGURE 11-1:
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
AVDD
AVSS
PWM1L/RE0
PWM1H/RE1
PWM2L/RE2
PWM2H/RE3
PWM3L/RE4
PWM3H/RE5
VDD
VSS
C1RX/RF0
C1TX/RF1
U2RX/CN17/RF4
U2TX/CN18/RF5
PGC/EMUC/U1RX/SDI1/SDA/RF2
PGD/EMUD/U1TX/SDO1/SCL/RF3
SCK1/RF6
EMUC2/OC1/IC1/INT1/RD0
OC3/RD2
VDD
HIGHLIGHTS
This chapter discusses:
•
•
•
•
•
11.3
Board Setup for the dsPIC30F4011 Sample Application
Device Programming
Observing the Sample Application
In-Circuit Debugging
Summary
BOARD SETUP FOR THE dsPIC30F4011 SAMPLE APPLICATION
The dsPICDEM 2 Development Board supports dsPIC30F devices that have multiple
peripheral devices multiplexed on some pins. Therefore, the jumper set up of various
headers depends on which of the dsPIC30F peripherals are used by the application.
This section demonstrates how the board is set up for the dsPIC30F4011device to
support the dsPIC30F4011 example software in the dsPICDEM 2 Development Kit CD.
Follow these steps to configure the hardware on the dsPICDEM 2 Development Board
for the sample application.
© 2005 Microchip Technology Inc.
DS51558A-page 69
dsPICDEM 2 Development Board User’s Guide
1. Disconnect the power source.
2. Remove any dsPIC30Fxxxx device currently plugged into the dsPICDEM 2
Development Board.
3. Plug the dsPIC30F4011 into socket U2A1.
4. Configure the hardware components as shown in Table 11-1.
TABLE 11-1:
dsPIC30F4011 CONFIGURATION SETTINGS
Header
Socket U2A1
Component
No.
Jumper JP1
JP1
Setting
Pin
Device Functions (see Figure 11-1)
Jumper
—
5 VDC jumper installed
—
5 VDC jumper installed
Jumper JP2
JP2
Jumper
Selector Switch
S2
M ALL ON 25,26 PGC and PGD
Selector Switch
S3
OFF
—
Not used in this configuration
Selector Switch
S4
OFF
—
Not used in this configuration
PGM U3
H11
Open
—
—
CAN Tx
H2
Open
—
—
CAN Rx
H2
Open
—
—
UART1 Tx*
H3
Open
—
—
UART1 Rx*
H3
Open
—
Alternate UART1 Tx* H4
M ALL
—
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
—
Alternate UART1 Rx* H4
M ALL
—
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
UART2 Tx*
H5
Open
—
—
UART2 Rx*
H5
Open
—
Temperature Sensor H10
M ALL
5
AN3/INDX/CN5/RB3
Potentiometer
H13
M ALL
4
AN2/SS1/CN4/RB2
Switch S5
H6
M ALL
17
FLTA/INT0/SCK1/OCFA/RE8
Switch S6
H7
M ALL
23
EMUC2/OC1/IC1/INT1/RD0
LED D3
H12
M D3
2
EMUD3/AN0/VREF+/CN2/RB0
LED D4
H12
M D4
3
EMUC3/AN1/VREF-/CN3/RB1
LCD - SPI™ Clock*
H1
M40
24
FLTA/INT0/SCK1/OCFA/RE8
LCD - SPI Data*
H1
M40
25
PGD/EMUD/U1TX/SDO1/SCL/RF3
*
—
On this device, multiplexing of various peripherals on the pins does not allow the
simultaneous use of:
– Switch S5 and LCD.
– Primary UART1 pins and LCD.
Since only one DB-9 connector is provided for RS-232 communication, you can
select either UART1 (primary or alternate pins) or UART2, but not both.
5. Connect the RS-232 cable from the PC to the UART connector (J2).
6. Reapply power to the DC IN connector (J4). The PWR ON LED should illuminate.
7. Load the sample application program for the dsPIC30F4011 (see
Section 11.4 “Device Programming”).
DS51558A-page 70
© 2005 Microchip Technology Inc.
Using the dsPIC30F4011
11.4
DEVICE PROGRAMMING
Load the sample application program for the dsPIC30F4011 using this process:
1. Plug the RJ11 cable from the MPLAB ICD 2 into the ICD header (J1). Make sure
the USB cable from the MPLAB ICD 2 is connected to your PC.
2. Start MPLAB IDE.
3. Open the dsPIC30F4011 sample project (File>Open Workspace) from
path\dsPICDEM2 Development Kit\Example Software\30F4011\Demo.mcw
Note:
For detailed information and procedures on using the MPLAB IDE and ICD
2 refer to Chapter 2 “Getting Started”.
4. Build the sample project in MPLAB IDE (Project>Build All).
5. Program the dsPIC30F4011 (Programmer>Program). The Output window
(Figure 11-2) displays the status as the download occurs and indicates when the
programming has succeeded.
FIGURE 11-2:
PROGRAMMING THE dsPIC30F4011 DEVICE
6. Disconnect the MPLAB ICD 2 cable from the ICD header. The program is now
ready to run (see Section 11.5 “Observing the Sample Application”).
© 2005 Microchip Technology Inc.
DS51558A-page 71
dsPICDEM 2 Development Board User’s Guide
11.5
OBSERVING THE SAMPLE APPLICATION
1. Press RESET ALL. The program begins to run.
2. Set up a HyperTerminal session on the PC to run with these parameters:
Port Setting
Value
Bits per second
9600
Data bits
8
Parity
None
Stop bits
1
Flow control
None
As a shortcut, you can launch the Hyperterminal_RS232_dsPICDEM2.ht
file in the dsPICDEM 2 Development Kit/Example Software/30F2010
folder.
3. See information on LCD. Note that the HyperTerminal displays the same
information.
4. Adjust temperature and note LCD and HyperTerminal readings.
5. Adjust potentiometer and note LCD and HyperTerminal readings.
6. Observe the rate at which LEDs D3 and D4 blink.
7. Press S5 (INT0) and note the affect on D3 and D4.
8. Press S6 (INT1) and note the affect on D3 and D4.
DS51558A-page 72
© 2005 Microchip Technology Inc.
Using the dsPIC30F4011
11.6
IN-CIRCUIT DEBUGGING
The sample application program is intended to illustrate how the processor and I/O
modules handle the functionality provided on the dsPICDEM 2 Development Board.
The MPLAB ICD 2 In-Circuit Debugger was used to program the sample application
into the dsPIC30F device. You can also use the MPLAB ICD 2 In-Circuit Debugger to
examine this baseline code to determine specific applicability to your application.
The examination process requires that three changes be made to the sample application setup.
• The dsPIC30F4011 device must be reprogrammed to recognize the MPLAB ICD
2 as a debugger rather than as a programmer.
• MPLAB IDE must be reconfigured to specify the pins on the dsPIC30F4011
device to be used for debugging.
• The dsPICDEM 2 board must be physically reconfigured to ensure that it connects
the MPLAB ICD 2 debugger to the pins on the dsPIC30F4011 device that were
specified in MPLAB IDE.
The primary programming and debugging functions (PGC/EMUC, PGD/EMUD) on the
dsPIC30F device are multiplexed with other peripheral modules on the device used by
the sample application. Thus it is necessary to use an alternate pair of debugging pins
(EMUC1/EMUD1, EMUC2/EMUD2 or EMUC3/EMUD3) to examine the baseline code
provided in the sample application.
11.6.1
Setting Up MPLAB ICD 2 for Debugging
To change MPLAB ICD 2 from a programmer to a debugger:
1. From the Debugger menu, click Select Tool>MPLAB ICD 2 to designate the
MPLAB ICD 2 as the debug tool in MPLAB IDE.
2. From the Configure menu, select Configuration Bits... The Configuration Bits
window displays the current configuration settings for the device, as shown in
Figure 11-3.
3. Change the “Comm Channel Select” parameter to Use EMUC2 and EMUD2.
4. On the dsPICDEM 2 board, change the setting on switch S3 to turn on EMUC2
and EMUD2.
5. Remove any jumper on header H7.
6. Reprogram the dsPIC30F device (Debugger>Program menu).
7. On the dsPICDEM 2 board, turn off M ALL on switch S2.
8. Reset the program and run it. From the Debugger menu, select Reset>Processor
Reset. Then select Debugger>Run.
© 2005 Microchip Technology Inc.
DS51558A-page 73
dsPICDEM 2 Development Board User’s Guide
FIGURE 11-3:
11.6.2
CONFIGURATION BITS WINDOW
Examining the Code
After the application has been reprogrammed to use the MPLAB ICD 2 as a debugger,
you can use MPLAB IDE to run, halt and step the program. You can set breakpoints to
halt the program and examine the actual code at any point. You can also examine the
contents of the RAM and registers whenever the processor is halted.
Refer to Section 2.3 “Getting Started” for an overview of the sample application.
Flowcharts illustrate each of these processes:
•
•
•
•
Startup and initialization
Main loop processing
A/D conversion processing
External interrupt processing
The dsPICDEM 2 Development Kit/Example Software/30F4011 folder contains fully annotated code files that you can examine, compare and copy.
11.7
SUMMARY
This chapter has provided specific instructions for using the dsPICDEM 2 Development
Board with a dsPIC30F4011 device. If you have reviewed this process, you should be
able to:
•
•
•
•
•
DS51558A-page 74
Configure the dsPICDEM 2 Development Board for the dsPIC30F4011 device.
Set up MPLAB IDE to use the MPLAB ICD 2 In-Circuit Debugger.
Locate the sample application for the dsPIC30F4011 device.
Program the chip with the MPLAB ICD 2.
Examine the sample application and identify applicable code for your embedded
solution.
© 2005 Microchip Technology Inc.
dsPICDEM™ 2
DEVELOPMENT BOARD
USER’S GUIDE
Chapter 12. Using the dsPIC30F4012
12.1
INTRODUCTION
This chapter assumes you have chosen the dsPIC30F4012 for your application. The
dsPICDEM 2 Development Board supports a dsPIC30F4012 device in a 40-pin PDIP
package, as shown in Figure 12-1. This device provides six 10-bit A/D (500 ksps)
channels, a UART, an SPI module, an I2C module, a CAN module and 20 I/O pins. A
sample application program provides a software baseline for building your own
embedded solution.
U2B1
12.2
28-PIN PDIP dsPIC30F4012
MCLR
EMUD3/AN0/VREF+/CN2/RB0
EMUC3/AN1/VREF-/CN3/RB1
AN2/SS1/CN4/RB2
AN3/INDX/CN5/RB3
AN4/QEA/IC7/CN6/RB4
AN5/QEB/IC8/CN7/RB5
VSS
OSC1/CLKIN
OSC2/CLKO/RC15
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
VDD
EMUD2/OC2/IC2/INT2/RD1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
dsPIC30F4012
FIGURE 12-1:
28
27
26
25
24
23
22
21
20
19
18
17
16
15
AVDD
AVSS
PWM1L/RE0
PWM1H/RE1
PWM2L/RE2
PWM2H/RE3
PWM3L/RE4
PWM3H/RE5
VDD
VSS
PGC/EMUC/U1RX/SDI1/SDA/C1RX/RF2
PGD/EMUD/U1TX/SDO1/SCL/C1TX/RF3
FLTA/INT0/SCK1/OCFA/RE8
EMUC2/OC1/IC1/INT1/RD0
HIGHLIGHTS
This chapter discusses:
•
•
•
•
•
12.3
Board Setup for the dsPIC30F4012 Sample Application
Device Programming
Observing the Sample Application
In-Circuit Debugging
Summary
BOARD SETUP FOR THE dsPIC30F4012 SAMPLE APPLICATION
The dsPICDEM 2 Development Board supports dsPIC30F devices that have multiple
peripheral devices multiplexed on some pins. Therefore, the jumper set up of various
headers depends on which of the dsPIC30F peripherals are used by the application.
This section demonstrates how the board is set up for the dsPIC30F4012 device to
support the dsPIC30F4012 example software in the dsPICDEM 2 Development Kit CD.
Follow these steps to configure the hardware on the dsPICDEM 2 Development Board
for the sample application.
1. Disconnect the power source.
© 2005 Microchip Technology Inc.
DS51558A-page 75
dsPICDEM 2 Development Board User’s Guide
2. Remove any dsPIC30Fxxxx device currently plugged into the dsPICDEM 2
Development Board.
3. Plug the dsPIC30F4012 into socket U2B1.
4. Configure the hardware components as shown in Table 12-1.
TABLE 12-1:
HARDWARE CONFIGURATION SETTINGS
Header
Component
No.
Socket U2B1
Jumper
Setting
Pin
Device Functions (see Figure 12-1)
Jumper JP1
JP1
Jumper
—
5 VDC jumper installed
Jumper JP2
JP2
Jumper
—
5 VDC jumper installed
Selector Switch
S2
Selector Switch
S3
M ALL ON 17,18 PGC and PGD
OFF
—
Not used in this configuration
Selector Switch
S4
OFF
—
Not used in this configuration
PGM U3
H11
Open
—
—
CAN Tx
H2
Open
—
—
CAN Rx
H2
Open
—
—
UART1 Tx*
H3
Open
—
—
UART1 Rx*
H3
Open
—
Alternate UART1 Tx* H4
M ALL
11
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
—
Alternate UART1 Rx* H4
M ALL
12
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
UART2 Tx*
H5
Open
—
—
UART2 Rx*
H5
Open
—
—
Temperature Sensor H10
M ALL
5
AN3/INDX/CN5/RB3
Potentiometer
H13
M ALL
4
AN2/SS1/CN4/RB2
Switch S5
H6
M ALL
16
FLTA/INT0/SCK1/OCFA/RE8
Switch S6
H7
M ALL
15
EMUC2/OC1/IC1/INT1/RD0
LED D3
H12
M D3
2
EMUD3/AN0/VREF+/CN2/RB0
H12
M D4
3
EMUC3/AN1/VREF-/CN3/RB1
H1
M28
16
FLTA/INT0/SCK1/OCFA/RE8
H1
M28
17
PGD/EMUD/U1TX/SDO1/SCL/RF3
LED D4
LCD - SPI™ Clock
LCD - SPI Data
*
*
*
On this device, multiplexing of various peripherals on the pins does not allow the
simultaneous use of:
– Switch S5 and LCD.
– Primary UART1 pins and LCD.
Since only one DB-9 connector is provided for RS-232 communication, you can
select either UART1 (primary or alternate pins) or UART2, but not both.
5. Connect the RS-232 cable from the PC to the UART connector (J2).
6. Reapply power to the DC IN connector (J4). The PWR ON LED should illuminate.
7. Load the sample application program for the dsPIC30F4012 (see
Section 12.4 “Device Programming”).
DS51558A-page 76
© 2005 Microchip Technology Inc.
Using the dsPIC30F4012
12.4
DEVICE PROGRAMMING
Load the sample application program for the dsPIC30F4012 using this process:
1. Plug the RJ11 (telephone) cable from the MPLAB ICD 2 into the ICD header (J1).
Make sure the USB cable from the MPLAB ICD 2 is connected to your PC.
2. Start MPLAB IDE.
3. Open the dsPIC30F4012 sample project (File>Open Workspace) from
path/dsPICDEM 2 Development Kit/Example Software/30F4012/Demo.mcw
Note:
For detailed information and procedures on using the MPLAB IDE and ICD
2, refer to Chapter 2 “Getting Started”.
4. Build the sample project in MPLAB IDE (Project>Build All).
5. On the dsPICDEM™ 2 board set all positions on switches S3 and S4 to off. Then
set switch S2 to M ALL. The MPLAB ICD 2 is now connected to the PGC and
PGD pins on the dsPIC30F4012.
6. Download the sample application (Programmer>Program). The Output window
(Figure 12-2) displays the status as the download occurs and indicates when the
programming has succeeded.
FIGURE 12-2:
PROGRAMMING THE dsPIC30F4012 DEVICE
7. Disconnect the MPLAB ICD 2 cable from the ICD header. The program is now
ready to run (see Section 12.5 “Observing the Sample Application”).
© 2005 Microchip Technology Inc.
DS51558A-page 77
dsPICDEM 2 Development Board User’s Guide
12.5
OBSERVING THE SAMPLE APPLICATION
1. Press RESET ALL. The program begins to run.
2. Set up a HyperTerminal session on the PC to run with these parameters:
Port Setting
Value
Bits per second
9600
Data bits
8
Parity
None
Stop bits
1
Flow control
None
As a shortcut, you can launch the Hyperterminal_RS232_dsPICDEM2.ht
file in the dsPICDEM 2 Development Kit/Example Software/30F4012
folder.
3. See information on LCD. Note that the HyperTerminal displays the same
information.
4. Adjust temperature and note LCD and HyperTerminal readings.
5. Adjust potentiometer and note LCD and HyperTerminal readings.
6. Observe the rate at which LEDs D3 and D4 blink.
7. Press S6 (INT1) and note the affect on D3 and D4.
DS51558A-page 78
© 2005 Microchip Technology Inc.
Using the dsPIC30F4012
12.6
IN-CIRCUIT DEBUGGING
The sample application program is intended to illustrate how the processor and I/O
modules handle the functionality provided on the dsPICDEM 2 Development Board.
The MPLAB ICD 2 In-Circuit Debugger was used to program the sample application
into the dsPIC30F device. You can also use the MPLAB ICD 2 In-Circuit Debugger to
examine this baseline code to determine specific applicability to your application.
The examination process requires that three changes be made to the sample
application setup.
• The dsPIC30F4012 device must be reprogrammed to recognize the MPLAB ICD
2 as a debugger rather than as a programmer.
• MPLAB IDE must be reconfigured to specify the pins on the dsPIC30F4012
device to be used for debugging.
• The dsPICDEM 2 board must be physically reconfigured to ensure that it connects
the MPLAB ICD 2 debugger to the pins on the dsPIC30F4012 device that were
specified in MPLAB IDE.
The primary programming and debugging functions (PGC/EMUC, PGD/EMUD) on the
dsPIC30F device are multiplexed with other peripheral modules on the device used by
the sample application. Thus it is necessary to use an alternate pair of debugging pins
(EMUC1/EMUD1, EMUC2/EMUD2 or EMUC3/EMUD3) to examine the baseline code
provided in the sample application.
12.6.1
Setting Up MPLAB ICD 2 for Debugging
To change MPLAB ICD 2 from a programmer to a debugger:
1. From the Debugger menu, click Select Tool>MPLAB ICD 2 to designate the
MPLAB ICD 2 as the debug tool in MPLAB IDE.
2. From the Configure menu, select Configuration Bits... The Configuration Bits
window displays the current configuration settings for the device, as shown in
Figure 12-3.
3. Change the “Comm Channel Select” parameter to Use EMUC2 and EMUD2.
4. On the dsPICDEM 2 board, change the setting on switch S3 to turn on EMUC2
and EMUD2.
5. Remove any jumpers on headers H6 and H7.
6. Reprogram the dsPIC30F device (Debugger>Program menu).
7. On the dsPICDEM 2 board, turn off M ALL on switch S2.
8. Reset the program and run it. From the Debugger menu, select Reset>Processor
Reset. Then select Debugger>Run.
© 2005 Microchip Technology Inc.
DS51558A-page 79
dsPICDEM 2 Development Board User’s Guide
FIGURE 12-3:
12.6.2
CONFIGURATION BITS WINDOW
Examining the Code
After the application has been reprogrammed to use the MPLAB ICD 2 as a debugger,
you can use MPLAB IDE to run, halt and step the program. You can set breakpoints to
halt the program and examine the actual code at any point. You can also examine the
contents of the RAM and registers whenever the processor is halted.
Refer to Section 2.3 “Getting Started” for an overview of the sample application.
Flowcharts illustrate each of these processes:
•
•
•
•
Startup and initialization
Main loop processing
A/D conversion processing
External interrupt processing
The dsPICDEM 2 Development Kit/Example Software/30F4012 folder contains fully annotated code files that you can examine, compare and copy.
12.7
SUMMARY
This chapter has provided specific instructions for using the dsPICDEM 2 Development
Board with a dsPIC30F4012 device. If you have reviewed this process, you should be
able to:
•
•
•
•
•
DS51558A-page 80
Configure the dsPICDEM 2 Development Board for the dsPIC30F4012 device.
Set up MPLAB IDE to use the MPLAB ICD 2 In-Circuit Debugger.
Locate the sample application for the dsPIC30F4012 device.
Program the chip with the MPLAB ICD 2.
Examine the sample application and identify applicable code for your embedded
solution.
© 2005 Microchip Technology Inc.
dsPICDEM™ 2
DEVELOPMENT BOARD
USER’S GUIDE
Chapter 13. Using the dsPIC30F4013
13.1
INTRODUCTION
This chapter assumes you have chosen the dsPIC30F4013 for your application. The
dsPICDEM 2 Development Board supports a dsPIC30F4013 device in a 40-pin PDIP
package, as shown in Figure 13-1. This device provides thirteen 12-bit A/D (100 ksps)
channels, two UARTs, an SPI module, an I2C module, a CAN module and 30 I/O pins.
A sample application program provides a software baseline for building your own
embedded solution.
U1A1
13.2
40-PIN PDIP dsPIC30F4013
MCLR
AN0/VREF+/CN2/RB0
AN1/VREF-/CN3/RB1
AN2/SS1/LVDIN/CN4/RB2
AN3/CN5/RB3
AN4/IC7/CN6/RB4
AN5/IC8/CN7/RB5
PGC/EMUC/AN6/OCFA/RB6
PGD/EMUD/AN7/RB7
AN8/RB8
VDD
VSS
OSC1/CLKI
OSC2/CLKO/RC15
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
INT0/RA11
IC2/INT2/RD9
OC4/RD3
VSS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
dsPIC30F4013
FIGURE 13-1:
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
AVDD
AVSS
AN9/CSCK/RB9
AN10/CSDI/RB10
AN11/CSDO/RB11
AN12/COFS/RB12
EMUC2/OC1/RD0
EMUD2/OC2/RD1
VDD
VSS
C1RX/RF0
C1TX/RF1
U2RX/CN17/RF4
U2TX/CN18/RF5
U1RX/SDI1/SDA/RF2
EMUD3/U1TX/SDO1/SCL/RF3
EMUC3/SCK1/RF6
IC1/INT1/RD8
OC3/RD2
VDD
HIGHLIGHTS
This chapter discusses:
•
•
•
•
•
13.3
Board Setup for the dsPIC30F4013 Sample Application
Device Programming
Observing the Sample Application
In-Circuit Debugging
Summary
BOARD SETUP FOR THE dsPIC30F4013 SAMPLE APPLICATION
The dsPICDEM 2 Development Board supports dsPIC30F devices that have multiple
peripheral devices multiplexed on some pins. Therefore, the jumper set up of various
headers depends on which of the dsPIC30F peripherals are used by the application.
This section demonstrates how the board is set up for the dsPIC30F4013 device to
support the dsPIC30F4013 example software in the dsPICDEM 2 Development Kit CD.
Follow these steps to configure the hardware on the dsPICDEM 2 Development Board
for the sample application.
© 2005 Microchip Technology Inc.
DS51558A-page 81
dsPICDEM 2 Development Board User’s Guide
1. Disconnect the power source.
2. Remove any dsPIC30Fxxxx device currently plugged into the dsPICDEM 2
Development Board.
3. Plug the dsPIC30F4013 into socket U1A1.
4. Configure the hardware components as shown in Table 13-1.
TABLE 13-1:
HARDWARE CONFIGURATION SETTINGS
Header
Component
No.
Socket U1A1
Jumper
Setting
Pin
Device Functions (see Figure 13-1)
Jumper JP1
JP1
Jumper
—
5 VDC jumper installed
Jumper JP2
JP2
Jumper
—
5 VDC jumper installed
Selector Switch
S2
GP 40 ON
8-9
PGC and PGD
Selector Switch
S3
OFF
—
Not used in this configuration
Not used in this configuration
Selector Switch
S4
OFF
—
PGM U3
H11
Open
—
—
CAN Tx
H2
GP ALL
—
—
CAN Rx
H2
GP ALL
—
—
UART1 Tx*
H3
Open
—
—
UART1 Rx*
H3
Open
—
—
Alternate UART1 Tx* H4
GP ALL
15
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
Alternate UART1 Rx* H4
GP ALL
16
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
UART2 Tx*
H5
Open
—
—
UART2 Rx*
H5
Open
—
—
Temperature Sensor H10
GP ALL
5
AN3/CN5/RB3
Potentiometer
H13
GP ALL
4
AN2/SS1/LVDIN/CN4/RB2
Switch S5
H6
GP 40/28
17
INT0/RA11
Switch S6
H7
GP 40
23
IC1/INT1/RD8
LED D3
H12
GP D3
2
AN0/VREF+/CN2/RB0
LED D4
H12
GP D4
3
AN1/VREF-/CN3/RB1
LCD - SPI™ Clock*
H1
GP 40/28
24
EMUC3/SCK1/RF6
LCD - SPI Data*
H1
GP 40/28
25
EMUD3/U1TX/SDO1/SCL/RF3
*
Since only one DB-9 connector is provided for RS-232 communication, you can
select either UART1 (primary or alternate pins) or UART2, but not both.
5. Connect the RS-232 cable from the PC to the UART connector (J2).
6. Reapply power to the DC IN connector (J4). The PWR ON LED should illuminate.
7. Load the sample application program for the dsPIC30F4013 (see
Section 13.4 “Device Programming”).
DS51558A-page 82
© 2005 Microchip Technology Inc.
Using the dsPIC30F4013
13.4
DEVICE PROGRAMMING
Load the sample application program for the dsPIC30F4013 using this process:
1. Plug the RJ11 (telephone) cable from the MPLAB ICD 2 into the ICD header (J1).
Make sure the USB cable from the MPLAB ICD 2 is connected to your PC.
2. Start MPLAB IDE.
3. Open the dsPIC30F4013 sample project (File>Open Workspace) from
path/dsPICDEM 2 Development Kit/Example Software/30F4013/Demo.mcw.
Note:
For detailed information and procedures on using the MPLAB IDE and ICD
2, refer to Chapter 2 “Getting Started”.
4. Build the sample project in MPLAB IDE (Project>Build All).
5. On the dsPICDEM™ 2 board set all positions on switches S3 and S4 to off. Then
set switch S2 to GP 40. The MPLAB ICD 2 is now connected to the PGC and
PGD pins on the dsPIC30F4013.
6. Download the sample application (Programmer>Program). The Output window
(Figure 13-2) displays the status as the download occurs and indicates when the
programming has succeeded.
FIGURE 13-2:
PROGRAMMING THE dsPIC30F4013 DEVICE
7. Disconnect the MPLAB ICD 2 cable from the ICD header. The program is now
ready to run (see Section 13.5 “Observing the Sample Application”).
© 2005 Microchip Technology Inc.
DS51558A-page 83
dsPICDEM 2 Development Board User’s Guide
13.5
OBSERVING THE SAMPLE APPLICATION
1. Press RESET ALL. The program begins to run.
2. Set up a HyperTerminal session on the PC to run with these parameters:
Port Setting
Value
Bits per second
9600
Data bits
8
Parity
None
Stop bits
1
Flow control
None
As a shortcut, you can launch the Hyperterminal_RS232_dsPICDEM2.ht
file in the dsPICDEM 2 Development Kit/Example Software/30F4013
folder.
3. See information on LCD. Note that the HyperTerminal displays the same
information.
4. Adjust temperature and note LCD and HyperTerminal readings.
5. Adjust potentiometer and note LCD and HyperTerminal readings.
6. Observe the rate at which LEDs D3 and D4 blink.
7. Press INT0 (S5) and note the affect on D3 and D4.
8. Press INT1 (S6) and note the affect on D3 and D4.
DS51558A-page 84
© 2005 Microchip Technology Inc.
Using the dsPIC30F4013
13.6
IN-CIRCUIT DEBUGGING
The sample application program is intended to illustrate how the processor and I/O
modules handle the functionality provided on the dsPICDEM 2 Development Board.
The MPLAB ICD 2 In-Circuit Debugger was used to program the sample application
into the dsPIC30F device. You can also use the MPLAB ICD 2 In-Circuit Debugger to
examine this baseline code to determine specific applicability to your application.
The examination process requires that the dsPIC30F4013 device be reprogrammed to
recognize the MPLAB ICD 2 debugger rather than a programmer.
13.6.1
Setting Up MPLAB ICD 2 to Examine Code
To change MPLAB ICD 2 from a programmer to a debugger:
1. From the Debugger menu, click Select Tool>MPLAB ICD 2 to designate the
MPLAB ICD 2 as the debug tool in MPLAB IDE.
2. Reprogram the dsPIC30F device (Debugger>Program menu).
3. Reset the program and run it. From the Debugger menu, select Reset>Processor
Reset. Then select Debugger>Run.
Figure 13-3 shows the configuration bits for this set up.
FIGURE 13-3:
13.6.2
CONFIGURATION BITS WINDOW
Examining the Code
After the application has been reprogrammed to use the MPLAB ICD 2 as a debugger,
you can use MPLAB IDE to run, halt and step the program. You can set breakpoints to
halt the program and examine the actual code at any point. You can also examine the
contents of the RAM and registers whenever the processor is halted.
Refer to Section 2.3 “Getting Started” for an overview of the sample application.
Flowcharts illustrate each of these processes:
•
•
•
•
Startup and initialization
Main loop processing
A/D conversion processing
External interrupt processing
The dsPICDEM 2 Development Kit/Example Software/30F4013 folder
contains fully annotated code files that you can examine, compare and copy.
© 2005 Microchip Technology Inc.
DS51558A-page 85
dsPICDEM 2 Development Board User’s Guide
13.7
SUMMARY
This chapter has provided specific instructions for using the dsPICDEM 2 Development
Board with a dsPIC30F4013 device. If you have reviewed this process, you should be
able to:
•
•
•
•
•
DS51558A-page 86
Configure the dsPICDEM 2 Development Board for the dsPIC30F4013 device.
Set up MPLAB IDE to use the MPLAB ICD 2 In-Circuit Debugger.
Locate the sample application for the dsPIC30F4013 device.
Program the chip with the MPLAB ICD 2.
Examine the sample application and identify applicable code for your embedded
solution.
© 2005 Microchip Technology Inc.
dsPICDEM™ 2.0
DEVELOPMENT BOARD
USER’S GUIDE
Chapter 14. Hardware
14.1
HARDWARE OVERVIEW
This chapter describes the dsPICDEM™ 2 Development Board hardware, which features the components shown in Figure 14-1.
FIGURE 14-1:
33
dsPICDEM™ 2 DEVELOPMENT BOARD
34
35
1
2
32
3
4
5
6
31
7
30
8
9
10
29
11
12
13
28
14
27
15
26
25
16
17
24
18
23
© 2005 Microchip Technology Inc.
22
21
20
19
DS51558A-page 87
dsPICDEM 2 Development Board User’s Guide
TABLE 14-1:
No.
dsPICDEM™ 1.1 DEVELOPMENT BOARD HARDWARE
Hardware Element
No.
Hardware Element
1
CAN Port
(see Section 14.1.6)
19
Switch S6 header
(see Section 14.1.8)
2
CAN Transceiver
(see Section 14.1.6)
20
Analog Potentiometer
(see Section 14.1.12)
3
CAN Header
(see Section 14.1.6)
21
Analog Potentiometer Header
(see Section 14.1.12)
4
External Power Supply Inputs
(see Section 14.1.1)
22
LCD Graphic Display
(see )
5
Power On LED
(see Section 14.1.1)
23
SPI™ Controller for LCD
(see Section 14.1.5)
6
Power Supply jumpers
(see Section 14.1.1)
24
SPI™ Programming Header
(see Section 14.1.5)
7
Voltage Regulator
(see Section 14.1.1)
25
LCD Controller Header
(see Section 14.1.5)
8
UART 1 Header
(see Section 14.1.7)
26
Temperature Sensor Header
(see Section 14.1.11)
9
DIP Switch, debug selector for general
purpose device sockets
(see Section 14.1.4)
27
Temperature Sensor
(see Section 14.1.11)
10
Alternate UART 1 header
(see Section 14.1.7)
28
External Connection Headers
(see Section 14.1.10)
11
Device Headers, concentric sockets
for dsPIC30F devices
(see Section 14.1.2)
29
Crystal Oscillator, for motor control
devices
(see Section 14.1.3)
12
Crystal Oscillator, for General Purpose
Devices
(see Section 14.1.3)
30
DIP Switch, Debug Selector for motor
control device sockets
(see Section 14.1.4)
13
Reset Pushbutton Switch
(see Section 14.1.13)
31
dsPIC30F4011 Device
(see Section 14.1.2)
14
UART 2 header
(see Section 14.1.7)
32
Programming Selector DIP Switch
(see Section 14.1.4)
15
Output LEDs
(see Section 14.1.9)
33
ICD Connector
(see Section 14.1.4)
16
LED Header
(see Section 14.1.9)
34
UART Transceiver
(seeSection 14.1.7)
17
Pushbutton Switches S5 and S6
(see Section 14.1.8)
35
RS-232 Serial Port
(see Section 14.1.7)
18
Switch S5 header
(see Section 14.1.8)
14.1.1
Power Supply
The dsPICDEM™ 2 Development Board may be powered by a +9V AC/DC wall
adapter. A DC voltage regulator is provided so as to regulate the +9V input from the
wall adaptor and supply +5V to VDD and AVDD pins on the dsPIC30F device. In order
to supply power to the board from a wall adaptor, the jumpers JP1 and JP2 need to be
installed and power should be supplied via the J4 jack. The PWR ON LED, D1 will
illuminate if the power has been applied to the board appropriately.
The schematics of the power supply circuits are shown in Figure A-8: “dsPICDEM™
2 Development Board Schematic (Sheet 7 of 7)”.
DS51558A-page 88
© 2005 Microchip Technology Inc.
Hardware
14.1.2
dsPIC30F Device Sockets
The left side of the dsPICDEM 2 Development Board includes sockets (U2B1 and
U2A1) for 28 and 40-pin devices, respectively, in the Motor Control family. The right
side of the board includes sockets (U1C1, U1B1 and U1A1) for 18, 28 and 40-pin
devices, respectively, in the dsPIC30F General Purpose and Sensor family of devices.
These sockets are concentrically arranged headers that allow supported devices in DIP
packages to be plugged directly into the development board.
Table 14-2 lists the devices accommodated by each socket.
TABLE 14-2:
DEVICE/SOCKET LOCATIONS
Header Label
dsPIC30F Devices Accommodated
General Purpose and Sensor Family
U1A1
dsPIC30F3014, 4013
U1B1
dsPIC30F2012, 3013
U1C1
dsPIC30F2011, 3012
Motor Control Family
U2A1
dsPIC30F3011, 4011
U2B1
dsPIC30F2010, 3010,4012
The schematic for the general purpose and sensor device sockets is shown in Figure
A-2: “dsPICDEM™ 2 Development Board Schematic (Sheet 1 of 7)”. The
schematic for the motor control device socket is shown in Figure A-3: “dsPICDEM™
2 Development Board Schematic (Sheet 2 of 7)”.
14.1.3
Oscillators
Device clocking is provided by on-board crystal oscillators. A 7.3728 MHz crystal
oscillator(Y2) provides a system clock for the Motor Control family of devices. Another
7.3728 MHz crystal oscillator (Y5) provides a system clock for the General Purpose and
Sensor family of devices.
Through-holes and pads are provided for a user-furnished watch-type crystal and two
capacitors (Y3 and Y6) connected across pins SOSC1 and SOSC2 on the dsPIC30F
device. Such crystals may be used for real-time clock operation.
External clock connections are available for motor control devices at Y1 and general
purpose and sensor devices at Y4.
The schematics showing resistor and capacitor values for all oscillator options are
provided in Figure A-6: “dsPICDEM™ 2 Development Board Schematic (Sheet 5
of 7)”
14.1.4
Programming/Debugging
An RJ11 header has been provided on the dsPICDEM 2 Development Board in
order to interface with device programmers and debuggers like MPLAB ICD 2
and PRO MATE™ 3. DIP switches in S2, S3 and S4 are provided to connect
the PRO MATE 3 or MPLAB ICD 2 In-Circuit Debugger to the programming and
debugging pins on the installed dsPIC30F device.
Switches within S2 should always be used to designate the device being programmed
by MPLAB ICD2. These switches connect the clock and data lines from ICD 2 to the
Programming and Default Debugging channels (PGC/EMUC and PGD/EMUD) on the
dsPIC30F device. In some instances, users may find that their application uses certain
peripherals multiplexed on either the PGC/EMUC or the PGD/EMUD pins. In such
cases, they may avail of alternate debugging channels, EMUC1 & EMUD1 or EMUC2
& EMUD2 or EMUC3 & EMUD3. The dsPICDEM 2 Development Board supports the
© 2005 Microchip Technology Inc.
DS51558A-page 89
dsPICDEM 2 Development Board User’s Guide
EMUC1 & EMUD1 pin-pair, as well as the EMUC2 & EMUD2 pin-pair, for alternate
debugging channels. This functionality has been provided by the DIP switches in S3
(for Motor Control family) and S4 (for Sensor and General-Purpose families).
Table 14-3 shows the various alternate debugging channel options available to the
user. These switches are represented in the schematics in Figure A-5: “dsPICDEM™
2 Development Board Schematic (Sheet 4 of 7)”.
TABLE 14-3:
PROGRAMMING/DEBUGGING PIN SELECTION
Switch Position
S2
S3
S4
Note 1:
14.1.5
1
Label
Function(1)
GP 40
Connects ICD to programming pins on the 40-pin
dsPIC30F device in the general purpose socket
(U1A1)
2
GP 28
Connects ICD to programming pins on the 28-pin
dsPIC30F device in the general purpose socket
(U1B1)
3
GP 18
Connects ICD to programming pins on the 18-pin
dsPIC30F device in the general purpose socket
(U1C1)
4
M ALL
Connects ICD to programming pins on the
dsPIC30F device in either motor control socket
1
EMUD1
Connects ICD to debug pins EMUD1 and UMUC1
EMUC1
on the dsPIC30F device in either motor control
socket
2
EMUD2
Connects ICD to debug pins EMUD2 and UMUC2
EMUC2
on the dsPIC30F device in either motor control
socket
1
GP ALL EMUD1
Connects ICD to debug pins EMUD1 and EMUC1
GP ALL EMUC1
on the dsPIC30F device in any general purpose
socket
2
GP 40 EMUD2
Connects ICD to debug pins EMUD2 and EMUC2
GP 40 EMUC2
on the 40-pin dsPIC30F device in general
purpose socket U1A1
3
GP 28 EMUD2
Connects ICD to debug pins EMUD2 and EMUC2
GP 28 EMUC2
on the 28-pin dsPIC30F device in general
purpose socket U1B1
4
GP 18 EMUD2
Connects ICD to debug pins EMUD2 and EMUC2
GP 18 EMUC2
on the 18-pin dsPIC30F device in general
purpose socket U1C1
Indicates the path established when that switch is in the ON position. All other
switches must be in the OFF position.
LCD
The LCD supports 2 rows and 16 columns of ASCII-text characters and is controlled by
a dsPIC30F2011 device. The dsPIC30F devices may write ASCII character data and
cursor position information via an SPI interface to the LCD controller. Header H1 connects the SPI pins (SCK1 and SDO1) on the dsPIC30F device to the LCD controller. A
pair of jumpers should be installed on H1 to connect any one of the following to the
LCD:
- 28-pin device on U2B1
- 40-pin device on U2A1
- 18-pin device on U1C1
- 28/40-pin device on U1A1 or U1B1
DS51558A-page 90
© 2005 Microchip Technology Inc.
Hardware
The LCD Controller accesses the LCD via a 4-pin parallel port and a 3-pin control line.
For a detailed description of the communication protocol, see Appendix B. “Writing
to LCD”. The schematics for the LCD connections on the board are provided in Figure
A-4: “dsPICDEM™ 2 Development Board Schematic (Sheet 3 of 7)”.
14.1.6
CAN Port
An MCP2551 Controller Area Network transceiver is provided on the dsPICDEM 2
Development Board. The CAN RXD and TXD lines of the MCP2551 are connected to
the C1RX and C1TX pins on the dsPIC30F device by installing a jumper on header H2.
CAN-bus signals (CANH and CANL) are available on DB9 connector J3. Three devices
supported by the dsPICDEM 2 board feature a CAN module. These are
dsPIC30F4011, dsPIC30F4012 and dsPIC30F4013. The header H2 should have
jumpers installed on the M40 option for using the CAN module on the 30F4011 device,
jumpers installed on the M28 option for the 30F4012 device and jumpers installed on
the GP ALL option for the 30F4013 device. The schematic of the CAN port is shown in
Figure A-4: “dsPICDEM™ 2 Development Board Schematic (Sheet 3 of 7)”.
14.1.7
RS-232 Port
A MAX232 transceiver is provided on the dsPICDEM 2 development board for enabling
RS-232 communication. The transceiver interfaces a DB9 connector J2 and the UART
Transmit and Receive pins on the active dsPIC30F via headers H3, H4 or H5. Header
H3 enables a connection between the transceiver and the primary UART1 pins, U1TX
and U1RX, on the active dsPIC30F device. Header H4 enables a connection between
the transceiver and the alternate UART1 pins, U1ATX and U1ARX, on the active
dsPIC30F device. H5 enables a connection between the transceiver and the UART2
pins, U2TX and U2RX, on the active dsPIC30F device. At any time, only one of the
three headers, H3, H4 and H5, may be populated with jumpers.
The schematic of the RS-232 circuits is shown in Figure A-5: “dsPICDEM™ 2
Development Board Schematic (Sheet 4 of 7)”. Table 14-4 lists the connections set
up by each header pin position
TABLE 14-4:
Header(1)
H3
H4
H5
Note 1:
2:
3:
© 2005 Microchip Technology Inc.
UART HEADER SETTINGS
Pin Position(2)
Function(3)
M ALL
Connects the UART transceiver to the UART 1 module in the
dsPIC30F device in either motor control socket.
GP 18
Connects the UART transceiver to the UART 1 module in the
18-pin dsPIC30F device in general purpose socket U1C1.
GP 40/28
Connects the UART transceiver to the UART 1 module in the
28 or 40-pin dsPIC30F device in general purpose socket
U1A1 or U1B1.
M ALL
Connects the UART transceiver to the alternate pins for the
UART 1 module in the dsPIC30F device in either motor
control socket.
GP ALL
Connects the UART transceiver to the alternate pins for the
UART 1 module in the dsPIC30F device in any general
purpose socket.
M 40
Connects the UART transceiver to the UART 2 module of the
40-pin dsPIC30F motor control device in socket U2A1.
GP 40
Connects the UART transceiver to the UART 2 module of the
40-pin dsPIC30F general purpose device in socket U1A1.
Headers are mutually exclusive. Only one header can be used at a time.
Pin position is the pair of pins with the indicated label.
Indicates the path established when jumper is installed in that position.
DS51558A-page 91
dsPICDEM 2 Development Board User’s Guide
14.1.8
External Interrupt Switches
Switches S5 and S6 can be connected to the external interrupt pins, INT0 and INT1,
respectively on all supported dsPIC30F devices. Switches S5 and S6 are connected to
the dsPIC DSC device through headers H6 and H7, respectively. The signal lines are
normally pulled up to +5V DC through 4.7 kOhm resistors. Pressing the switch will short
the line to ground.
Table 14-4 lists the connections set up by the jumper positions on headers H6 and H7.
TABLE 14-5:
Header(1)
H6
H7
Note 1:
2:
EXTERNAL INTERRUPT HEADER SETTINGS
Pin Position
Function(2)
GP 40
Connects switch S5 to Port pin RA11of the 40-pin dsPIC30F
device in general purpose socket U1A1 to signify external
interrupt INT0.
GP 28
Connects switch S5 to Port pin RF6 of the 28-pin dsPIC30F
device in general purpose socket U1B1 to signify external
interrupt INT0.
GP 18
Connects switch S5 to Port pin RB6 of the 18-pin dsPIC30F
device in general purpose socket U1C1 to signify external
interrupt INT0.
M ALL
Connects switch S5 to Port pin RE8 of the dsPIC30F device in
either motor control socket to signify external interrupt INT0.
GP 40/28
Connects switch S6 to Port pin RD8 of the 28 or 40-pin
dsPIC30F device in general purpose socket U1B1 or U1A1 to
signify external interrupt INT1.
GP 18
Connects switch S6 to Port pin RD0 of the 18-pin dsPIC30F
device in general purpose socket U1C1 to signify external
interrupt INT1.
M ALL
Connects switch S6 to Port pin RD0 of the dsPIC30F device in
either motor control socket to signify external interrupt INT0.
Header H6 selects switch S5 (INT0). Header H7 selects switch S6 (INT1).
Indicates the path established when jumper is installed in that position.
The schematic of the pushbutton switches and selection headers that comprise the
simulated external interrupt circuits is shown in Figure A-7: “dsPICDEM™ 2
Development Board Schematic (Sheet 6 of 7)”.
14.1.9
LED Indicators
Two LEDs D3 and D4 are provided on the dsPICDEM 2 Development Board. These
may be useful in monitoring the status of your application. The LEDs, D3 and D4, are
connected to port pins, RB0 and RB1, on the dsPIC30F devices, respectively. These
LEDs will illuminate if a high signal is fed to them, but will turn off on a low signal.
Header H12 is used to connect the LEDs, D3 and D4, into the circuit. If the jumper is
installed to connect the GP pins, the LED is connected to the General Purpose and
Sensor family device sockets (U1A1, U1B1 and U1C1). If the jumper on H12 is installed
to connect the M ALL pins, the LED is connected to the motor control device sockets
(U2A1 and U2B1).
The schematic of the LED indicator circuits is shown in Figure A-7: “dsPICDEM™ 2
Development Board Schematic (Sheet 6 of 7)”.
DS51558A-page 92
© 2005 Microchip Technology Inc.
Hardware
14.1.10 External Connection Headers
Two 40-pin headers, H8 and H9, allow the user to connect hardware external to the
dsPICDEM 2 Development Board into the circuit.
The schematic of the external connection headers is shown in Figure
A-6: “dsPICDEM™ 2 Development Board Schematic (Sheet 5 of 7)”.
14.1.11 Analog Temperature Sensor
Temperature sensor, U5, is a -40°C to +125°C linear output TC1047A connected to
analog channel AN3 of the dsPIC30F device through header H10. The header H10
allows the temperature sensor output to be fed to dsPIC30F devices in the Motor
Control family (M ALL position) or the General Purpose and Sensor family (GP ALL
position). The output of the temperature sensor is fed directly to the dsPIC DSC device.
The output voltage range for the TC1047A is typically 750 mV at +25°C. The TC1047A
exhibits a typical 10 mV/C voltage slope.
The schematic of the temperature sensor is shown in Figure A-6: “dsPICDEM™ 2
Development Board Schematic (Sheet 5 of 7)”
14.1.12 Analog Potentiometer
Potentiometer, R15, is connected to analog channel, AN2, of the dsPIC30F devices via
header H13. The voltage output range for the potentiometer is between 0VDC and VDD
(+5VDC). The voltage source is provided by VR1 or TP1. The header, H13, allows the
potentiometer output to be fed to dsPIC30F devices in the Motor Control family (M ALL
position) or the General Purpose and Sensor family (GP ALL position)
The schematic of the analog potentiometer circuit is shown in Figure
A-6: “dsPICDEM™ 2 Development Board Schematic (Sheet 5 of 7)”.
14.1.13 Reset Switch
The Reset switch (S1) is connected to the MCLR pin on all device sockets, as well as
the LCD and LCD controller (dsPIC30F2011). The Reset switch circuit is shown in
Figure A-7: “dsPICDEM™ 2 Development Board Schematic (Sheet 6 of 7)”.
© 2005 Microchip Technology Inc.
DS51558A-page 93
dsPICDEM 2 Development Board User’s Guide
NOTES:
DS51558A-page 94
© 2005 Microchip Technology Inc.
dsPICDEM™ 2.0
DEVELOPMENT BOARD
USER’S GUIDE
Appendix A. Hardware Drawings and Schematics
A.1
INTRODUCTION
This Appendix provides a layout drawing of the printed circuit board followed by
schematics for the dsPICDEM™ 2 Development Board.
FIGURE A-1:
© 2005 Microchip Technology Inc.
dsPICDEM™ 2 DEVELOPMENT BOARD LAYOUT
DS51558A-page 95
DS51558A-page 96
VDD
GND
RB5_1
RB4_1
RD0_1
OSC2_1
RC13_1
RC14_1
RB7_1
RB3_1
OSC1_1
RB6_1
RB2_1
VDD
GND
RB1_1
RD2_1
RD3_1
AGND
RD8_1
RD9_1
AVDD
RF6_1
RA11_1
MCLR
RF3_1
RB0_1
RF2_1
RC14_1
RF0_1
VDD
RC13_1
GND
RB8_1
RF5_1
VDD
RB7_1
OSC2_1
RD1_1
RB6_1
RF4_1
RD0_1
RB5_1
RF1_1
RB12_1
RB4_1
GND
RB11_1
RB3_1
MCLR
RD9_1
VDD
RC14_1
RC13_1
OSC2_1
OSC1_1
GND
RB5_1
RB4_1
RB3_1
RB2_1
RB1_1
RB0_1
VDD
VDD
VDD
VDD
VDD
AVDD
B
dsPICDEM 2
RD8_1
RF6_1
RF3_1
RF2_1
GND
VDD
RF5_1
RF4_1
RB9_1
RB8_1
RB7_1
RB6_1
AGND
AVDD
F
FIGURE A-2:
OSC1_1
RB9_1
RB10_1
RB2_1
AGND
RB1_1
AVDD
MCLR
RB0_1
dsPICDEM 2 Development Board User’s Guide
dsPICDEM™ 2 DEVELOPMENT BOARD SCHEMATIC (SHEET
1 OF 7)
© 2005 Microchip Technology Inc.
© 2005 Microchip Technology Inc.
VDD
VDD
VDD
VDD
VDD
AVDD
RD2_2
RD3_2
VDD
RD0_2
RD1_2
GND
RF6_2
RE8_2
RF0_2
VDD
RF3_2
GND
RB8_2
RF2_2
VDD
RB7_2
RC14_2
RE5_2
RB6_2
RF5_2
RE4_2
RB5_2
RC13_2
RE3_2
RB4_2
OSC2_2
RE2_2
RB3_2
RF4_2
RE1_2
RB2_2
RF1_2
RE0_2
RB1_2
GND
AGND
MCLR
RD1_2
VDD
RC14_2
RC13_2
OSC2_2
OSC1_2
GND
RB5_2
RB4_2
RB3_2
RB2_2
RB1_2
RB0_2
B
dsPICDEM 2
RD0_2
RE8_2
RF3_2
RF2_2
GND
VDD
RE5_2
RE4_2
RE3_2
RE2_2
RE1_2
RE0_2
AGND
AVDD
F
FIGURE A-3:
OSC1_2
AVDD
MCLR
RB0_2
Hardware Drawings and Schematics
dsPICDEM™ 2 DEVELOPMENT BOARD SCHEMATIC (SHEET
2 OF 7)
DS51558A-page 97
DS51558A-page 98
VDD
SDI1
RF3_2
RE8_2
RF3_2
RF6_2
SCK1
RB4_1
E
RS
R/W
D7
D6
GND
VDD
AGND
D5
AVDD
D4
CAN_RXD
MCLR
RB6_1
RF3_1
RF6_1
AVDD
RF2_2
RF3_2
DATA
CLK
VDD
VDD
E
RS
R/W
D7
D6
D5
D4
MCLR
B
dsPICDEM 2
VDD
F
FIGURE A-4:
RF0_2
RF1_2
RF0_1
RF1_1
VDD
GND
CAN_TXD
dsPICDEM 2 Development Board User’s Guide
dsPICDEM™ 2 DEVELOPMENT BOARD SCHEMATIC (SHEET
3 OF 7)
© 2005 Microchip Technology Inc.
© 2005 Microchip Technology Inc.
RF2_1
RF3_2
RF2_2
RB4_1
RB5_1
RF3_1
RF2_1
CLK
DATA
RB7_1
VDD
RB6_1
RF4_2
RF5_2
RF4_1
RF5_1
RF2_2
RF3_2
RB5_1
RB4_1
MCLR
RXD
TXD
VDD
CLK
DATA
CLK
DATA
VDD
RB7_1
RD0_1
RB7_1
RD8_1
RD1_1
RD0_1
RC13_1
RC14_1
RD1_2
RD0_2
RC13_2
RC14_2
B
dsPICDEM 2
F
FIGURE A-5:
RF3_1
RC14_2
RC13_2
RC14_1
RC13_1
Hardware Drawings and Schematics
dsPICDEM™ 2 DEVELOPMENT BOARD SCHEMATIC (SHEET
4 OF 7)
DS51558A-page 99
DS51558A-page 100
AVDD
POT1
RB2_2
OSC1_2
OSC2_2
OSC2_1
OSC1_1
OSC1_1
VDD
RB3_2
RB3_1
VDD
OSC1_2
RF4_1
RF0_1
VDD
RF5_1
RF1_1
GND
VDD
RB9_1
RB10_1
GND
RB11_1
RB12_1
RD0_1
RF2_1
RF3_1
RD1_1
RF6_1
RD8_1
GND
RD3_1
RD2_1
RD9_1
RA11_1
VDD
RC14_1
GND
GND
RC13_1
GND
VDD
RB8_1
RB6_1
RB5_1
RB7_1
RB4_1
RB3_1
RB2_1
RC13_1
RC14_1
B
MCLR
dsPICDEM 2
GND
RE1_2
RE3_2
RE5_2
GND
RF1_2
RF5_2
RF3_2
RD0_2
VDD
RD3_2
RE8_2
RC13_2
GND
VDD
RB7_2
RB5_2
RB3_2
RB1_2
VDD
RC14_2
RC13_2
RE0_2
RE2_2
RE4_2
VDD
RF0_2
RF4_2
RF2_2
RF6_2
RD2_2
GND
RD1_2
RC14_2
GND
GND
RB8_2
RB6_2
RB4_2
RB2_2
RB0_2
F
FIGURE A-6:
RB2_1
AVDD
RB0_1
MCLR
RB1_1
dsPICDEM 2 Development Board User’s Guide
dsPICDEM™ 2 DEVELOPMENT BOARD SCHEMATIC (SHEET
5 OF 7)
© 2005 Microchip Technology Inc.
Hardware Drawings and Schematics
dsPICDEM™ 2 DEVELOPMENT BOARD SCHEMATIC (SHEET
6 OF 7)
RD0_1
RD0_2
RD8_1
© 2005 Microchip Technology Inc.
RB1_2
RB1_1
RB0_2
RB0_1
RB6_1
RF6_1
RE8_2
VDD
VDD
RA11_1
VDD
MCLR
B
dsPICDEM 2
F
FIGURE A-7:
DS51558A-page 101
dsPICDEM 2 Development Board User’s Guide
dsPICDEM™ 2 DEVELOPMENT BOARD SCHEMATIC (SHEET
7 OF 7)
VDD
VDD
B
dsPICDEM 2
AVDD
F
FIGURE A-8:
DS51558A-page 102
© 2005 Microchip Technology Inc.
dsPICDEM™ 2.0
DEVELOPMENT BOARD
USER’S GUIDE
Appendix B. Writing to LCD
B.1
OVERVIEW
A 2x16 ASCII-text LCD is provided on the dsPICDEM2 Development Board. dsPIC30F
devices installed on the dsPICDEM2 development board may use this LCD to display
characters. The interface to the LCD is via a 2-wire Serial Peripheral Interface (SPI™).
dsPIC30F devices may send serial clock and data signals on 2 pins to the
dsPIC30F2011 device that controls the 2x16 LCD.
B.2
LCD HARDWARE SETUP
To enable communication between your dsPIC30F device and the dsPIC30F2011 LCD
controller, simply jumper the appropriate pair of pins on the header H1.For example, in
order to enable communication between the dsPIC30F2010 device and the LCD,
jumpers on the pin-pair labelled “M28” need to be installed on header H1.
B.3
LCD SOFTWARE SPECIFICATION
The following power-up sequence should be observed by the user's application
firmware when writing characters to the LCD:
1. After any reset operation wait 500 milliseconds to allow the LCD to begin normal
operation. The cursor on the LCD will be positioned at the top row on the
left-most column.
2. Configure SPI1 module on your dsPIC30F device to operate in 8-bit Master
mode. The serial clock may be set for any frequency up to 1 MHz.
3. To write an ASCII character to the LCD at the location pointed to by the cursor,
load the SPIBUF register with the ASCII character byte.
4. After the character is displayed on the LCD, the cursor is automatically relocated
to the next position on the LCD.
5. To reposition the cursor to another column on any of the two rows, write the
address of the desired location to the SPIBUF register. Addresses in the first row
of the LCD range from 0x80 to 0x8F, while addresses on the second row range
from 0xC0 through 0xCF.
6. After 16 characters are written to the first row on the LCD, it is necessary for the
user's application to write the address 0xC0 of the second row to the SPIBUF in
order to roll the cursor over to the second row.
7. The user application must wait for a minimum of 5 milliseconds between writing
two successive characters in the first row of the LCD.
8. The user application must wait for a minimum of 250 microseconds after writing
an address byte.
9. The user application must wait for a minimum of 250 microseconds between
writing two successive characters in the second row of the LCD.
© 2005 Microchip Technology Inc.
Advance Information
DS51558A-page 103
dsPICDEM 2 Development Board User’s Guide
B.4
LCD FIRMWARE PROGRAMMING:
The LCD firmware resident on the dsPIC30F2011 device may be reprogrammed at any
time using the MPLAB IDE project and workspace provided in this folder.
In order to reprogram the firmware, the following steps need to be performed in
sequence:
1.
2.
3.
4.
5.
6.
7.
8.
9.
DS51558A-page 104
All switches on blocks S2, S3, and S4 should be turned OFF.
All jumpers on header H1 should be removed.
Install jumpers on header H11.
Connect MPLAB ICD 2 Programming Header to the dsPICDEM 2 Development
Board at J1.
Install jumpers JP1 and JP2 and supply power to the board at J4.
Open the MPLAB IDE workspace from the folder:
path/dsPICDEM 3 Development Kit/LCD Controller/
Build the project. Project>>Build All
Download the hex file into the dsPIC30F2011 device. Programmer>>Program
Remove jumpers from headee H11.
Advance Information
© 2005 Microchip Technology Inc.
dsPICDEM™ 2.0
DEVELOPMENT BOARD
USER’S GUIDE
Appendix C. Board Errata
C.1
H7 AND H6 LABELLING ERROR
This Appendix illustrates and explains a labeling error on Revisions E and F of the
dsPICDEM 2 printed circuit board (see Figure C-1). The SEL S6 and SEL S7 labels on
Headers H6 and H7, respectively, are reversed. H7 actually enables S6 to be
connected to INT1, and H6 enables S5 to be connected to INT0.
FIGURE C-1:
Labelling Error on H7 and H6
The SEL S5 and SEL S6 labels on Headers
H6 and H7, respectively, are reversed in Rev.
E & Rev. F of the dsPICDEM™ 2 board.
H7 actually enables S6 to be connected to
INT1, and H6 enables S5 to be connected to
INT0.
© 2005 Microchip Technology Inc.
DS51558A-page 105
dsPICDEM 2 Development Board User’s Guide
Notes:
DS51558A-page 106
© 2005 Microchip Technology Inc.
dsPICDEM™ 2
DEVELOPMENT BOARD
USER’S GUIDE
Index
A
E
Alternate UART1 header.......................................... 88
Analog Pot Header................................................... 88
Analog Potentiometer .............................................. 88
External Connection Headers .................................. 88
External Power Supply Inputs .................................. 88
B
Free Software Foundation.......................................... 5
Board Configuration
For dsPIC30F2010 ... 21, 45, 51, 57, 63, 69, 75, 81
For dsPIC30F2011 ........................................... 27
For dsPIC30F2012 ........................................... 33
For dsPIC30F3010 ........................................... 39
Build Project ............................................................. 19
C
CAN Connector ........................................................ 88
CAN Header............................................................. 88
CAN Transceiver...................................................... 88
Code Debugging ...................................................... 20
Crystal Oscillator
For General Purpose Devices .......................... 88
For Motor Control Devices ................................ 88
Customer Notification Service.................................... 5
Customer Support ...................................................... 6
D
Debug Selector DIP Switch...................................... 88
Demonstration Programs ......................................... 14
Development Board
Devices Supported ............................................. 8
Features
Analog and Digital Inputs........................... 11
CAN Interface .........................................7, 10
Device Clocking ......................................... 11
Digital Outputs ........................................... 11
External Connections ................................ 11
ICD 2 and ICE4000 Connections .............. 10
LCD ............................................................. 7
Multiple Sockets .......................................7, 9
Power Supply Circuit ................................. 10
RS-232 Interface ....................................7, 10
Sensor and Switches ................................... 7
Layout ............................................................... 95
Photograph ......................................................... 8
Schematic ......................................................... 96
Documentation
Conventions ........................................................ 3
Layout ................................................................. 1
dsPIC30F Device Headers....................................... 88
dsPIC30F4011 Device ............................................. 88
© 2005 Microchip Technology Inc.
F
G
Getting Started Process ........................................... 13
Debugging......................................................... 20
Out-of-the-Box Demo........................................ 16
Programming .................................................... 19
GNU Language Tools ................................................ 5
H
Hardware Components
Alternate UART 1 header.................................. 88
Analog Pot Header............................................ 88
Analog Potentiometer ....................................... 88
CAN Connector................................................. 88
CAN Header...................................................... 88
CAN Transceiver............................................... 88
Crystal Oscillator for General Purpose &
Sensor Devices .................................. 88
Crystal Oscillator for Motor Control Devices ..... 88
Debug Selector DIP Switch............................... 88
dsPIC30F Device Headers ............................... 88
dsPIC30F4011 Device ...................................... 88
External Connection Headers ........................... 88
External Power Supply Inputs........................... 88
LCD Controller .................................................. 88
LCD Controller Header ..................................... 88
LCD Graphic Display ........................................ 88
LED Selection Header ...................................... 88
Output LEDs ..................................................... 88
Power On LED .................................................. 88
Power Supply jumpers ...................................... 88
Programming Selector DIP Switch.................... 88
Programming/Debugging Connector ................ 88
Reset Switch ............................................... 88, 93
RS-232 Serial Port ............................................ 88
SPI programming header.................................. 88
Switch S5 header.............................................. 88
Switch S6 header.............................................. 88
Temperature Sensor ......................................... 88
UART 1 header ................................................. 88
UART 2 header ................................................. 88
UART Transceiver ............................................ 88
voltage regulator ............................................... 88
DS51558A-page 107
dsPICDEM 2 Development Board User’s Guide
Headers
Analog Potentiometer ....................................... 88
CAN .................................................................. 88
External Connection.......................................... 88
LCD Controller .................................................. 88
LED Selection ................................................... 88
Host System Environment........................................ 12
T
Temperature Sensor ................................................ 88
Temperature Sensor header
Hardware Components
Temperature Sensor header...................... 88
U
Internet Address ......................................................... 5
UART Transceiver.................................................... 88
UART1 header ......................................................... 88
UART2 header ......................................................... 88
K
V
Kit Contents................................................................ 7
voltage regulator....................................................... 88
L
W
LCD Controller.......................................................... 88
LCD Controller Header............................................. 88
LCD Graphic Display................................................ 88
LED Selection Header.............................................. 88
Warranty Registration................................................. 4
WWW Address ........................................................... 5
I
M
Make Project ............................................................ 19
Microchip Internet Web Site ....................................... 5
MPLAB IDE User’s Guide .......................................... 5
O
Out-of-the-Box Demo ............................................... 16
Output LEDs............................................................. 88
P
Power On LED ......................................................... 88
Power Supply jumpers ............................................. 88
Programming Selector DIP Switch ........................... 88
Programming/Debugging Connector........................ 88
R
Recommended Reading............................................. 4
Reset Switch ...................................................... 88, 93
RS-232 Serial Port ................................................... 88
S
Sample Application
For dsPIC30F2010............................................ 21
For dsPIC30F2011............................................ 27
For dsPIC30F2012............................................ 33
For dsPIC30F3010............................................ 39
For dsPIC30F3011............................................ 45
For dsPIC30F3012............................................ 51
For dsPIC30F3013............................................ 57
For dsPIC30F3014............................................ 63
For dsPIC30F4011............................................ 69
For dsPIC30F4012............................................ 75
For dsPIC30F4013............................................ 81
Sample Application Programs .................................. 13
Sample Application Projects..................................... 12
SPI programming header ......................................... 88
Switch S5 header ..................................................... 88
Switch S6 header ..................................................... 88
DS51558A-page 108
© 2005 Microchip Technology Inc.
WORLDWIDE SALES AND SERVICE
AMERICAS
ASIA/PACIFIC
ASIA/PACIFIC
EUROPE
Corporate Office
2355 West Chandler Blvd.
Chandler, AZ 85224-6199
Tel: 480-792-7200
Fax: 480-792-7277
Technical Support:
http://support.microchip.com
Web Address:
www.microchip.com
Australia - Sydney
Tel: 61-2-9868-6733
Fax: 61-2-9868-6755
India - Bangalore
Tel: 91-80-2229-0061
Fax: 91-80-2229-0062
China - Beijing
Tel: 86-10-8528-2100
Fax: 86-10-8528-2104
India - New Delhi
Tel: 91-11-5160-8631
Fax: 91-11-5160-8632
Austria - Weis
Tel: 43-7242-2244-399
Fax: 43-7242-2244-393
Denmark - Ballerup
Tel: 45-4450-2828
Fax: 45-4485-2829
China - Chengdu
Tel: 86-28-8676-6200
Fax: 86-28-8676-6599
Japan - Kanagawa
Tel: 81-45-471- 6166
Fax: 81-45-471-6122
France - Massy
Tel: 33-1-69-53-63-20
Fax: 33-1-69-30-90-79
China - Fuzhou
Tel: 86-591-8750-3506
Fax: 86-591-8750-3521
Korea - Seoul
Tel: 82-2-554-7200
Fax: 82-2-558-5932 or
82-2-558-5934
Germany - Ismaning
Tel: 49-89-627-144-0
Fax: 49-89-627-144-44
Atlanta
Alpharetta, GA
Tel: 770-640-0034
Fax: 770-640-0307
Boston
Westborough, MA
Tel: 774-760-0087
Fax: 774-760-0088
Chicago
Itasca, IL
Tel: 630-285-0071
Fax: 630-285-0075
Dallas
Addison, TX
Tel: 972-818-7423
Fax: 972-818-2924
Detroit
Farmington Hills, MI
Tel: 248-538-2250
Fax: 248-538-2260
Kokomo
Kokomo, IN
Tel: 765-864-8360
Fax: 765-864-8387
China - Hong Kong SAR
Tel: 852-2401-1200
Fax: 852-2401-3431
China - Shanghai
Tel: 86-21-5407-5533
Fax: 86-21-5407-5066
China - Shenyang
Tel: 86-24-2334-2829
Fax: 86-24-2334-2393
Philippines - Manila
Tel: 011-632-634-9065
Fax: 011-632-634-9069
China - Shenzhen
Tel: 86-755-8203-2660
Fax: 86-755-8203-1760
China - Shunde
Tel: 86-757-2839-5507
Fax: 86-757-2839-5571
China - Qingdao
Tel: 86-532-502-7355
Fax: 86-532-502-7205
Malaysia - Penang
Tel:011-604-646-8870
Fax:011-604-646-5086
Singapore
Tel: 65-6334-8870
Fax: 65-6334-8850
Italy - Milan
Tel: 39-0331-742611
Fax: 39-0331-466781
Netherlands - Drunen
Tel: 31-416-690399
Fax: 31-416-690340
England - Berkshire
Tel: 44-118-921-5869
Fax: 44-118-921-5820
Taiwan - Kaohsiung
Tel: 886-7-536-4818
Fax: 886-7-536-4803
Taiwan - Taipei
Tel: 886-2-2500-6610
Fax: 886-2-2508-0102
Taiwan - Hsinchu
Tel: 886-3-572-9526
Fax: 886-3-572-6459
Los Angeles
Mission Viejo, CA
Tel: 949-462-9523
Fax: 949-462-9608
San Jose
Mountain View, CA
Tel: 650-215-1444
Fax: 650-961-0286
Toronto
Mississauga, Ontario,
Canada
Tel: 905-673-0699
Fax: 905-673-6509
04/20/05
DS51558A-page 114
Preliminary
© 2005 Microchip Technology Inc.