• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

STM32F103的usb虚拟串口问题

PG_CPZ 2018-09-27 浏览量:1074
想请教大家关于STM32虚拟串口数据的接收流程,我现在的虚拟串口可以发送数据,但无法接收电脑发送给32的数据。百度上面的资料并没有太多的提及接收数据的流程,都是很简单的带过。
void EP3_OUT_Callback(void)
{
        u16 USB_Rx_Cnt; 
        USB_Rx_Cnt = USB_SIL_Read(EP3_OUT USB_Rx_Buffer);        //μÃμ½USB½óêÕμ½μÄêy¾Y¼°Æä3¤¶è  
        USB_To_USART_Send_Data(USB_Rx_Buffer USB_Rx_Cnt);        //′|àíêy¾Y£¨Æäêμ¾íêDZ£′æêy¾Y£© 
        SetEPRxValid(ENDP3);                                                                //ê±Äü¶Ëμã3μÄêy¾Y½óêÕ
}



这个函数在注释里面写着是接收数据用的。但debug并没有进去。
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 不清楚STM32的USB模式有没有不定长DMA接收这个功能,反正我认为单片机接收串口不定长数据都必须要用DMA。

    • 发布于 2018-09-27
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:8

  • 虚拟串口的话,可以用逻辑分析仪看看是不是时序有问题
    • 发布于2018-09-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 你可以参考下别人的虚拟串口代码,看问题出在哪里,不排除硬件可能!
    • 发布于2018-09-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 要先用标准的例程确认一下硬件的问题,其次要排查一下你软件的初始问题
    • 发布于2018-09-29
    • 举报
    • 评论 0
    • 0
    • 0

  • 那你要看一下那里启用了这个回调,一般是中断里面的,看一下中断能否进,如果进不了,看一下中断是否使能了
    • 发布于2018-10-05
    • 举报
    • 评论 0
    • 0
    • 0

  • 这种情况跟你的硬件有关系,看看是不是你的串口连接有误
    • 发布于2018-10-10
    • 举报
    • 评论 0
    • 0
    • 0

  • 你可以用标准的串口库来检查一下你的硬件是否连接正常
    • 发布于2018-10-28
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

STM32F103的usb虚拟串口问题