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.

The program stops at the IntMasterIRQEnable() and cannot getout

Other Parts Discussed in Thread: TMS570LS3137

Hi,

Short instruction about the main.c, I uses the rti interrupt to make a count, when the count1is equal to a fix number, the program send a data to the PC through the Ethernet and do something easy when the count2 is equal to another fix number.

About the EMAC,  I put the lwIPRxIntHandler() function in the whlie cycle of the main.c, and disable the EMACCore0RxIsr interrupt in the HCG, the EMACCore0TxIsr interrupt is retained.

Now the problem is when RTI interrupt is enabled, the PC send data to the board every 100ms, after several minutes, the program entered into the IntMasterIRQDisable() function and never back to the main function.At this time, the debug window only have the IntMasterIRQDisable() function alone, I cannot know which function call the IntMasterIRQDisable(), it's very strange.

When I comment the rtiStartCounter() function to stop the rti interrupt, the program goes very well, the phenomenon never occurs.

when enter the rtinotification function, _disable_interrupt_() function is called and then the _enable_interrupt_() is called at the end of the rtinotification. 

Need your help!~

Regards,

yong

  • Hi Yong,

    If possible, can you share the source code? We will take a look at it. 

    Also let us know the device you are trying this on.

    Regards,

    Praveen

  • I have just solve the problem, it's because of the _disable_interrupt_() function in the rtinotification,when comment the disable function, the phenomenon above never occur again.

    The reason why does the phenomenon is still unknow, it may be led to the undefEntry exception, the dabort exception or the phenomenon above.

    When it enters the dabort exception, the program will enter into the _esmCcmErrorsClear_ of the sys_core.asm.

    The project is supplyed here:
    http://e2e.ti.com/support/microcontrollers/hercules/f/312/p/289385/1011394.aspx#1011394

    The device is the TMS570LS3137-PGE(a board I designed), while the program I think can be used on the TMS570LS3137 HDK board, the project has simple CAN module, you can just comment the function.

    Regards,
    yong