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.

TMS320F28027: TMS320F28027 ePWM Interrupt - ADC_SOCx Trigger Delay Problem

Part Number: TMS320F28027

Hi,

I configure F28027 generates an interrupt, when the ePWM1 counter equal to zero. But, there is a delay time between pwm1 signal and jumping interrupt. about ~2usn. (Code is on flash)

When I only move ISR routine to RAM, delay time is 0.6~0.7us. There is same problem on PWM trigger ADC_SOCx. (I works with C2000 Launchpad.) 

Switching period, 10us, therefore this delay is a problem. How can i overcome this ?

Best Regards,

  • Hi,

     There would be some delay involved in servicing the interrupt as seen in your case. What optimization are you using in your project code? Also, how much time does the ISR code taking in your case? Also, please provide more details on why this delay is as problem in your use-case?

    Thanks

    Vasudha

  • This delay time may decrease as the optimization level increases. But it never happens to be zero.

    I just set a GPIO in the interrupt service routine. I am also clearing the interrupt flag. There is nothing that will take time.

    I opened an empty project and just made the adc and pwm settings. No other interrupt functions or codes are available.

    Therefore, this delay is meaningless.

    Thanks

    Ferudun

  • Hi,

    There would be some delay associated with ISR due to hardware and compiler generated context save and restore. May be you can share your code and we can check if there is any other issue with the code.

    Thanks
    Vasudha

  • Hi,

    There would be a little time while jumping to ISR. But, this time is very too much. 

    2 - 2.5us @ ISR Function on flash

    0.5 - 0.7us @ ISR Function on RAM

    At last, I configured the interrupt on zero action.. After interrupt delay, ADC SOCs was triggered.