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.

CCS/MSP430F5438A: the Code space allocation of Remote upgrade

Part Number: MSP430F5438A

Tool/software: Code Composer Studio

Hi team,

My customer wants to Remote upgrade the code of MSP430F5438A. But he has many questions of the Code space allocation.

1 BankA in FLASH is not continuous. If he wants to erase BankA, will the system automatically adjust the erasing address to ensure that all BankA contents are correctly erased? 

2 Code space allocation as following

   BOOT(0x5C00 - 0x73FF 6KB) 

   Interrupt vector table   -Z(CODE)INTVEC=FF80-FFFF

  APP (0x7400 - 0xFFDF  0x10040 - 0x45BFF )

  Interrupt vector table(0xFE80 - 0xFEFF)

If the APP code is 50K, it means that the program must occupy the second code space, and BankA is not continuous. 

Does he need to have precise control over the address he write to when erasing and writing FLASH?

3 in xcl file, the code segment and the constant segment differ by 0x40 in the code space of the second segment. What is going on?

// ---------------------------
// Code
//

-P(CODE)CODE=5C00-FF7F,10000-45BFF

// ---------------------------
// Constant data
//

-Z(CONST)DATA20_C,DATA20_ID,CODE_ID=5C00-FF7F,10040-45BFF

Please help.

Susan

  • Hey Susan,

    I couldn't find it explicitly stated but the bank erase should erase the entire memory bank, even if the addresses are not continuous in the device datasheet. 

    As for writing to flash, he will need to control the Flash controller.  Typically block writes can be used for copying in the new firmware. 

    I don't quite understand the question about the linker file. 

    I would also like to point you to the MSPSL page, as there is a lot of info there on the built in BSL that can be used to update the firmware. 

    Thanks,

    JD  

**Attention** This is a public forum