| EEPROM Programmer | |
|
EEPROM (E2PROM) is very easy to work with, since it just acts like a block of SRAM. No special voltages, no mystical voodoo or anything. I designed this EEPROM programmer after I came to the conclusion that I was too broke to buy a real one, and that even if I wasn't too broke, they're a complete rip off. Most of them run $200 for something that can only be maybe an order of magnitude more complex than my $5 programmer. In my design, two 74x164s provide the address lines to the EEPROM, while one 74x299 universal shift register provides both read and write access to the data lines of the EEPROM. The parallel port is used to control all the 74-series components and the EEPROM. Before you get the schematics, please note that they are in the public domain, and are provided without warranty, and I disclaim all responsbility for everything that happens to anything. Be warned that if you wire it up wrong, you could destroy your computer's parallel port, or maybe even more. (Especially if you've got a laptop.) Notably, this circuit doesn't work with my laptop, since its parallel port seems to provide some odd (CMOS-esque) voltages. It didn't blow my laptop up, though, for what its worth. A PNG image and Xfig figure of the schematics are
available. (I use the Fairchild Semiconductor
naming scheme for the pins, by the way). Pin numbers are provided
since all of these parts are heavily standardized. Power and
ground aren't shown. Two pictures of the programmer are available
(Top view and
bottom
view) I convinently color coded all the
wiring. Note that the schematic doesn't address where you get your power from. I used some right-angle header pins that work nicely with the floppy drive power connector on a PC power supply. I added an LED for a power light. My C code isn't very pretty. There is also a bunch of cruft in there from testing and attempts at strange things. (Like support for the page-write mode of the particular EEPROM I was using.) To allow me to provide reasonable sleep times for signals
(clock pulses and whatnot) I make use of the
To do: I'd like to make a comparable simple PIC programmer design, and then a new EEPROM programmer that requires a simple PIC. Loading 256 kilobits via the parallel port takes an awfully long time. The PIC would be able to integrate a UART for serial communications. (Potentially even USB.) | |
| Contact | |