ch32v307 usb使用问题

大家好,我首次使用这款IC。对于他的usb有些疑问想请教大家:

1:官方提供的vc例程CH372DBG/DEBUG372/CH372UpDown工程里面为什么打开设备后操作端点上传/下载 却没有指明是操作的哪一个端点?

2:如果pc上有多个用到ch32v307 usb的设备,其中有一个是我属于跟我软件通信工作的,我是通过什么函数扫描出该指定的设备号和设备描述名?

3:CH372UpDown工程中只说明了操作端点读写,但实际上面在软件中怎么判断端点已经有数据上传(可读/已满)/端点已经可以下载数据(可写/已空),这些操作都没有说明。是不是只操作CH375WriteData/CH375ReadData这两个函数是不能够做到上面的要求?必须通过CH375SetBufUpload/CH375SetBufDownLoad这两个函数来做,然后通过CH375QueryBufUpload/CH375QueryBufDownload来查询是否满足条件才进行usb数据操作????

4:使用CH375SetBufUpload/CH375SetBufDownLoad这两个函数来设置缓冲,是不是我软件就没必要再做fifo来缓存读写数据了?

5:ch32v307 usb驱动可以更改设备描述表里面“USB CH372/CH375”名称?比如更改成自己产品的名称:“XXX接口”等方便软件识别。

烦请大家指教,谢谢。

  1. CH372UpDown上面说明是端点2的上下传,一个端点1的上传。

  2. 多设备时,建议使用不同的PID,驱动中有多个pid可以使用,打开设备时指定索引号,然后读一下VID,PID判断是否是要通信的设备。

  3. CH375WriteData/CH375ReadData是指端点2的读写,需要指定端点的函数是CH375ReadEndP和CH375WriteEndP。

  4. CH375SetBufUpload是指驱动中创建一个线程不停的读端点2的数据,并保存数据在驱动中,应用层CH375ReadData读数据是是从驱动缓冲中读数据,CH375SetBufDownLoad类似。

  5. 这个名称显示需要修改驱动的inf文件,改完后需要做驱动的数字签名,不建议用户修改inf文件。


请问能否提供一份例程:Ch32v307使用高速Usb Device例程,要求如下:

1、使用端点1和端点2;

2、端点1用于发送 缓存大小1024;端点2用于接收,缓存大小1024;

3、最好使用双缓冲非同步模式。



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