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/MSP430F135: Trouble saving the memory correctly. Will not load bin file, "Trouble Writing Memory Block"

Part Number: MSP430F135
Other Parts Discussed in Thread: MSP-FET430UIF, UNIFLASH

Tool/software: Code Composer Studio

Hello, 

I'm new to working with TI MCU's. I'm trying to save from and write to the Flash Memory of a MSP430F135 MCU using the MSP-FET430UIF V1.4A and UniFlash V4.6.0.2176 on Windows 10. 

I'm not exactly sure what part of the memory I am to save. I was successful at saving the memory from 0x0 to 0x3FFF as a .bin file (16KB, the Max Flash Memory size). I performed a Mass Erase of the device. I then Loaded the bin file with the "Binary:" checked but "Address:" blank (I don't know what to enter) and get the following errors:

[ERROR] MSP430: Trouble Writing Memory Block at 0x0 on Page 0 of Length 0x4000: Could not write device memory

[ERROR] MSP430: File Loader: Verification Failed: Target failed to write 0x0000

I entered value 0x3FFF in "Address:" but get the following error:

[ERROR] MSP430: File Loader: Verification Failed: Values at address 0x3FFF do not match Please verify target memory and memory map.

I think I'm saving it wrong. Can someone please help me with this? Thank you in advance.

Roger

  • Roger Richardelli said:
    I was successful at saving the memory from 0x0 to 0x3FFF as a .bin file (16KB, the Max Flash Memory size).

    The MSP430F135 datasheet shows that the 16KB of main flash memory is from addresses 0xC000 to 0xFFFF:

    Whereas the address range 0x0 to 0x3FFF covers peripherals, RAM and vacant memory.

    To save the contents of the program in flash you need to therefore save the contents of address range 0xC000 to 0xFFFF, and Uniflash should then be able to write that address range to another device.

    If the program uses the Information Memory, address range of 0x1000 to 0x10FF, you may also need to save that address range.

  • Thank you! I entered 0xC000 and 0xFFFF and after I clicked Generate I received an error at the top of the screen stating:

    "Attempted to read past the end of memory at 0x10000"
  • Elektro said:
    I entered 0xC000 and 0xFFFF and after I clicked Generate I received an error at the top of the screen stating: 


    "Attempted to read past the end of memory at 0x10000"

    OK, I installed UniFlash V4.6.0.2176 under Ubuntu to check the GUI. The dialogue wants a start address and number of bytes, rather than start and end addresses:

    That means you need to enter an address of 0xC000 and number of bytes as 0x4000

  • Image result for doh

    It works now. Thank you very much for your help!