Easy-Downloader V1.1 for ATMEL
89C2051/4051
Wichit Sirichote, kswichit@.kmitl.ac.th
Free schematic and software for building
your own a programmer for writing intel-HEX file to the AT89C2051 and AT89C4051
WARRANTY:Easy-Downloader was designed
for students, hobbyists, academic instructors to build a low-cost tool
for building microcontroller circuit based on the 2051 and 4051 chips.
The circuit is not professional designed, no complicated components, simple
software. The beta version both writer.c and ez.exe have launched for free.
The author is not warrant that the circuit and software will be foolproof..
Introduction
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 separated 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.
PCB file included
Hardware
Figure 1 depicts 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.
Figure 1: Circuit Diagram of Easy-Downloader V1.1
Software
Two files that you should get are: writer.hex
4,871 bytes, the intel hex file firmware for 89C2051 chip ( the actual
code size is 2021 bytes) and, ez.exe 20,800 bytes
the uploader program run on PC, send hex file to the downloader. The original
writer.c program was written in 'C'. To modify,
it needs Micro C-compiler from Dunfield Development System Ontario Canada
with tiny memory model.
Functional Test
Use a given programmer (ready made Easy-Downloader) write
the writer.hex to the 2051 chip. Put the programmed 2051 chip to the board.
Invoke any communication software with 9600 baud, 8-data bit, no parity.
Connect DB-9 to COM1, say, press enter key, the title "Easy-Downloader
V1.1 for ATMEL 89C2051/4051" would be appeared on the screen. type >s2048
( set byte counter to 2k), then without the 2051 chip in ZIF, type >r (read
2kB), on screen would show FFFFFFFFFFF... indicating corrected wiring for
P1. If you put the chip having already program inside, r command will show
the hex code with the number of byte set by s command. Try e command to
erase the entire program!! All done. Figure 2 shows example of using Xtalk
program to test the board.
Figure 2: Using Xtalk to test the board
Now try with "ez" the uploader program to help you more
easy to write the hex file to the chip. Example of using ez is shown in
Figure 3. Have fun...
Figure 3: Example of using EZ program writes the
writer.hex to 2051 chip
Figure 4: Example of Using EZ3 and EZ3.1
Download EZ
Uploader V3.0 for Window The EZ Uploader
provides a simple means of sending HEX file to the writer board. To connect
the board with EZ, click available COM port, COM1, say. After the EZ recognizes
the chips, then click Send Hexfile, that all. Since there is no signature
byte that indicates chip number and programming voltage, thus you have
to choose the appropriated memory size either 2051 or 4051 manually, i.e.,
2048 or 4096 respectively.
Download EZ
Uploader V3.1 for Window An upgraded
version of EZ3 with RAED and SAVE AS features for reading HEX code resided
in the chip and save as an Intel HEX file.
Easy-Downloader Tips
HEX file extension
Some Assembler or Compiler produce output hex file with .OBJ
instead of .HEX. The EZ needs .HEX extension, just rename it...
Expensive ZIF Socket
Without expensive ZIF socket, you may use an ordinary socket
instead, surely many times of pulling the chips may cause the far end leg
of the 2051 chip broken. My student suggests me to insert one more socket
to the 2051 chip. It works very nice. Even the programmer has ZIF, but
your application board does not have. Better to insert one socket to strengthen
the 2051's leg.
DC Adapter
Any DC adapters, fixed or adjustable can be used, a bridge
diode corrects polarity for the regulator IC eventually. Many adapters
provide higher DC output than the value labeled, to ensure, check the proper
programming voltage that must be in the range of 11.5 to 12.5V.
Putting Right Position
The latest version does not include the protection circuit
if putting wrong position, i.e., GND-Vcc <--> Vcc-GND.
Thus before put the chip into the programmer or your application
board, back to see your thought, say I am putting the 2051 chip to the
right position, then pick the chip, and place it...
If you have a problem, comment, bug report, or suggestion
concerning the use of Easy-Downloader please contact the author via my
e-mail address shown above.
Easy-Downloader circuit was designed by W.Sirichote.
Writer.c was written by W.Sirichote.
Ez.exe, EZ3 and EZ3.1 were written by S.Charoenruaywattana.
"Easy-Downloader" came from S.Zong after his finished
1st beta of EZ program.
Easy-v1.PCB was prepared by Jaroon Keawkhrua.
Build
Your Own uC Projects
Last updated, 20 October 2542