Hi Owen,
Yes, this helps a lot.
Thank you!
Martin
--- In lpc2000@yahoogroups.com, Owen Mooney <ojm@s...> wrote:
> Yes I have. Its easy, but you have to use up a whole page (unless
you read - modify - write) I had lots of spare flash and was typically
saving a configuration just a few times so these limitations didn't
matter.
>
> Code using IAP instructions below.
>
> Accessing the stored structure is just a direct memory access.
>
> The write cycle limitations have been well documented by those
willing to offer an opinion but not answer your question !!!
>
> Owen Mooney
>
> #define IAP_LOCATION 0x7ffffff1
>
> void savesetup(struct SETUP *setup){
> typedef void (*IAP)(unsigned int [],unsigned int[]);
> unsigned int command[5];
> unsigned int result[2];
> IAP iap_entry;
> __ARMLIB_disableIRQ();
> iap_entry=(IAP) IAP_LOCATION;
> // get part ID
> command[0]=54;
> result[0]=0;
> iap_entry(command, result);
> // result in result[1]
> // prepare to erase
> command[0]=50;
> command[1]=14;
> command[2]=14;
> iap_entry(command, result);
> if (result[0] != 0) goto error;
> // erase
> command[0]=52;
> command[1]=14;
> command[2]=14;
> command[3]=14745;
> iap_entry(command, result);
> if (result[0] != 0) goto error;
> // prepare to program
> iap_entry=(IAP) IAP_LOCATION;
> command[0]=50;
> command[1]=14;
> command[2]=14;
> iap_entry(command, result);
> if (result[0] != 0) goto error;
> // program
> command[0]=51;
> command[1]=0x1C000;
> command[2]=(int)setup;
> command[3]=512;
> command[4]=14745;
> iap_entry(command, result);
> if (result[0] != 0) goto error;
> __ARMLIB_enableIRQ();
> return;
> error:
> __ARMLIB_enableIRQ();
> printf("bum");
> }
>
>
> Hi!
>
> Has someone used the flash memory of the lpc21xx for eeprom purposes?
> Or is it more usefull to take an additive eeprom to the design? I only
> want to store some parameters.
>
> Thank you for feedback!
> Martin
>
>
>
>
>
> ____________Message
Re: Subject: Using flash memory instead of eeprom?
2005-02-01 by gewitter2000
Attachments
- No local attachments were found for this message.