F84-Programmer

Wichit Sirichote, kswichit@kmitl.ac.th

Build a low-cost and simple serial programmer for a PIC16F84 Microchip Flash Microcontroller


Introduction

I finally found a very nice universal window based software designed to work with any serial programmers for PIC16F84, i.e., WPicProg16 V1.20, written by Nigel Goodwin. Build this programmer before start constructing the coming many interesting F84 projects. Some PIC programmers can be used for in circuit programing, some provide many PIC chips including eeprom, say. Why so many? The F84-Programmer is enough for beginners. It's so simple and cheap...

Hardware

Figure 1 shows a circuit diagram of the F84-Programmer. The programmer connects some bits shown in the figure through printer port LPT1, say. Vdd is controlled by D2 with invert setting, logic '0' at this pin turns 2N2907 on applying +5V to pin14. Similarly for Vpp with invert setting, D3 controls 2N2907, gating approx. +14V to MCLR pin. A programming voltage Vpp is derived by lifting GND pin of the 78L09 to +5V as shown. Data read and write use RB7, D0 sends serial packet while ACK reads back during verify. D1 is clock output synchronizing programming flow. DC input should be approx. 17V.
Figure 1: Circuit Diagram of F84-Programmer

Software

WPIC16.ZIP Updated zip format of window version software for F84-Programmer written by Nigel Goodwin. The Latest WPIC16.ZIP may get directly from Nigel's Homepage.

For our F84-Programmer, check hardware settings window as follows;

The button shown  in the hardware settings can be used to set or clear the desired bit manually for checking hardware. WPicPro16 is also easily invoked by PIC C Compiler via command line setting. Hex file generated after compiling will then be downloaded to buffer memory. To write the hex code in buffer to the chip may done automatically by pressing WRITE PIC, that all. Have fun...
 

Acknowledgment

I appreciate the original work for the circuit by Bojan Dobaj and a very nice software by Nigel Goodwin.



Build Your Own uC Projects

Last updated, 27 October 2542