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.

OMAPL137 integration of eHRPWM with DSPBIOS

Hi, everyone

My target is continuously generating sin on eHRPWM, while communication with DSP from ARM

I wrote pwm_isr() which plays with dirty cycle.

My question is how configure ECM to make the pwm_isr() be called for eHRPWM  event  (while  i2c/McASP/DMA/UART also in use)

my current ECM configuration in tci file looks like that (similar to any BIOS example) :

/* ECM configuration */
bios.HWI.instance("HWI_INT7").interruptSelectNumber = 0;
bios.HWI.instance("HWI_INT8").interruptSelectNumber = 1;
bios.HWI.instance("HWI_INT9").interruptSelectNumber = 2;
bios.HWI.instance("HWI_INT10").interruptSelectNumber = 3;

/* Enable ECM Handler */
bios.ECM.ENABLE = 1;

/* SOME OTHER McASP related taks*/

Ive tried to use another HWI_INT6 object with following properties:

bios.HWI.instance("HWI_INT6").interruptSelectNumber = 7;
bios.HWI.instance("HWI_INT6").fxn = prog.extern("pwm_isr");
bios.HWI.instance("HWI_INT6").useDispatcher = 1;

But the isr is not called :(

Any suggestions?

Thanks a lot

Dmitry

 

  • Hello all,

    I've figured out on this page: http://processors.wiki.ti.com/index.php/Setting_up_interrupts_in_DSP_BIOS

    that interrupt should be enabled by calling:

    C64_enableIER(C64_EINT6);

    For some reason this sequence does not work if instead of HWI_INT6 I use HWI_INT5 or HWI_INT4 (without visible error) and HWI_INT11 is not usable also since read only.

    Are  HWI_INT5, HWI_INT4, HWI_INT11 used for something else? Can anybody point me to the doc?

    For a while i setup HWI_INT6 for eHRPWM0 and HWI_INT14 for eHRPWM1 with appropriate  C64_enableIER() calls

     

    Dmitry

     

  • Glad to see this was resolved