This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

使用CC3220SF芯片,修改SPI例程之后,出现了DMA错误中断,程序运行到ti.driver.config文件中的DMA错误处理函数之后进入死循环,请问这样的DMA错误可能是由什么原因导致的?还有就是运行程序的时候一次正常一次异常中断,如果运行程序之前复位硬件设备就可以正常运行。

Other Parts Discussed in Thread: CC3220SF

程序运行到下面的函数内停止

* =============================== DMA ===============================
*/

#include <ti/drivers/dma/UDMACC32XX.h>
#include <ti/devices/cc32xx/inc/hw_ints.h>
#include <ti/devices/cc32xx/inc/hw_types.h>
#include <ti/devices/cc32xx/driverlib/rom_map.h>
#include <ti/devices/cc32xx/driverlib/udma.h>

/* Ensure DMA control table is aligned as required by the uDMA Hardware */
static tDMAControlTable dmaControlTable[64] __attribute__ ((aligned (1024)));

/* This is the handler for the uDMA error interrupt. */
static void dmaErrorFxn(uintptr_t arg)
{
int status = MAP_uDMAErrorStatusGet();
MAP_uDMAErrorStatusClear();

/* Suppress unused variable warning */
(void)status;

while (1);