Hi,
I'm woking with the Turbo-Decoder Coprocessor on the C6416 DSP. And I've managed to create an interrupt from the EDMA when the decoding is finished. Everything is running as it should and the code jumps to position 0x100 in the memory where the interrupt service routine (ISR) should lie. My problem is that I don't now how to put the ISR in the right place. The suggestions I've found is that the DSP/BIOS is useful but the problem is that when i run my code with DSP/BIOS code composer studio crashes during the decoding on the coprocessor (before any interrupt).
So my question is: how can I write an interrupt service routine without using the DSP/BIOS?
I've tried to use #pragma and __interrupt void myIsr(void), but this doesn't work. (might be because I'm writing in C++ instead of C?)
I've also tried with the chip support library and the IRQ functionality but the documentation states that:
This function dynamically configures an entry in the interrupt dispatcher table with the information contained in the configuration structure.
To use this function, a DSP/BIOS configuration .cdb must be defined. Two constraints must be met before this function has any effect:
1) The event must be mapped to an interrupt
2) The interrupt this event is mapped to must be using the dispatcher
If either of the above two conditions are not met, this function will have no
effect.
Which I guess means that I need to use DSP/BIOS for that to work?
I've also seen some examples with a vectors.asm files which does the job, but I don't know how I should create or link or include such a file.
I would appreciate any kind of help or suggestion on how to solve this problem!