TI中文支持网
TI专业的中文技术问题搜集分享网站

CC3220SF SPI通信,DMA异常中断问题

改写spimaster程序后运行,运行程序会跳往ti.drivers.config文件中的DMA中断处理函数中,并进入死循环后中断,请问是什么原因呢?

* =============================== 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);
}

Kevin Qiu1:

ti.drivers.config中是一些驱动配置,你修改了哪些部分

,

user6390304:

我使用tcpecho例程,在里面添加了一个新的线程,ti.drivers.config文件中的驱动配置我没有修改过,我只是删除了.syscfg文件中的SPI部分,然后用到的其它驱动配置我新建了一个.c和.h文件复制了进去。

,

user6390304:

这个问题,如果每次加载程序前先复位硬件,就不会产生中断,到底是什么原因呢?如果不复位的话,就可能出现运行程序后一次出现中断一次正常的情况,说不准哪一次会正常运行,是什么原因呢?

,

Kevin Qiu1:

如果用的是SPI DMA,删掉SPI肯定会影响DMA,建议你在原有基础上进行修改

赞(0)
未经允许不得转载:TI中文支持网 » CC3220SF SPI通信,DMA异常中断问题
分享到: 更多 (0)