坛子里哪位大仙儿用过STM32F通过USB接口连接计算机USB的成熟的电路图给俺一份借鉴下,或者万利的电路图也行,等待。。。
通过一个USB芯片连接到计算机就可以了,推荐一款PDIUSBD12,具体连接方式可以参考它的DATASHEET
“通过一个USB芯片连接到计算机,推荐一款PDIUSBD12。”---那不是多花钱了,STM32本身就是自带USB接口的。
楼主可以到ST的网站上下载一个ST的Demo板的原理图做参考。
图中USB_CONNECT信号可以接STM32的任意I/O口,只要把这个口配置为push-pull输出即可。
-
-
STM32_USB_Connection.GIF
(7.58 KB)
O了,本来参考了ST的开发板USB接口电路,但那个电路做的有点儿麻烦,根本目的是想简化下接口电路。另外版主,图中的5V_USB连接到什么地方?
5V_USB当然是连USB线的5V。
另外,USB_CONNECT建议最好用5V兼容的IO。
pheavecn,我意思是5V_USB连接到单片机板的什么地方,5V,还是STM32的3.3V?
当然不能直接接3.3V了,芯片要爆了。要经过LDO。
用不到5V的话,可以空着。
我目的是用STM32接计算机的USB,那么用版主给我提供的图的接法儿,不接5V_USB端,只接D+ D- GND跟STM32接口就可以了呗?是否这个意思?
你好 你在4楼所附的那个图上 是不是上拉电阻直接连到IO口上就可以 不用再接到电源上?
4# 版主
你好 你在4楼所附的那个图上 是不是上拉电阻直接连到IO口上就可以 不用再接到电源上?
当然不用再接到电源上。为什么你会有这种奇怪的想法?
版主,你好!在此麻烦你了,我最近在做stm32f103的usb虚拟串口,电路是自己做的,程序是MDKdemo里的virtual com port程序。usb电路我是照着你说的连接的,我除了把d+,d-连接到 stm32相应的两个端口上之后,我还通过1.5k电阻把d+接到了PB2上。但是出现了以下问题,当程序里的usb_disconnect_pin改为PB2时,下载了程序就成了无法识别的usb设备了,而如果把usb_disconnetct_pin改为PB2以外的io口,下载完程序,上电后PC机可以识别出虚拟串口,请问这是什么原因,请不吝赐教!谢谢
抱歉,我猜不出来为什么
回12楼:抱歉,我猜不出来为什么。