AnsweredAssumed Answered

How do I progaram default values into eeprom?

Question asked by Robert Whelan on Feb 2, 2010
Latest reply on Feb 4, 2010 by Robert Whelan
I am trying to program the eeprom in a MC9S08 micro but with no success.
It has something to do with the Linker file?

/* This is a linker parameter file for the mc9s08sl8 */

NAMES END /* CodeWarrior will pass all the needed files to the linker by command line. But here you may add your own files too. */

SEGMENTS /* Here all RAM/ROM areas of the device are listed. Used in PLACEMENT below. */
Z_RAM = READ_WRITE 0x0080 TO 0x00FF;
RAM = READ_WRITE 0x0100 TO 0x027F;
ROM = READ_ONLY 0xE000 TO 0xFFAD;
EEPROM = READ_WRITE 0x1780 TO 0x17FF;
/* INTVECTS = READ_ONLY 0xFFC0 TO 0xFFFF; Reserved for Interrupt Vectors */
END

PLACEMENT /* Here all predefined and user segments are placed into the SEGMENTS defined above. */
DEFAULT_RAM /* non-zero page variables */
INTO RAM;

_PRESTART, /* startup code */
STARTUP, /* startup data structures */
ROM_VAR, /* constant variables */
STRINGS, /* string literals */
VIRTUAL_TABLE_SEGMENT, /* C++ virtual table segment */
DEFAULT_ROM,
COPY /* copy down information: how to initialize variables */
INTO ROM;

_DATA_ZEROPAGE, /* zero page variables */
MY_ZEROPAGE INTO Z_RAM;
EEPROM_DATA INTO EEPROM;
END


STACKSIZE 0x50



This is my code.

/*--- Default parameter values ---*/

#pragma CONST_SEG EEPROM_DATA

uint8_t Defaults[16] = {24,24,24,24,24,0,10,5,27,30,5,0,0,0,0,0};

#pragma CONST_SEG DEFAULT



Can anybody help me solve this problem?

Outcomes