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.

MSP430F2617 UART Problem

Other Parts Discussed in Thread: MSP430F2617

I am using MSP430F2617 in my project. I have created a sample code for uart(A1 module) using grace.I have enabled the transmit interrupt. The transmit interrupt occurs when the Tx buffer is empty and while returning the controller goes to the 0x0000 address location and the processor begins execution from the beginning. I have attached the entire project for the reference. Help me in solving this.

 

1033.UART_Test_2617.zip

  • What you describe usually happens when there is an interrutp enabled but no ISR for it. GRACE shouldn't do this mistake.

    What I see is that RX interrupt is enabled, btu the RX ISR doesn't handle it (so if by chance an RX interrupt happens, this will lead to an eternal RX interrupt loop)

    However, the watchdog timer is disabled by GRACE, so this isn't the reason for the observed behaviour.

    You also don't have nested interrupts (which could cause a stack overflow) or use extensive amounts of local variables (also stack overflow).

    But I dimly remember a bug in some CCS revision where the return address of an interrupt was reported as 0x0000 by the FET. (there was a long thread in this forum, some time ago)
    To check this, try the following: create a global volatile variable (volatile unsigned int count = 0;) and increment it inside the the ISR.
    In main, you check whether count changes. And set a breakpoint to this case. So you don't have a breakpoint inside the ISR.

**Attention** This is a public forum