打印

F407虚拟串口,PC端5v必须与电路板5v端连接才能通信?

[复制链接]
2434|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
玄德|  楼主 | 2013-9-26 10:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 玄德 于 2013-9-26 13:56 编辑

用F407做虚拟串口,发现个奇怪现象:

必须把PC的5v与电路板的5v电源接通,虚拟串口才能正常工作,否则PC无法识别,更无法通信。

但是,如果挂上jlink仿真器(USB端、SWD端都连接),虚拟串口就可以正常识别、正常通信。


是自己做的板子,F407ZGT6,144脚;

PDR_ON接3.3v,boot0和boot1通过1K电阻接地,IMP809S芯片复位(阈值2.93v)。

jlinkT通过SWD连接,无复位引脚。

目的是实现USB虚拟串口与PCB通信,使用官方库STM32_USB-Host-Device_Lib_V2.1.0。

只用了CPU的DM、DP管脚,ID和vbus管脚有别的用途。

已经关闭VBUS_SENSING_ENABLED宏定义。软件无其他功能。


沙发
feilusia| | 2013-9-26 10:34 | 只看该作者
应该共地就行了吧。
LZ能不能帮我看看刚刚发表的USB虚拟串口的问题。

使用特权

评论回复
板凳
IJK| | 2013-9-26 11:06 | 只看该作者
LZ的情况应该是假象。如2L所说,共地就行了。

使用特权

评论回复
地板
outstanding| | 2013-9-26 11:09 | 只看该作者

使用特权

评论回复
5
玄德|  楼主 | 2013-9-26 13:35 | 只看该作者
本帖最后由 玄德 于 2013-9-26 13:48 编辑

上午尝试用上 DCD_DevDisconnect 和 DCD_DevConnect 函数,情况照旧,还是必须把PC的5v与板子5v连接上,才能通信。

确实没有道理,但确实是这个情况。


目前暂时在电脑5v和板子5v之间串联了一个100欧电阻,可以通信,又不影响板子工作。

但板子一直带电,不是长久之计。

使用特权

评论回复
6
玄德|  楼主 | 2013-10-9 15:38 | 只看该作者

求高手看一看。

使用特权

评论回复
7
玄德|  楼主 | 2013-10-9 15:42 | 只看该作者
重新描述一下现象吧:

STM32F407,用官方库 STM32_USB-Host-Device_Lib_V2.1.0 \ USB_Device_Examples \ VCP 项目为模板,做虚拟串口。

只连接DM、DP、GND三根线,关闭 VBUS_SENSING_ENABLED 宏定义,PC端用官方驱动。

如果把USB端口的5v线与目标板5v连接(或串联一个100欧姆电阻),则一切正常:识别正常,目标板与PC通信也正常。

如果断开,则PC端能正常识别,但无法通信。试验了三个串口调试软件都不行,或者找不到串口,或者打开时出错。

使用特权

评论回复
8
trumpxp| | 2013-10-9 16:59 | 只看该作者
帮你顶一个   这现象没有遇到过  楼主

使用特权

评论回复
9
玄德|  楼主 | 2013-10-12 10:43 | 只看该作者

解决了,我用了根劣质的USB延长线。。。。。

使用特权

评论回复
10
玄德|  楼主 | 2013-10-12 10:43 | 只看该作者

看来是地线方面的问题。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:有事请找 xuander

152

主题

5897

帖子

44

粉丝