Arduino Eeprom Programmer



  1. Arduino Eeprom Programmer Github
  2. Arduino Eeprom Programmer 24cxx

Create an account to leave a comment.Already have an account?Log In.

Has anyone gotten this to work? I hooked up my Mega to match the sketch and the picture, but I'm still unable to write to the memory of my AT28C256 chip.

  • The program that is used with the K150 programmer is basic but works for uploading HEX code, so I set out to emulate the function of the programmer board, which includes a working USB-Serial link.
  • EEPROM stands for Electronically Erasable Programmable Read-Only Memory. It allows for values to be written and stored for long periods of time while using very little power. Most microcontrollers even have EEPROM directly in their circuitry, such as the ATmega328P (Arduino Uno chip), which has 1KB of it.
  • For much more, check out the complete video describing the hardware and software for programmer in detail. This EEPROM programmer was designed as part of a larger project to build an 8-bit computer from scratch. There's a whole series of videos about this project on YouTube as well.

Are you sure?yes | no

Do you have a schematic? I've guestimated wire up by looking at the pictures, but its not working. The Sketch code uses 16 (0-15) address lines, but the AT28C256 only has 15 (A0-A14 and there is no A15). Where does the extra address line hook up to. Ive changed the sketch to ADDRESS_BUS_SIZE variable to 14.

Reading and Writing Data to External EEPROM Using Arduino: EEPROM stands for Electrically Erasable Programmable Read-Only Memory.EEPROM is very important and useful because it is a non-volatile form of memory. This means that even when the board is powered off, the EEPROM chip still retains the program that.

Are you sure?yes | no

I made one like this as well, it is a great tool for learning these chips. After a while I rebased the code on MEEPROMMER. You have to play around with the cycle times and retry-scheme to speed-up things. The code can get tricky from there. Still it is worth looking at it. https://github.com/mkeller0815/MEEPROMMER

Arduino Eeprom Programmer

When I got to the point of locking/unlocking ATmel EEPROMs I found some issues with that. I debugged them (there is a problem in MEEPROMMER). I got it to work, but I had a 'proper' programmer shipped from China as well and never looked back. They are so much faster, easy to use, and quite cheap.

I just saw 'The 8-bit Guy' just unbox exactly the programmer I'm using!

Are you sure?yes | no

I did something like this before! Pain to do, and I only got it working once :P Cool to see this on HaD

Arduino Eeprom Programmer

Are you sure?yes | no

Expand your board's storage with an I2C-enabled EEPROM chip.

  • 11,455 views
  • 0 comments
  • 19 respects

Components and supplies

Arduino Eeprom Programmer
Microchip Technology AT24C02C 2KB I2C EEPROM
×1
Arduino UNO
×1

Necessary tools and machines

Apps and online services

Arduino IDE
Eagle

About this project

What is EEPROM?

EEPROM stands for Electronically Erasable Programmable Read-Only Memory. It allows for values to be written and stored for long periods of time while using very little power. Most microcontrollers even have EEPROM directly in their circuitry, such as the ATmega328P (Arduino Uno chip), which has 1KB of it. But what if that’s not enough? SD cards have much greater storage sizes, but are also more complex, physically larger, and use more power. In this tutorial, I will show how easy it is to add another 2KB of non-volatile storage to a project with the 24C02 EEPROM IC.

Breaking Out Pins

Arduino

The chip I chose comes in several packages, but because I needed to mount them on PCBs, I went with the SOIC-8 package, which is a surface-mount variant. To begin, I added the EEPROM IC part into Eagle, along with a 3-pin header for the ADDR pins and a 5-pin header for the other pins. Then I simply routed net segments between the pins to connect them.

Next, I laid it all out on a PCB by placing the IC first and then the headers on either side. I made sure that they were directly lined up, as crossing the paths adds a lot of unnecessary complexity.

I used Chilipeppr to generate Gcode for my CNC router, which I used to mill the traces on the board. Then it was simply a matter of soldering everything together.

Wiring

Connecting the EEPROM chip to an Arduino Uno board was simple. Here is a list of connections:

The address pins are only necessary if more than one EEPROM chips are going to be used. If that is the case, just increment the three-bit address value for each new chip. For example, the third IC would have these pins connected:

Writing New Data

To write data, first ensure the WP (write protect) pin is connected to GND. The device address is first sent with a value between 0x50 and 0x57. Then an eight bit must be added on to then end which toggles between reading or writing. To write, it gets set to 0. To demonstrate, the address byte of the first IC as a write operation would be 1010000.

Next, an address is specified for the data to be written to, followed by the byte to be written. Using the Wire library, this looks like:

Reading Data

Reading data from the chip is done in a similar way. First, the target storage address must be selected. This is done by sending a dummy write command to load in the target address. Next, one byte is sent containing the device address and the read/write bit as 1. The EEPROM chip then sends one byte of data in return. This looks like:

Arduino Eeprom Programmer Github

What’s Possible?

By using an EEPROM chip instead of an SD card, you can save space, power, and complexity. If you have a project that needs to store initial values for a game or have a save state, an EEPROM chip is perfect. It allows for the storage of values even after the main microcontroller has been powered off.

Code

Schematics

Arduino Eeprom Programmer 24cxx

Author

Arduino “having11” Guy
  • 35 projects
  • 443 followers

Published on

August 13, 2019
Write a comment
Eeprom

Members who respect this project

and 12 others

See similar projects
you might like

Table of contents

Write a comment