首先,感谢大佬的工作。链接如下:
https://blog.csdn.net/qq_41332806/article/details/111935399
本文只是讨论下在这篇文章基础之上的一个改进。
用原方法一次只能传输512个字节,需要传输更多的字节就会分多次传输。这里只提供个方法,使你可以一次传输的数据量大于512字节。
1)文件xusbps_ch9_winusb.c中的XUsbPs_Ch9SetupCfgDescReply()函数,对bulk out endpoint config,bulk in endpoint config两部分中的wMaxPacketSize改成be2les(0x400)
2)文件Xusbps_COMMS.c中xusb_COMMS_init()函数中,将BufSize,maxPacketSize改成1024
这样最大传输就扩大到1024字节。类似的,之后就可以一次超过512字节传送了。
如下图结果,一次传输518个字节