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.

Program Information Memory(B,C,D) with MSP-GANG.dll

Other Parts Discussed in Thread: MSP-GANG, MSP430G2432

Hi,

We need help in usage of MSP-GANG.dll.
We want to program Information Memory(B,C,D) of MSP430G2432 through MSP-GANG.dll.

We are are able to program the main memory but unable to
program the INFO MEM(B,C,D).

The Configuration(below) is done according to the manual(slau358g).

CFG_FLASHERASEMODE(11)
//ERASE_PRG_ONLY_MEM_INDEX(2)
CFG_ERASEINFOA(12)
//disable(0)
CFG_ERASEINFOB(13)
//enable(1)
CFG_ERASEINFOC(14)
//enable(1)
CFG_ERASEINFOD(15)
//enable(1)

Please let us know what is the correct configuration in MSP-GANG.dll
to erase INFO Memory(B,D,C).

Best Regards
kummi

  • Hi Kummi,

    Are you using the example DLL project in the MSP-GANG install location? C:\Program Files (x86)\Texas Instruments\MSP-GANG\Examples\C_Applications_MSP_DLL?

    In DLLtest.c, you can see the function main(). In this function, first pMSPGangDefaultConfig() is called to load the default configuration. Then a few lines down you can see that pMSPGangSetConfig() is used to set the Vcc value. You are going to do something similar - you will use pMSPGangSetConfig() to set the erase for info b/c/d.

    This would look like:

     pMSPGangSetConfig( CFG_ERASEINFOB, 1 );

     pMSPGangSetConfig( CFG_ERASEINFOC, 1 );

     pMSPGangSetConfig( CFG_ERASEINFOD, 1 );

    Then continue with the rest of the code as in DLLtest.c to create the image and program the device. Is this how your code is written? Are you basing your code off of the Example project in the MSP-GANG install, and just modifying it?

    Do you have the latest version of the MSP-GANG software installed - the latest version is 1.1.10.0. http://software-dl.ti.com/msp430/msp430_public_sw/mcu/msp430/MSP_GANG/latest/index_FDS.html

    Regards,

    Katie

  • Hi Katie,

    Thank you so much for the information.

    With your advice we were able to perform the necessary operation.

    But, we need below confirmation about the latest latest version of the MSP-GANG (1.1.10.0)

    Confirmation1:
    With the latest version the INFO A seems to be protected from erase.
    in the function MSPGANG_SetConfig(CFG_ERASEINFOA,EraseINFOA)
    the INFO A is not erased even if we write "0" or "1" to EraseINFOA.
    could you please confirm if this is a correct behaviour....

    Confirmation2:
    As the customer deleted the INFO A memory by mistake,
    we want to update INFO A with DCO calibration...
    In the previous version we were able to update INFO A memory only
    but in the latest version we get below error for INFO A DCO Calibration update....
    ERROR 385:Nothing to program/Verify-empty code in selected memory space.

    But it programs properly if we write some data(like FF) on the
    region other than DCO Calibration memory address of the INFO A.

    Best Regards
    kummi.

  • Hi Kummi,

    INFO A is special in that it is normally locked from erase/program access (this is to try to help protect the DCO calibration constants).

    I think the root cause of both of your issues is that you need to do one extra step to unlock infoA - use:

    pMSPGangSetConfig( CFG_MASSERASE_AND_INFOA_EN, 1 );

    pMSPGangSetConfig( CFG_ERASEINFOA, 1 );

    I think this will unlock INFOA/enable it for erasing and programming. It seems to work correctly if I include this line when I tested it here.

    Regards,

    Katie

**Attention** This is a public forum