Home arrow Support arrow Forums

Luminary Micro Forums

tim124

Expert Boarder

2008/10/29 05:23

Keil flash gap...

I've got a program that saves variables to the flash. Whenever i re-flash the luminary i have to reload all these variables over the uart.

Is there any way to get Keil to not erase and program certain blocks of flash?

login or register to reply

cb1

Platinum Boarder

2008/10/29 07:32

Re:Keil flash gap...

Don't know about Keil - I'm told IAR provides a mechanism which reserves selected flash blocks - achieving your goal.

In the interim - consider 8 pin eeprom to store this data - at least till you uncover a method to place it permanently in flash.

login or register to reply

LMI Kyle

Expert Boarder

2008/10/29 11:48

Re:Keil flash gap...

You can tell Keil to only erase the necessary flash pages instead of the entire flash when using one of the Keil ULINKs. This is configurable in:
Options Dialog->Utilities tab->Setting button (with ULINK Cortex-M3 selected).

Another alternative is to use LM Flash Programmer for programming and Keil for debugging. LM Flash Programmer allows you to erase only the necessary flash pages.

login or register to reply

tim124

Expert Boarder

2008/10/30 08:24

Re:Keil flash gap...

The flash is holding some data maps that are programmed from the the PC software ive designed. the only reason ive asked is that the code development is getting tedious when i have to keep updating the maps!

login or register to reply

cb1

Platinum Boarder

2008/10/30 16:31

Re:Keil flash gap...

@Tim124-

Has LMI Kyle's post helped/solved your issue? My firm designs/produces economical HMIs - and we have to download ~50-80KB of custom font @ image data. The extra "wear & tear" this caused may be similar to what you're protesting.

Our cure was to use a fast, SPI EEprom which holds up to 4MB. If this proves too slow you can implement off-chip Sram - and transfer from the 8 pin SPI eeprom into the Sram. We designed a cpld to generate/manage the adddress & data lines - demanding only 1 8 bit port from LMI & several control pins. Might this help you?

login or register to reply