[问题已解决]N32G435使用USB模拟CH340失败,请教大神
本帖最后由 dyc1229 于 2023-8-8 10:35 编辑由于win7下驱动安装不方便,所以想让N32的CDC直接模拟CH340。参考了网上STM32模拟CH340的程序,结果并不理想。现在插上USB,系统可以识别,也可以正常打开虚拟串口,但是不能发送数据。以下是使用USBlyzer获取的数据,枚举应该是没问题了,但是截取的数据好像找不到端口程序与stm32的已经比对过,没找到具体的原因。有没有大神能帮忙分析一下,万分感谢
另外也附上了STM32测试成功的程序,有需要的可以参考23/8/8问题已经找到了,原因还是出在端口配上,眼瞎了,tx与rx的配置搞反了,所以一直无法正常通讯。非常感谢代理的技术支持。// SetEPRxStatus(ENDP2, EP_TX_NAK);
// SetEPTxStatus(ENDP2, EP_RX_VALID);
SetEPTxStatus(ENDP2, EP_TX_NAK);
SetEPRxStatus(ENDP2, EP_RX_VALID);非常低级的失误,来回看了多少遍就是没发现,气死了
这样将usb_prop.c中的端口配置搞好就可以正常通讯了,至此模拟ch340的功能已经完成了移植好的程序也上传了“Virtual_COM_Port_CH340”,有需要的朋友可以参考一下 USB虚拟串口?安装官方的驱动没有? 我是模拟CH340,一种USB转串口的芯片 硬件和系统问题已经排除了,现在可以确定问题出在Virtual_Com_Port_NoData_Setup中,打开串口以后不断调用并传入Virtual_Com_Port_NoData_Setup(1),而在STM32中并未传入过1。
再往上找就到了usb_core.c了,对我来说已经非常底层,所以还在排查这个RequestNo=1是怎么回事 就是虚拟串口吧?怎么叫模拟CH340了。 VID,PID,驱动都用CH340的,所以叫模拟CH340。在win7下,安装驱动会比较简单
STM32的代码不能拿来直接用吧 USB虚拟串口? 模拟CH340,一种USB转串口的芯片 问题出在Virtual_Com_Port_NoData_Setup中 打开串口以后不断调用并传入Virtual_Com_Port_NoData_Setup(1),而在STM32中并未传入过1。 再往上找就到了usb_core.c了 排查RequestNo=1 就是虚拟串口吧?怎么叫模拟CH340了。
VID,PID,驱动都用CH340的,所以叫模拟CH340。在win7下,安装驱动会比较简单
STM32的代码不能拿来直接用吧
页:
[1]