Skip to content

jobyoung05/Arduino-EEPROM-programmer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Arduino EEPROM programmer

Program a AT28C256P with an Arduino Uno and a couple of SN74HC595N Shift Register ICs

This project (including code and schematic) is licensed under the GNU General Public License v3.0

Wiring

Arduino EEPROM Programmer Schematic

This is how I wired the Arduino up with the shift registers and the EEPROM chip. It looks very confusing but most of that is just the data and address buses, which follow a very logical pin mapping. I've explained these in writing which is probably easier to understand than the schematic:

  • Pins D2-D9 of the Arduino are connected to pins IO0-IO7 of the EEPROM
  • Pins QA-QH of the first shift register (U2) are connected to pins A0-A7 of the EEPROM
  • Pins QA-QG of the second shift register (U3) are connected to pins A8-A14 of the EEPROM

Once you've wired those up, the rest is fairly simple. Just follow the schematic to fill in the gaps.

Code

Current limitations

code.ino contains all you need to program the EEPROM. So far, it is only possible to define the programmed data by defining a byte array within the program itself. I am working on a tool that allows a 32KiB to be uploaded to the EEPROM via a serial interface with the arduino.

Usage

  • Change DATA[] to contain the data to be programmed into the EEPROM. DATA[0] will be programmed into address 0, and so on.
  • Change DEFAULT_VALUE to the value you wish to be programmed into all addresses beyond the size of DATA[].
  • Change READ_LINE_WIDTH to specify how many bytes are printed per line to the serial monitor when reading the EEPROM.

Once you've made all the changes to the code, upload it to the arduino, open up the serial monitor and press either the write button or the read button.

About

Program a CAT28C256P with an arduino uno

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published