So the interrupt never fires? I might have a slight idea :P.
Set the interrupt using a dynamic vector (Nvic_SetVector(....)), to the function with a different name (this one is reserved). There is a double bug with the K22F interrupt vector: Firstly it is relocated to the wrong location (in the middle of the RAM, so if you use near 50% of your RAM, it will crash. I reported the bug, still open). Secondly is that it only relocated part of the interrupt vectors. I am not sure, so maybe it isn't the problem, but if the DMA is one of those it does not relocate, it will crash.
If you set it dynamically it does not need to relocate anything. The first bug is still relevant then, but you arent using that much ram yet (when you end up at 0x1FFFE000 you have a problem), and the second one should be circumvented.
I am trying to set up DMA with I2S in a FRDM K22F. I got I2S running and the module it writing data to the I2S0_RDRO register. I have it set up to request DMA on FIFO Request Flag. I am now having a very hard time with DMA. My code is below:
I have a while (1) loop in main which just reads to DADDR register to make sure the destination address of my BUFFER_A is updating correctly. But it isn't and my code is crashing: