Yappa logo

An integrated editor, assembler and programmer interface for the PIC16F84 (and 16C84), running under Linux

5 Jan 2004: There is now a new, much improved Yappa available for testing. It handles many types of PICs, with the help of picprog 1.3. Installation ought to be easier too. Please have a go with the release candidate at ../yappa1.3dist . There are rpms and a tarball to choose from. In a revision to the plan I had at breakfast, in addition to bugfixes before a proper release, I'll probably rework it for picprog 1.4, also co-incidentally released over the weekend.
...........end of newsflash.............

Yappa is a graphical development environment for programming the Microchip PIC16F84 microcontroller. It features an easy learning curve, instant feedback and a seamless interface to the programming circuit, making it appeal to those of us who appreciate instant gratification. Speaking of which, click below for a full-size screenshot.

Yappa combines into a single application the editor, assembler and programmer interface that are needed to program a PIC. It runs under Linux on 386+ sytems, and is independent of any DOSish software such as the development tools supplied by Microchip. Ports to other platforms are conceivable, but the author has no such plans himself.



Resources available here

The Yappa software

User manual

Suitable programmer hardware

An example application

Related resources elsewhere


Yappa was developed for use by undergraduate Physics students at the University of Birmingham. These students have generally had no previous experience of assembler programming. They use Yappa in a six-hour segment of an electronics laboratory course, in which they enter and modify a series of simple PIC programs and study the operation of circuits built with the programmed PICs.

The main design considerations were:

These considerations lie behind many of the restrictions in Yappa: PIC84 only, small number of pseudo-ops, no macros, slightly spartan user interface...

The resulting program has not given any problems in its first year of student use, and has also proved to be of use to others who occasionally need to program a PIC.

The future?

At some unknown time, I'd like to extend Yappa to handle other PICs, if this can be done without increasing the complexity of the user interface. I was thinking of the 16C745, which has an on-chip USB interface. On the other hand the yet-to-be-released 18Fxxx with USB and flash program memory is much more attractive, but more work because of its bigger instruction set.


Yappa relies on the separate program Picprog, written and distributed by Jaakko Hyvatti, for communication with the programmer hardware, and incorporates a parser (here called tp_parse) that was written and posted by Tim Peters. I thank them both for speeding the development. I also thank Birmingham student John Tanner for helping to develop the PIC experiment, and for building all the programmers. Linus and Guido's contributions need not be mentioned, but should be anyway.


Yappa was written by Mark Colclough, during a rather busy summer 1999.