You are here

ISSP programmer preserve EEPROM? | Cypress Semiconductor

ISSP programmer preserve EEPROM?

Summary: 2 Replies, Latest post by pabbott on 14 May 2012 03:30 PM PDT
Verified Answers: 0
Last post
Log in to post new comments.
pabbott's picture
8 posts

First, how do you search the forum?  ( I tried to find the answer myself, but can't even figure out how to search within a forum)

Anyway, I need to reflash a lot of devices in the field, but preserve the EEPROM which contains calibration data.

It would save a lot of time (=$) if we don't have to repeat the calibration routine.

Is this possible with the ISSP programmer?


user_1377889's picture
9256 posts


at the right hand upper corner you find a "Keyword Search". The number of found articles are not only restricted to this community, so you'll have to read a bit to find what you're looking for.


The hex-file-format from which a PSoC1 is programmed allows for gaps (not programmed areas). When all other fails, you'll have to edit the file manually and delete the area where your EEProm-area lies.



pabbott's picture
8 posts

Thanks for the suggestion, but it didn't seem to work.

Here's what I did:

I identified the EEPROM section of flash from E2PROM_1.h

#define  E2PROM_1_START_ADDR      (0xff * 64)                        // absolute address of E2PROM_1 EEPROM device
which is 0x3fc0.

In the .hex file, I deleted the following line.


Then tried to load the hex file in the ISSP programmer, but it complained that the checksum was invalid.

So, I initialized the area to zeros in the C code with the following in main.c:

// clear the EEPROM space
#pragma abs_address 0x3fc0 //E2PROM_1_START_ADDR
    const char InitialValues[64] = {0x00};
#pragma end_abs_address

Now, the EEPROM area is all zeros, and I can delete the line without the ISSP programmer complaining.


But alas the EEPROM memory was still wiped when flashing.

Now that I think about it- I guess the chip has to do a full erase in order to be reflashed since it is secured.  Seems like there may be no solution to preserving the calibration data...


Log in to post new comments.