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.

ISRs are not getting called

I have converted a Solar DC DC inverter control suite project, from F28035 to F28027.

Code is running properly, Cpu Timers are working. 

Interrupts are also getting generated in the code by:

IER |= M_INT3; // Enable CPU INT3 for capture interrupt
PieCtrlRegs.PIEIER3.bit.INTx4 = 1;

But, the corresponding ISRs are not getting called.

  • Hi Tanmayee,

    There are a few things to check.  First, you must also make sure that global interrupts are enabled.  Next, most peripherals have an interrupt enable bit within them as well.  In your example you provided the comments indicate this is for the eCAP.  In this case, you must use the ECEINT register to configure when the interrupt is triggered.

    Each peripheral also has its own interrupt flags to verify if an interrupt has been triggered at the peripheral level.  For the ECAP, you can check to see if it reached an interrupt condition by looking at the ECFLG register.  If this flag is set, and the corresponding bit in the ECEINT register is set, then you should be able to look at the PIEIFR and IFR registers as the next step to see if the interrupt propagated to the PIE.

    Thanks,

    Kris

  • Thanks Kris

    I will check the same.

    Regards,

    Tanmayee.

  • Hi Kris,

    Want to mention, I have converted solar inverter DC DC project in control suite  from F28035 to F28027.

    Also have made some changes like, changed the configuration of calling secondary ISR in Main file , by EPWM4 instead of EPWM7(as F28027 supports only 4 interrupts),

    Not used COMP3 (as not present) and associated voltage overload protection.

    I am attaching my project zip file in this post.

    All the interrupts are enabled, still the ISRs are not getting called.

    Could you please help me in this?

    Solar_MPPT_DC_DC.zip