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.

McBSP CPU interrupt driven

Hi,

I have a basic project with ADC connected to DSK6416T through McBSP port. I want to configure this codec with McBSP0 port. When I am using polling method it works fine, but now I would like to setup interrupts for this transmission.

This is my interrupts initialization:

 IRQ_nmiEnable();
      IRQ_globalEnable();       /* Globally enable interrupts       */
      IRQ_reset(IRQ_EVT_RINT0);
      IRQ_disable(IRQ_EVT_RINT0);
    /* Map TIMER events to physical interrupt number */     
    IRQ_map(IRQ_EVT_TINT1, 14);
    IRQ_map(IRQ_EVT_TINT2, 11);
    IRQ_clear(IRQ_EVT_TINT1);
    IRQ_clear(IRQ_EVT_TINT2);

    IRQ_map(IRQ_EVT_XINT0, 12); // McBSP transmit
    IRQ_map(IRQ_EVT_RINT0, 13); // McBSP receive //13
    IRQ_clear(IRQ_EVT_XINT0);
    IRQ_clear(IRQ_EVT_RINT0); 
     
     IRQ_enable(IRQ_EVT_TINT1);
     IRQ_enable(IRQ_EVT_TINT2);
     IRQ_enable(IRQ_EVT_XINT0);
     IRQ_enable(IRQ_EVT_RINT0);

 

 

Unfortunately when I run project only timer interrupts occurs. Can you tell me how to setup interrupts to handle receiving data from port? I want to send data at specific frequence to port using timer interrupt and then when data from codec will be available on port receive cpu interrupt from IRQ_EVT_RINT0. This is the first idea, later I wll use edma but now I would like to have this part working. McBSP is right now in Digital Loopback mode and as said before works when using polling method. Now I need to enable interrupts. Data appears at DRRO register but none interrupts occurs. Probably it's some issue mistake with interrupts setup but right now I cannot find error. I am using API function and no cdb files (DSP/BIOS Config)

I look forward for any suggestions how to make it working.

 

BR/ Mike