Myke's Home Page

Book CD-ROM Home

File Copying/Harddrive Setup

Development Tools

Experiments

Projects

Useful Code Snippets and Macros

Introduction to Electronics

Introduction to Programming

Datasheets

PCBs

Links

McGraw-Hill Professional Publishing

Development Tools

Before starting working through the Experiments and Projects in this book, you are going to have to load development tools onto your book followed by a programmer (and, optionally, an emulator). In this book, I am very happy to be able to present you with a reasonable choice of tools that will work in a variety of different systems.

Your first order of business should be copying the application source files onto your system's hardfile. Click Here to look at the procedures for copying the files onto your PC.

Next, you should select and install the development system that you are going to use to work through the applications. On this CD-ROM, I have included Microchip's MPLAB Integrated Development Environment (also known as the MPLAB IDE) which works under thirty two bit versions of the Microsoft Windows Operating System (Windows 95/98/Me/NT/2000). In this book, I have focussed on MPLAB, but Virtual Micro Design's UMPS (Universal Microprocessor Program Simulator) is an excellent tool that has the ability of simulating a wide variety of different devices and also has the ability to simulate different hardware devices. For Linux users, I have included the "gpasm" and "gpsim" GNU tools.

After the files and development system are installed on your PC's hard drive, you will need a programmer. Along with commercially available devices, I have included a PCB in this book for my "El Cheapo" programmer design along with the software required to run it in MS-DOS and Windows environments. As well as the "El Cheapo", I have included design information for my "YAP-II" programmer and "EMU-II" emulator/programmer. These devices can be used on a variety of different systems and just require a working RS-232 port and terminal emulator.

All the applications and code presented in this book are copyright (&cpr;) Myke Predko, 2000. The applications are provided for individual use only and cannot be reproduced for commercial use without my written permission.

MPLAB IDE

The MPLAB Integrated Development Environment is probably the best application development tool that I have ever seen from any chip manufacturer. The MPLAB IDE not only provides an edit window, but also seamlessly integrates the MPASM Assembler, MPLINK Linker as well as compilers from a number of different third parties. Once the application has been "built", the built in simulator ("MPSIM") allows you to test out your applications in from a "Source Code" Windows. The MPLAB IDE also interfaces directly with the following Microchip programmers and emulators:

  • MPLAB-ICE 2000 Emulator
  • PICMASTER In-Circuit Emulator
  • PICStart Plus Low-cost Programmer
  • PRO MATE II Full-featured Programmer
  • MPLAB-ICD, low cost 16F87x debugger
  • ICEPIC Emulator System

On this CD-ROM, I have included a copy of the MPLAB IDE version 5.11. This was the latest version of the software available at time of printing. You may want to check the Microchip web site periodically to see if a later version is available. Updates are typically made to the MPLAB IDE when new PICmicro$reg; MCU part numbers are announced.

  • Click Here to Install MPLAB IDC Version 5.11.
  • DS51025D - MPLAB IDE Documentation
  • DS33014G - MPASM/MPLINK/MPLIB Documentation

When MPLAB installs, it will ask you to specify the options you are going to be working with. You may want to just install them "all" for simplicity. For MPLINK, I recommend creating the "lkr" subdirectory to avoid making the "MPLAB" subdirectory too complex with too many confusing part number files.

gpasm/gpsim

For Linux users, I have included a GNU public license assembler and and simulator. Scott Dattalo is the principle instigator of this project and the latest information can be found at his web site.

gpasm

The latest version of gpasm (as of this printing) is 0.8.10 and can be installed by:

  1. Copying gpasm-0.8.10.tar.gz into the a directory on your PC's hardfile
  2. Type in "tar -xvzf gpasm-0.8.10.tar.gz" to create the "gpasm-0.8.10" subdirectory
  3. Follow the instructions in the README and INSTALL text files to make the assembler

The gpasm.ps documentation file describes how the assembler is used and how application code is formatted.

gpsim

gpsim is a very fast simulator that provides support for many of the built in I/O functions of the PICmicro® MCU. Its latest version is 0.20.5 and is installed by following this procedure:

  1. Copying gpsim-0.20.5.tar.gz into the a directory on your PC's hardfile
  2. Copying eXdmb-0.1.0b2.tar.gz into the a directory on your PC's hardfile
  3. Copying gtk+extra-0.99.9.tar.gz into the a directory on your PC's hardfile
  4. Type in "tar -xvzf gpsim-0.20.5.tar.gz" to create the "gpsim-0.20.5" subdirectory
  5. Follow the instructions in the README and INSTALL text files to make the simulator

