I know that not everyone finds command-line utilities friendly … so I’ve written a Windows app for my Simple EEPROM Programmer project.
It’s only small, and should be considered quite beta at the moment – but I thought I’d make it available now in case it’s useful to anyone. Feel free to send me any bug reports, and I’ll see what I can do.
The app itself is available for download from the Simple EEPROM Programmer page.
Ha, no, none of that! Just unzip the exe and run it. Which might make your anti-virus software go a bit mental.
If it won’t run for you, let me know what error message you get. It’ll almost certainly be a DLL that gets installed with Visual Studio, but not by default. When I know what runtime you need to get installed from Microsoft’s website, I’ll put a link here.
Serial ports available on your machine should be enumerated in the drop-down. If you plug-in your programmer after you’ve run the software then you can rescan your COM ports with “File -> Rescan COM Ports”.
Use the “Test” button to make the software connect to that COM port and ask the programmer for its firmware version (which at the moment, is always 0.01). If it fails for any reason then it’ll tell you, but if it works then it will put the version number in the “HW Version:” box.
Select the EEPROM size in the relevant dropdown.
Use “Data -> View” to open a hexdump window showing the contents of the buffer (that’s the workspace for the program – not the EEPROM). “File -> Load ROM Image …” will let you choose a file to load into this space.
The “Read EEPROM” button will read the ROM or EEPROM into the data view.
The “Write EEPROM” button will write the data from the data view into the EEPROM.
The “Verify EEPROM” button will read data from the ROM and compare it against what’s currently in the data view. It’ll moan as soon as it finds data that doesn’t match.
Use “File -> Save ROM Image …” to save what’s currently in RAM to a file.
I’ve added the ability to write 0x00s, 0xFFs, or random data into the data view (look at the Data menu). I’ve provided these just in case you ever want to blank an EEPROM.
Every so often, the “Test” operation fails. But then when you retry it, it’s fine. I’ll fix that ASAP.