CH32F208 USB数据传输发生错误后,端口不能上传数据该如何处理

image.png

usb和上位机通讯过程中因为一些原因导致出错,比如报 USTS C0000012 等这样的一些或其他错误后,usb的上传端口就不能上传任何数据了,通过调试跟踪发现上位机下发的数据是正常的。这个时候从新拔插USB就能恢复通讯,请问改如何检测这种错误并处理,谢谢

查了下 这个错误的解释

USBD_STATUS_BABBLE_DETECTED 0xC0000012 The device returned a babble detected error (defined for backward 


compatibility with the USB 1.0)."babble"错误. 检测到设备返回了一个无意义的数据


"babble"错误. 一个"babble"错误发生当端点接受数据多于端点的特定最大报文大小.已经超过设置的最大发送的报文长度了

那在发生错误后改如何复位,怎么恢复通讯。发生错误后是否会触发usb控制器的哪个中断?如何复位这个错误


你好,请问USB通讯具体是什么样的应用场景呢,是什么类型的设备,USB使用哪一种传输方式?

根据报错的解释分析,需要检查实际返回的数据大小是否与描述符中定义的返回长度一致;复位不能从根源上解决问题,通讯中实际上传数据需要根据描述符中定义的长度来返回,可避免此类错误。

后续可将具体的问题描述发至邮箱:liuy@wch.cn



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