DSPRelated.com
Forums

How to Use Vector Table?

Started by anser mehboob September 8, 2008
Hi everybody

I have a little problem. I am trying to write an EDMA program to copy data from one location to other. After copying; EDMA should generate an interrupt to the CPU and then CPU should run an ISR.
The EDMA sucessfully copies data and also generates an interrupt. I used following code to check that whether EDMA generates an interrupt or not

while(EDMA_intTest(8)!=1){} //works ok
But this interrupt doesnt reach CPU i.e. the CPU never calls ISR. I am also scaning IFR register using

while(IRQ_test(IRQ_EVT_EDMAINT)!=1){}
I am using "HWI dispatcher" to set the interrupt. I think it is something related to "Vector Table". I never used "Vector Table" before. Anyone has any knowledge how to do it. Any help is very much appreciated.
Kind Regards
Try that
first reset it vectors
IRQ_resetAll();
then set the address of it vectors table
IRQ_setVecs(vectors); /* point to the IRQ vector table */then map the EDMA event to an IT event
IRQ_map(IRQ_EVT_EDMAINT, 13);then you can set up your DMA and allow interrupt generation of the channel you selected
then allow this IT
IRQ_enable( IRQ_EVT_EDMAINT );then allow the NMI
IRQ_nmiEnable();This should be better