The gpasm.ps documentation file describes how the simulator is used and how application code is formatted. The exploded simulator files may include some example applications and stimulus files that you can work through.

El Cheapo Programmer

The PCB that was included with this book is designed to help you build your own "El Cheapo" programmer. I have been working on this programmer for the past year, trying to come up with a device which can be built inexpensively and will work on the vast majority of PCs out in the world.

The El Cheapo itself is an ICSP "development" programmer and is designed to work with all the low-end and mid-range PICmicro® microcontrollers which are programmed using the ICSP protocol described in the datasheets page of this CD-ROM.

Click Here for instructions on how to build and test the El Cheapo PCB.

YAP-II Programmer

The YAP-II programmer is an enhancement of the original "YAP" ("Yet Another Programmer") presented in the first edition of this book. The YAP-II will program all the ICSP serially programmed PICmicro® micrcontroller chips used in this book for different projects and experiments.

Click Here to look at the application.

The YAP-II Programmer is a very complex application and if you are new to electronics, I recommend that you look at the assembled and tested kit from Wirz Electronics.

This is not to say that it is impossible to build the programmer, I do know of several individuals that have built the YAP and YAP-II successfully. If you are planning on building your own version, I recommend that you use the PCB gerber files I have included on this CD-ROM.

EMU-II Emulator

The EMU-II "Emulator" (there is some debate over whether or not the term can be used for this tool) can help you with understanding how the PICmicro® MCU works and why your own applications don't. The tool is quite easy to use with applications, although personally, I find it somewhat limited due to the lack of source code information displayed during operation.

Click Here to look at the application. When I designed the PCBs for it, I used the YAP-II "form factor" as a starting place, so you will be able work through many of the experiments in the EMU-II in exactly the same way as was done with the YAP-II.

Like the YAP-II, the EMU-II can be challenge to build. If you are thinking about building one for yourself, like the YAP-II, I suggest that you use the PCB gerber files that I have included on this CD-ROM.

UMPS

I have included a Demo version of the UMPS Integrated Development tool on the CD-ROM. UMPS is Virtual Micro Design's complete application software development tool which will allow you to create assembler applications for a large number of different microcontrollers and microprocessors, assemble ("build") them and simulate them with a wide variety of different hardware devices. UMPS goes beyond the traditional simulator and allows you to create a virtual applications which you can test out before programming a device and building the circuit. UMPS supports the following Microchip PICmicro® MCU as well as others:

  • PIC12C508, PIC12C509
  • PIC16C52, PIC16C54, PIC16C55, PIC16C56, PIC16C57, PIC16C58
  • PIC16C84, PIC16F84, PIC16F83, PIC16C554, PIC16C556, PIC16C558
  • PIC12C671, PIC12C672
  • PIC16C710, PIC16C71, PIC16C711
  • PIC16C620, PIC16C621, PIC16C622

The following hardware devices are available for UMPS:

  • Switch/Push-button
  • 7 segment LED display
  • Rectangle Generator
  • Digital to Analog Converter
  • Analog to Digital Slider
  • I2C Display (SAA1064)
  • Serial Link (RX/TX)
  • Serial Access PLL (MC145170)
  • PWM Indicator/Recorder
  • PWM Converter
  • Serial DDM4 LCD panel (Lascar Electronics)
  • 74LS138, 74LS139, 74LS374, 74LS373, 7445
  • CD4017, CD4094, CD4013, CD4040, CD4511
  • LPT I/O port resource
  • LED
  • Logic Gates (NOT, AND, OR, XOR)
  • Digital Recorder/Player
  • Analog to Digital Converter
  • I2C EEPROM/RAM
  • I2C Clock with RAM (PCF8583)
  • LCD Panel
  • Serial EEPROM (93C06, ..., 93C86), XICOR EEPROM
  • Coding wheel
  • Dip switch
  • DALLAS DS1820 1-Wire Digital Thermometer
  • DALLAS DS1990 1-Wire iButton
  • Sound Wave Recorder

UMPS is available from Wirz Electronics.