The GNU PIC Programmer and In-Circuit Debugger
User's Manual

Sylvain Giroudon, June 2003

1. Introduction

GPICD is an open-source programmer and in-circuit debugger (ICD) for the Microchip PIC microcontroller family. This tool with a parallel-port based ICSP programming interface.

GPICD is composed of the following elements:

GPICD supports the PIC16F(x)xx microcontroller familly.
The hardware interface is addressed by the software tools through the "ppdev" device driver that comes with any Linux distributions. Thus, it should work with any parallel port interfaces supported by the Linux kernel.

GPICD Main Window

Limitations and Reserved Resources
-1- The first instruction of a debugged program must be a NOP (program memory address 0).
-2- In order for the ICD monitor to work properly, the debugged program should not use the registers at addresses 0x70 to 0x76. However, it is permitted to use these register locations from an interrupt routine.
-3- Only one breakpoint can be set at a time.
-4- It is not permitted to put a breakpoint within an interrupt routine.
-5- Halting the program within an interrupt routine leads to a chaotic behaviour. Logo

Copyright © Sylvain Giroudon 2003
$Revision: 1.8 $
$Date: 2004/12/08 10:04:33 $