TMS320F28379D: spi dma问题

Part Number: TMS320F28379D
Other Parts Discussed in Thread: C2000WARE

TI工程师:

您好,请问下SPI发送使用DMA,配置完成后,SPI_writeDataNonBlocking发送数据正常,但是DMA_startChannel(mySPI0_TX_DMA_BASE);
DMA_forceTrigger(mySPI0_TX_DMA_BASE); 触发后总线上没有时钟和数据,但是能触发DMA中断,是还确实什么操作码?

  • 您好

    已经收到了您的案例,调查需要些时间,感谢您的耐心等待

  • 您好

    每当写入TX缓冲区时,SPI都会传输数据,无论是来自DMA还是CPU(如SPI_writeDataNonBlocking())。DMA_startChannel()和DMA_forceTrigger()函数分别启用DMA通道和触发DMA在TX缓冲区中移动数据。通常你不希望这两个同时运行,对于谁在写TX缓冲区,可能会有竞争条件。对于SPI/DMA操作,我建议遵循C2000ware中的SPI_ex5_loopback_DMA示例。请注意,我们没有F2837xD的这个例子,但它可以很容易地从另一个设备移植(例如F28P65x有这个例子)。