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.

MSP-EXP430G2: MSP430G2553. SFR write problem.

Part Number: MSP-EXP430G2
Other Parts Discussed in Thread: MSP430G2553, ENERGIA

I’ve got an MSP-EXP430G2 LaunchPad with msp430g2553 installed on it. A couple of days ago, after experimenting with the code, I noticed that interrupts in I2C transfer protocol  were not working (it worked fine before). Assuming that I have messed up again I tried to look what the debuger has to say: 

1.When implementing a code bis.b #UCB0TXIE, &IE2 (bis.b #0x08, &IE2) the flag in IE2 registor is not  changed from 0 to 1, like it was just a nop

2. When trying to set up any bit in IE2 register manually (using debuger) the debuger crashes

2.1. In the debug log, following messages appear: 

-Could not perform access, BSL memory segments are protected : (WriteMemory) , address=0x0, buffer=, count=0x2 
-Fatal error: Failed to re-initialize Session aborted! 
-Register Window write operation to 'IE2.UCB0TXIE' failed.

2.2. This error message pops up:


2.3. IDE collapses, debuger crashes, a message about the connection failure appears. All this remains until IDE restart and Launchpad reboot. 
I suspect that Energia can cause the problem, as I have tried to enter its code out of pure curiosity. Even if it reported to me that the device was not found, and the code was not changed, I think it might still introduce some disturbances. But I am not sure. 
In this situation, I wonder what can be the best option. Should I try to reinstall the launchpad frimware? But how? I have tried to look up the manuals, but did not find any answers. 

This are the software I use:
OS: win7 32/64
Compilator: naken_asm / IAR
Flasher: Lite FET-Pro430 Elprotronic / IAR
Debuger: IAR

And here what Lite FET-Pro430 responds about the version of firmware:

I would appreciate any help on this. Thank you!

  • Hi,

    if I understood you correctly you are looking for solutions to the two different issues:
    1) I2C transfer interrupts stopped working
    2) Your debugger crashes when trying to manually set the interrupt enable for the I2C transmission.

    In order to have a better understanding of your issue please let me ask the following questions:
    1.1) What are the conditions under which the interrupt stops working? Can you ensure that the communication actually works but the interrupt doesn't trigger?
    1.2) Is this problem reproducable within the same operating conditions?

    The error message indicates that the code tries to access address 0x0. This is not the address of IE2 and might very well lead to the debugger crashing. Could you doublecheck to access the right memory address when enabling the interrupt?

    2.1) What version of IAR are you using?
    2.2) In what way are you using energia?

    Thanks for clarifying and best regards,
    Britta
  • Hi,

    as I didn't hear back from you in a while I assume that your issue has been solved.
    Please go ahead and verify the given answer to also help other users that might run into the same issue.

    Note that I'll go ahead and close this thread in the next couple of days if I don't hear back from you. Replying to the thread will re-open it if necessary at some point.

    Best regards,
    Britta
  • Good day!

    My problem was solved. Thanks for taking the time for me.

**Attention** This is a public forum