能把USB3.0Test_V1.2程序的源码提供一下吗?自己测试怎么都不能达到这个速度

能把USB3.0Test_V1.2程序的源码提供一下吗?自己测试怎么都不能达到这个速度,用USB3.0Demo根本达不到这个速度。

您好

icon_rar.gifCH372DebugTool.zip

您可以试下这个上位机软件。

可以考虑上传的时候开启缓冲上传。


你好,我看了CH372DebugTool.zip源码和Usb3.0USB3.0Demo在上位机读取数据代码是一样的,都是使用了CH375ReadEndP函数对USB一直读取。测试速度也是一样的。


能把USB3.0Test_V1.2程序的源码提供一下吗?或是给说一下怎么设计才能达到告诉读取,谢谢


可以先测试一下开启缓冲上传的方式,缓冲区自动接收所有数据,CH375ReadEndP函数对USB一直读取缓冲区的数据。


我测试板上用的是咱们提供的HSPI_USB_SPEED_Test与上位机进行调试的,HSPI_USB_SPEED_Test上传是开启缓冲模式吧


缓冲上传是上位机开的一个功能模式哦,和单片机程序无关。


目前我要测试是上位机从USB读取数据的速度。不知道怎么设置上传缓冲,还希望能给说明一下 谢谢!


CH375ReadEndP与CH375ReadData这两个函数什么区别?


您好。

读数据之前先开启缓冲上传:CH375SetBufUploadEx(设备号, TRUE, 上传端点号, 缓冲上传的单包大小(不得小余64K,端点大小的整数倍))

读数据函数使用这个:CH375ReadData(设备号, Buf, (PULONG)&Length)

读数据结束时关闭缓冲上传:CH375SetBufUploadEx(设备号, FALSE, 上传端点号, 0)


注:1.缓冲上传的开启和关闭不需要每次读取都进行,只需要在读数据之前开启,结束之后关闭就可以;

       2.缓冲上传一个设备只能有一个端点开启,多个端点上传另外的端点还是只能使用读端点函数CH375ReadEndP;

       3.缓冲上传开启后,对齐指定的端点读数据时用CH375ReadData函数进行,不需要再指定端点号;



CH375SetBufUploadEx这个函数使用需要什么前提吗,当我使用这个函数与CH375ReadData一起使用时,速率只有10M左右,是我使用的不对还是有什么其他问题,代码如下:



if (CH375SetBufUploadEx(0, TRUE, 1, 1024 * 4 * 1024)) {

printf("***start cache device %d\n",0);

}

else

{

printf("start cache  defail\n");

}


for (;;)  // 循环发送与接收

{


mLength = 4096;


if (CH375ReadData((ULONG)0, mReadBuf, &mLength)) {


if (mLength == 0) {

Sleep(0);  //放弃当前线程的时间片,防止CPU出现100%情况

}

}

else

{

printf("*** Endpoint 1 receive failed! ***\n");

system("pause");

Sleep(1000);

return;

}


CH375SetBufUploadEx(0, false, 1, 0);




上面这段代码有什么问题吗?


目前看代码段没有问题,可以电话联系我:025-52635387 或者给我发送邮件:dxy@wch.cn


只有登录才能回复,可以选择微信账号登录