yangjiaxu 发表于 2022-2-18 11:08

沁恒CH32F103C8T6的USB

本帖最后由 yangjiaxu 于 2022-2-18 11:18 编辑

请问一下@WCHTech2 ,沁恒CH32F103C8T6的USB与ST的USB的差别是什么?是缓冲区大小不一样是么?现在我想上传一串数据,0119405788,它会上来不定长的数据;感觉像缓冲区不一样导致的;


guijial511 发表于 2022-2-19 11:57

不是很了解,帮顶一下。

chenqianqian 发表于 2022-2-19 12:54

帮顶,等大神回答。

ErrorGz 发表于 2022-2-20 19:45

最近也用了ch32f103的开发板,使用arduino软件开发,按stm32f103的MCU作为目标板。
使用ST-LINK上传程序比ST的慢,但也能上传成功。
USB虚拟串口方面出现一些奇怪的现象:一是通过USB HUB再接电脑时,不一定能识别;二是在PC端向MCU的虚拟串口发送数据必定PC卡死。这两个现象如果使用ST的都没有问题。

求技术人员分析一下

daichaodai 发表于 2022-2-21 08:17

版主大大还不来解决吗?

WCHTech2 发表于 2022-2-21 10:00

您好,关于CH32F103的USB与同型号ST的USB的区别在于,CH32F103在兼容USB的同时,增加USB设备低速模式,增加内置电阻,其余完全兼容;此外,CH32F103还新增USB2.0全速控制器,支持主机模式和设备模式。关于CH32F103对比其他同级产品的功能异同,具体可参考下面链接手册:
http://www.wch.cn/downloads/CH32F103DS1_PDF.html

yangjiaxu 发表于 2022-2-21 11:37

ErrorGz 发表于 2022-2-20 19:45
最近也用了ch32f103的开发板,使用arduino软件开发,按stm32f103的MCU作为目标板。
使用ST-LINK上传程序比S ...

这个烧录的话,需要用JLINK或者DAPlink然后选择沁恒提供的flm算法才可以哦,如果直接用ST的算法烧录的话属实会很慢,大概会操作1分钟呢;

第二个问题,这个我也是USB部分遇到了问题,暂时还没解决;不过可以看看手册,看看能不能找到答案

yangjiaxu 发表于 2022-2-21 22:31

WCHTech2 发表于 2022-2-21 10:00
您好,关于CH32F103的USB与同型号ST的USB的区别在于,CH32F103在兼容USB的同时,增加USB设备低速模式,增加 ...

感谢您的技术支持,但是我暂时不清楚我出现这个问题的原因是由什么导致的,我使用的是射频读卡模拟HID键盘方式进**号上传至电脑软件端,现在可以上来数据,就是数据不正确,能给个思路么?我好对应去找解决方法;

ErrorGz 发表于 2022-2-22 13:41

yangjiaxu 发表于 2022-2-21 11:37
这个烧录的话,需要用JLINK或者DAPlink然后选择沁恒提供的flm算法才可以哦,如果直接用ST的算法烧录的话 ...

感谢回答。{:smile:}

WCHTech2 发表于 2022-2-22 14:09

yangjiaxu 发表于 2022-2-21 22:31
感谢您的技术支持,但是我暂时不清楚我出现这个问题的原因是由什么导致的,我使用的是射频读卡模拟HID键 ...

您好,如果你是模拟HID设备的话,比如鼠标键盘,一般限定端点最大包长度不超过8字节,如果超过8字节,数据传输就会出现异常,你可以检查一下描述符限定端点的最大包长度是多少,你可以改为最大包64字节。

WCHTech2 发表于 2022-2-22 14:18

ErrorGz 发表于 2022-2-20 19:45
最近也用了ch32f103的开发板,使用arduino软件开发,按stm32f103的MCU作为目标板。
使用ST-LINK上传程序比S ...

您好,附件为模拟CDC例程,你可以参考测试一下!,关于HUB问题以及卡死问题,你可以用例程测试一下是否会有此问题。

ErrorGz 发表于 2022-2-25 16:49

WCHTech2 发表于 2022-2-22 14:18
您好,附件为模拟CDC例程,你可以参考测试一下!,关于HUB问题以及卡死问题,你可以用例程测试一下是否会 ...

谢谢回复,试过官方CDC例程,直插USB有模拟串口,发送数据正常不卡死。而通过USB HUB还是不能识别。

对于程序代码差异比较大,很难做比较,例如发现USB设备描述符,bInterfaceProtocol位,arduino STM32的代码是0,而CH32例程代码是1。

主要是arduino开发方式比较简易也简洁。

tpgf 发表于 2022-3-3 19:49

可以对比一下手册数据

xiaoqizi 发表于 2022-3-3 20:56

可以用什么模拟呢

木木guainv 发表于 2022-3-3 21:08

发送数据速度加快会卡死吗

yangjiaxu 发表于 2022-3-4 08:25

木木guainv 发表于 2022-3-3 21:08
发送数据速度加快会卡死吗

快也是标准的USB速度吧,所以不会卡死的哦

七毛钱 发表于 2022-3-11 10:15

对数据发送速度快慢有影响吗

liqingfeng123 发表于 2022-3-18 14:58

USB眼图能发一下?
页: [1]
查看完整版本: 沁恒CH32F103C8T6的USB