Ross,
Try putting a pause 100 or so at the very beginning of your program.
The programmer goes through several cycles of power-on and resets to program each section of memory.
And the EEPROM write is one of the first things that happens in the program.
The EEPROM write takes ~5ms, so it's probably getting powered down in the middle of the write cycle.
With a pause at the beginning, it will insure that the programming cycles are completed before it starts running the rest of the program.
I've single stepped through the program several times in the simulator, and everything works fine.
I'm not in the office today, so I can't try it with a real programmer.
Bookmarks