Cypress技术william hill官网
直播中

何夏庄

7年用户 943经验值
私信 关注
[问答]

如何传输DMACFG小尺寸的数据?

你好,
我配置的FX3DMA在1024字节的包大小和突发4。DMACFG尺寸为1024x4= 4kb。
如果我想把数据从PC转移到FX3或FX3到PC,专用的API可以用来处理什么?
数据大小小于DMACFG大小(4KB)的传输?

回帖(2)

李大帅

2019-8-13 07:46:28
有几种方法可以做到这一点:
1。如果您的DMA通道从GPIF到其他套接字,那么您可以使用GPIF设计器中的提交操作将部分填充的缓冲区(在您的情况下小于4KB)发送到PC。
2。如果信道是从USB到某个套接字,那么你应该在最后一次传输中发送一个零字节数据包或者发送一个短数据包。例如,如果你只想发送3KB,然后从PC发送3KB,然后发送0字节。最后一个数据包将导致3KB被包裹在USB套接字上。
另一方面,如果你想把3.2kb(女性字节),则不需要发送一个零字节包因为PC发送过去的数据包将被0.2kb(204字节)是一种短包。这短的数据包会导致缓冲区自动结束
三。对于其他类型的插座,你需要使用thecyu3pdmachannelsetwrapup API。这可用于GPIF和USB插座过但并不强制我刚才解释。
举报

李剑

2019-8-13 08:02:26
对于USB输出端点(入口/生产者套接字),我有类似的条件。
没有人在分组大小边界上发送零包。
CYU3PDMACHANNEL StReRAPUP通过周期性调用来正常工作。
这将是一个清洁的调用这个函数只有当它是必要的,当接收到的数据从主机但不包(发布/承诺)。
有没有一种方法来检测输入插座非空的状态?
举报

更多回帖

发帖
×
20
完善资料,
赚取积分