调试STM32F4 USB3300 USB_HS虚拟串口

通过STM32cubeMx配置USBphy芯片,经历调试和安装ST虚拟串口驱动,成功实现USB2.0HS通信。在硬件设计中,注意USB口的阻抗匹配和数据线处理。参考资源和他人的经验有助于解决USB设备识别问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考了csdn上面的几篇文章,经历了一个多小时的调试排除找bug,终于成功了!

通过STM32cubeMx配置USB phy芯片

1.

2.

3.

4.

5.生成代码出来,打开工程,编译下载通过。

在上电之前,电脑得先安装ST的USB 虚拟串口驱动

点击前往下载-->STSW-STM32102 - STM32虚拟COM端口驱动程序 - STMicroelectronics

安装完驱动之后,芯片上电,再插上USB线,打开设备管理器,你就会神奇的发现这个东东:

那么恭喜你:成功了。

在main里面打一条发送语句测试一下:

CDC_Transmit_HS((uint8_t *)"Hello!\n",sizeof("Hello!\n"));

打开串口,波特率不用管,USB2.0_HS 是480Mbit/s ,还需要管什么115200么,嘿嘿!

到此就结束了;

最后总结下:

  1. 我的原理图是根据CubeMx生成管脚配置出来的,可以参考下微雪的原理图,我本来想买个开发板,结果自己的板就Ok,给公司省钱了。

  1. USB2.0 DM DP 线需要阻抗匹配,过了PHy芯片出来的几根数据线 D0-D7,我没有做等长处理,只是做了50om的阻抗匹配。

不懂的同学可以看看这里的资料-->USB3300 USB HS Board - Waveshare Wiki

个人觉得也没啥资料,她给的历程跟资料我是看不懂的,USB3300就只是一个USB2.0的物理层芯片,我根据CubeMX里面生成的代码,也设置啥东西,编译一次就OK,重要的是去学习USB2.0协议吧。

我USB口用的是type_C的USB口,CC1为USB电流选择端,如果USBA->B口,两跟数据线的上拉电阻不对,那么电脑就识别不出是什么USB设备,这方面的资料查阅下USBFS HS的标准。

具体也可以看下这位老哥->(57条消息) STM32F407使用USB作虚拟串口出现黄感叹号_mickey35的博客-CSDN博客

写的很详细,祝大家调试成功!

USB-IF高速;,经认证符合通用串行总线规范修订版 2.0 接口在 8 位模式下与 ULPI 规范修订版 1.1 兼容 工业标准 UTMI+ 低引脚接口 (ULPI) 可将 54 UTMI+ 信号转换为标准的 12 引脚链路控制器接口 54.7mA 未配置电流(典型情况)— 适用于总线供电的应用 83uA 挂起电流(典型情况)— 适用于电池供电的应用 闭锁性能超过 150 mA(每 EIA/JESD 78),Class II ESD 防护水平达 ±8kV HBM(在不使用外部保护设备的情况下) 集成了各种保护措施,在每个第三方的测试设备中均可耐受 IEC61000-4-2 ESD 测试(±8kV 接触电压和 ±15kV 空气电压) 支持用于附带 LS 设备的 FS 集线器的 FS 前导码 (UTMI+ Level 3) 支持 HS SOF 和 LS keep-alive 脉冲 包括对可选的 On-The-Go (OTG) 协议的全面支持,在 On-The-Go 附录修订版 1.0a 规范中有详细说明 支持 OTG 主机协商协议 (HNP) 和会话请求协议 (SRP) 允许主机关闭 VBUS,以便在 OTG 应用中节省电池电量 通过内部比较器支持 VBUS 电平的 OTG 监视。包括对外部 VBUS 或故障监视器的支持。 低潜伏高速接收器(最高为 43 高速时钟)允许使用带 ULPI 包装器的潜伏 UTMI 链路 用于接口保护的 STP 上的集成下拉电阻,允许在使用低速链路(针对低功率情况对软件进行了配置)的情况下,可靠地启动 Link/PHY 内置的 1.8V 调节器允许在使用单个 3.3V 电源的情况下工作 对 ID、DP 和 DM 线路到 VBUS 或接地进行内部短路保护 集成的 24MHz 晶振支持水晶操作或 24MHz 外部时钟输入 用于 480MHz 高速 USB 操作的内部 PLL 工业运行温度:-40°C 到 +85°C 符合 RoHS32 引脚无铅 QFN 封装(5 x 5 毫米, 高度为 0.90 毫米)
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值