Join our technical discussions about Freescale Microcontrollers: M68HC12. (Freescale Semiconductor is a Subsidiary of Motorola).
|
Hello. I finally got my serial bootloader to work on the mc9s12a256b. OK. So I take the application that I'm trying to load, move the vectors, recompile and run it through SRecCvt. SRecCvt doesn't like the ".eeprom" segment created by the linker because it's outside the c0000 to fffff address space. Now, the program to be loaded is in C and uses the Cosmic "@eeprom" to define some variables in eeprom (hence the ".eeprom" segment), but doesn't actually load anything into eeprom when loaded with the BDM, so I tried moving the ".eeprom" segment to Flash and I also tried excluding it from processing by SRecCvt by naming all the segments except it with the -n option. In both cases, the program loads with the bootloader and runs fine after loading, but none of the variables defined with @eeprom get stored to eeprom. I know the bootloader only programs flash, but since the variables defined with @eeprom are just variables with no value at compile time is there any workaround? I know I can change the program to be loaded to write to eeprom directly instead of using @eeprom variables but it's an application which has been validated for a medical instrument and would have to undergo new validation. Any suggestions? Regards, Steve Henck |