2009-06-02 12:28 AM
Hard Fault Exception: DMA Interrupt
2011-05-17 04:13 AM
Hi,
I have tried the 'DMA\FLASH_RAM' example in the firmware library on a Primer1 and it keeps jumping to the hard fault handler instead of the DMA1_Channel6_IRQHandler. It is just supposed to copy an array from flash into an array in RAM. The DMA operation is carried out and if the DMA_IT_TC interrupt is not enabled then execution continues as normal (it flashed some LEDs). I have included a copy of the Ride7 project (code-limited version). The source code has been slightly modified from the library version. If anybody can help I'd be very grateful. Thanks. Regards, Nick. [ This message was edited by: nickkinchin on 31-05-2009 19:48 ] [ This message was edited by: nickkinchin on 31-05-2009 19:49 ]2011-05-17 04:13 AM
Hi,
I've just noticed that the vector address value at 0x0000_0080 (DMA_Channel6) is equal to 0x00000000. Although I don't yet know why! So the code is probably OK. Regards, Nick. [ This message was edited by: nickkinchin on 31-05-2009 19:50 ]2011-05-17 04:13 AM
The solution can be found in your posts:
- DMA_Channel6 - DMA1_Channel6_IRQHandler Watch out for the names!!! I think, at some places they use DMA1_* somewehere else DMA_*. Regards, Michael2011-05-17 04:13 AM
Hi Michael,
Yes, thanks. I noticed this too and posted it on the the Ride7/ARM forum yesterday (although it's not really a Raisonance problem). http://raisonance-forum.xsalto.com/viewtopic.php?id=2831 Is it an ST library problem? Where is the latest library and will it be fixed? I have just fixed my own copy of the lib anyway. Thanks again for your reply. Regards, Nick. [ This message was edited by: nickkinchin on 02-06-2009 13:02 ]