我在设备模式下使用 Synopsys OTG 内核。使用专用于该端点的周期性 FIFO 对等时 IN 高速端点 (USB 2.0) 进行编程,以实现每微帧的最大传输量(3 个 1024 字节的数据包)。它在 99+% 的时间里都有效。但有时传输会被截断。例如,前 1024 个字节将使用 DATA0 PID(而不是正确的 DATA2 PID)进入总线,其余 2048 个字节将不会被发送。由于我已经正确编程了数据包计数、多重计数、最大数据包大小和传输大小,我不确定是什么原因造成的。
显然这是一个非常具体的问题,我不太希望得到答案,但我认为在黑暗中试一试值得一试。提前致谢。