Go Down

Topic: Using an AMD EEPROM for Arduino Uno storage (Read 224 times) previous topic - next topic

DerpymanMT

Mar 29, 2019, 09:33 pm Last Edit: Mar 29, 2019, 09:38 pm by DerpymanMT
So I've been trying to figure out how to make this eeprom work with my Arduino Uno. I am new to the Arduino and don't know much. The eeprom serial code is AM27C128 I was wondering if the Arduino could read and write to it. Sorry if this isn't a good place to ask. My main goal for what I'm doing is, trying to save some user input data onto it.

knut_ny

#1
Mar 31, 2019, 09:12 pm Last Edit: Mar 31, 2019, 09:28 pm by knut_ny
wow.. U'll need a lot of connections to arduino.  (..or use shiftregisters )

datasheet
Note u'll need 13.5V programming voltage. (needed only while programming)
Ny

DerpymanMT

How would I go about doing that, I'm not the best when it comes to ICs. I'm new to the Arduino, I can only use parts that I have and I might not any shift registers. How would the shift register work with it? If you don't mind explaining.

Lucario448

I can only use parts that I have and I might not any shift registers.
Without shift registers, you'll need like 20 GPIOs, which an Arduino Uno doesn't offer.

Those EPROM (yes I did skipped an 'E' because this is the kind that can only be erased with UV light, not electrically) chips have that many pins because they are designed to work as a "programmable ROM" for a vintage computers or any system that executes code from there and needs instant access (i.e. by sharing data and address lines/buses from the main CPU).


To interface with an Arduino Uno, I would say you'll definitely require two 8-bit (SIPO) shift registers for the address lines.
The data lines should be connected directly into the Arduino pins because they can behave as either inputs or outputs depending on if you're programming or reading.
The address lines always go to the same direction (i.e. for the EPROM itself those are always inputs), so there you should use shift registers (up to 16 outputs controlled by just 2 pins on the Arduino. Also if you want to set this address more quickly, you may use SPI to interface with the shift registers, although MISO and CS are not used in this case.



For the 13.5V required to program... I'll say it's more convenient to step up the 5V that powers the Arduino, with a boost converter.




How would the shift register work with it?
Again, with two "cascaded" 8-bit ones (serial-in parallel-out or SIPO), controlled by two pins on the Arduino (either with shiftIn() or SPI). Those are there to set the address (Ax pins) on the EPROM.

The data lines (Dx pins on the chip) can be connected directly into the Arduino, preferably in port D (aka pin 0 to 7) if you don't need the serial port.

Go Up