The first version of the Easy-Downloader was designed in 1997 to be used as a tool for my students on building her/his own microcontrollers circuit in the class " Designing Microprocessors System". The circuit features low-cost and easy use. The latest version V1.1 was designed to be used with 2051 and the newest 4051 chips. There is no separate functions like other programmer e.g., blank check, erase, write. Simply type say, c:\..>ez hello , the hex file "hello.hex" will then be programmed to the chip automatically. If the chip is not blank or the code is locked, it will erase first, then write and verify... that all.
Figure 1 shows a circuit diagram of the Easy-Downloader. As shown, the circuit uses a 89C2051 with writer.hex firmware, 74LS373 8-bit latch, DS275-like, 7805, LM317 and two transistors, 2N2222A and 2N2907A. The programming voltage control circuit is the same as recommended by ATMEL application note. It can be raised from 0V, 5V and 12V by appropriated signal from P3. The 8-bit latch, 74LS373 provides some signal for selecting the programming modes. A byte to be programmed or read back is sent/received through P1. Incrementing address is done by pulsing a positive pulse to XTAL pin. The circuit may be built using simple point-to-point soldering with a general purpose PCB( fish's egg like PCB) or making PCB shown above, the file is Easy-v1.pcb Protel PCB version 2.76. The finished board should be tested without any chips; 1) +5V supply, 2) programming voltage 0V, 5V and 12V by connecting the pin that control (P3.5 and D) 2N2222A and 2N2907 to +5V and/or GND. The adapter output should be approx. 15Vdc 100mA.
Click here for more detail & source code