Part Number:TMS570LC4357
在第一次DMA发送时,设置如下:
g_dmaCTRLPKT_SCI1_TX.FRCNT = 4;
g_dmaCTRLPKT_SCI1_TX.ELCNT = 1; /* element destination offset */
在下一次DMA发送时,想发送数据长度为8;那么该如何操作。
user6614170:
如何配置SCI的DMA 发送,每次发送数据长度随意大小。
,
Susan Yang:
为了减少在中断模式或 DMA 模式下接收或发送数据时的 CPU 负载,SCI/LIN 模块有八个独立的接收和发送缓冲区。通过设置 MBUF MODE 位启用多缓冲模式。您是否有尝试使用缓冲区?
,
user6614170:
我想表达的是,SCI的DMA发送数据的个数,比如我第一次发送8个数据,那么我配置g_dmaCTRLPKT_SCI1_TX.FRCNT = 8;g_dmaCTRLPKT_SCI1_TX.ELCNT = 1; 而下一次我想发送20个数据,但这时重新配置DMA修改_dmaCTRLPKT_SCI1_TX.FRCNT=20和g_dmaCTRLPKT_SCI1_TX.ELCNT=1后,就发不出去数据了。这和是否使用缓冲区有关联吗?
,
Susan Yang:
您可以使用下面文档的方法scidmaSend()
https://www.ti.com/lit/an/spna213/spna213.pdf