My whole issue is I am trying to use SPI2 with DMA. When the DMA finishes, it calls a service routine. The problem comes when I go to install the service routine with the following statements:
_int_install_isr(DMA15_INTR_VECTOR, (INT_ISR_FPTR) MLCD_isr, NULL);
_bsp_int_init(DMA15_INTR_VECTOR, SPI_INTR_PRIORITY, 0, TRUE);
DMA_INTR_VECTOR is 31
MLCD_isr is the address of the interrupt service routine
If I set SPI_INTR_PRIORITY to 6, the isr never gets called. If I set it to 4 or 5, it does get called. What priority is it comparing it against?
Also in my program, I use the SD card driver (again this is using MQX and a K70). When the SD card driver is not installed the software always resets correctly when power is applied (Freescale tower board) or the reset button is pushed. When it is installed, the code does not always restart correctly. I turn on an LED on the board after the SPI transmits a string of characters (including the isr call), that's how I know. If the SD card driver is installed (sdcard_handle = OpenSDcard(sdcard_name); ), the software does not always reset correctly. At this point the only thing that is done with the SD card is to install the driver; no other reads or writes.
I trying to figure out how to narrow down where things are going wrong. Any suggestions?