This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hello,
im using msp430f5328 and writing a code snippet to update a firmware by write .hex to flash, i divided the FLASH and FLASH2 into two partitions for firmware1 and firware2 each , as i read that reset vector and initialization tables MUST exist in FLASH not in MSPx extended flash
FLASH_FIRM1 : origin = 0x4400, length = 0x1388
FLASH_FIRM2 : origin = 0x5B88, length = 0x1388
FLASH2_FIRM1 : origin = 0x10000,length = 0x88B8
FLASH2_FIRM2 : origin = 0x18CB8,length = 0x88B8
.text : {}>> FLASH2_FIRM2 /* CODE */ .text:_isr : {} > FLASH_FIRM2 /* ISR CODE SPACE */ .cinit : {} > FLASH_FIRM2 /* INITIALIZATION TABLES */ .const : {} > FLASH_FIRM2 /* CONSTANT DATA */ .cio : {} > RAM /* C I/O BUFFER */ .pinit : {} > FLASH_FIRM2 /* C++ CONSTRUCTOR TABLES */ .init_array : {} > FLASH_FIRM2 /* C++ CONSTRUCTOR TABLES */ .mspabi.exidx : {} > FLASH_FIRM2 /* C++ CONSTRUCTOR TABLES */ .mspabi.extab : {} > FLASH_FIRM2 /* C++ CONSTRUCTOR TABLES */
i used msp Intrinsic __data20_write_char to write in extended flash area, after finish writing the first chunk of bytes, and when it goes to received next chunk from SPI the MSP430 just hangs and when i stop the debugger it gives "No source available for "0xXXXX" " with random addresses each time.
is there any clue what i did wrong and if there a better way to implement this?!!
Thanks in Advance,
Sima
The hardware already divides the flash into 512-byte segments. Your flash programming software must mirror that.
i modified partitions in cmd file to align with 512-byte segments but still the same error occurs
**Attention** This is a public forum