How hard would it be to build an EPROM writer?

I am just wondering...

How hard, and how much money would I need to spend on building an EPROM writer for:

"27C801-120 8MBIT UV-Eraseable eprom chips"?

Thanks in advanced!

My question would be "why bother?"

8Mbit is only a megabyte - a tiny amount of non-volatile storage, in a huge package.

The answers you're looking for are probably "not very" and "not much".

However, since the only hint as to your location is in your username, it is hard to quantify further.

You will need a reasonably accurate 12.5V supply for the programming voltage, one that you can switch on and off at the right times. The rest is just digital pins. So it's not "hard", but that depends upon your level of expertise.

This is a really old EPROM though (UV-erasable??? that's old school). Did you get a batch of these cheap or something? For that bit density FLASH is much more efficient.

-- The Gadget Shield: accelerometer, RGB LED, IR transmit/receive, speaker, microphone, light sensor, potentiometer, pushbuttons

Depent of your expertise in electronics. A beginer...Hard. A experience hobbyist. no so hard. I have a book title "Experiments with EPROMS" by Dave Prochnow.

The principle is : 1. Select Address lines. 2. Load Data Line. 4. Disable "Chip Select". 5. Apply programing voltage. ( Depend on the Eprom type ) 6. Send programming pulse. ( Very accurate pulse )

I am planning to make an Eprom Programer using the Ardiuno. Because I have a few 2732 ( Blanks ).

I know guys..It is Old School.

How hard, and how much money would I need to spend on building an EPROM writer.

See top of this posting. How ? Do you reseach.

We used to make them all the time, if you're experienced it's a pretty easy job.

Why on earth you would want to these days is another question.

I am planning to make an Eprom Programer using the Ardiuno. Because I have a few 2732 ( Blanks ).

See my last paragraph :)


Rob

@ Graynomad

Well, I have a few "old school" CPU ( 8085, Z-80 and make program for them ) , I some time use an Eprom to make a "HEX to 7 segment display" <-- display 0 to F 74LS47 can only 0-9. I made one in the early 90's using the college I attended. And simply hacking things up and learning.

I know today microcontrollers and EEPROM make things easy. I am trying to lean new things here and I am a "bit rusty".

Thanks for your help.

I will look into the parts that I need.

Wait... Whats the microphone for?

" some time use an Eprom to make a "HEX to 7 segment display" <-- display 0 to F 74LS47 can only 0-9." That's a lot easier to do & control using a shift register (I've even wired up 74F374s to do that, just wrap the output around to the next input, carry into another chip fora dual display - 24mA drive current with old F logic). Have the shift register control the segments directly. Than you can display any characters you want in any font you want: 0,1,2,3,4,5,6,7,8,9,A,b,c,d,E,F,g,H,i,J,L,P,U are all easily done. If you have higher count segment displays (with slanted lines from the center to the corners- 14? 16?) then you can do even more. You don't need an EPROM lookup table, just an array in PROGMEM.

Well, I have a few "old school" CPU ( 8085, Z-80 and make program for them )

I'm often temped to make a Z80 board, just for the heck of it, but I'd probably make an EPROM emulator for development then use a flash chip when finished

There's a thread somewhere here about feeding the Z80 a program one byte at a time on demand from an Arduino.

Found it: http://arduino.cc/forum/index.php/topic,60739.0.html

Sounds like fun.


Rob

I think I will buy the "Gadget Shield" because it has everything I need other than my arduino uno which I already have.

But I am somewhat confused. Are there any examples of what the programming would need to be to connect to a ZIF socket?

re there any examples of what the programming would need to be to connect to a ZIF socket?

If you mean to program an EPROM I wouldn't hold your breath waiting for an example these days. Get the data sheet and go from there. It's pretty simple, put address, put data, put 12v, put write pulse, or something like that (it's been 20 years after all).

Also, get a UV light to erase them. We used to use a small flouro-style tube.


Rob

Are there any examples of what the programming would need to be to connect to a ZIF socket?

A ZIF is (electrically) just like any other socket - there is nothing about it that would require any special programming.

Also, get a UV light to erase them. We used to use a small flouro-style tube.

Check the wavelengths, but today you could probably use LEDs. (don't forget to shield them though)

Ok. My first question is...

My EPROM is 32-Pin, but my arduino has about 20 pins how do I connect it?

I'm a bit rusty on EPROM these days but you need some something like the following (looking at the data sheet)

Address 20 Data 8 Enable 1 G/Vpp 1

I would probably run the data lines directly to the Arduino and use a couple of counter chips to generate the address. So that will be

Data 8 Counter clock 1 Counter reset 1 Enable 1 G/Vpp 1

or 13 pins.

Unfortunately there aren't 8 available pins on a single port with the Uno/duemilanove so you'll have to twiddle the bits a little. For example of you put 6 data lines on the analogue pins and two on another two pins

data = PORTC; // get D2-7 data <<= 2; data |= digitalRead(6) << 1; // get D1 data |= digitalRead(7); // get D0

although there are a 1000 variations.

I just found this link

http://outflux.net/software/pkgs/EPROM/mirror/

It uses a printer port but there may be some useful circuitry there. You'll notice the 4040 counters used for the address.

The programming method calls for 50uS pulses on E with a verify until the verify works. You may have to pulse Vpp as well.

The flow chart for programming is a little confusing, what the heck is "margin mode", and 1st Vcc +6v, 2nd Vcc = 4.2v.


Rob

@Crossroads

Thank for the tips. I did use an eprom for look-up table, but that was 20 years ago. Anyway, thank for that solution.

@Graynomad

Thank for the info and ideas.

@UnderTheSea

Identifies the pins of the Eprom you are using. just Graynomad says. Use CrossRoads solution to connect the Ardiuno. ( for the adddress and the data ) use direct for enable , programing pulse and programing voltage.