700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > STM32CubeMX + STM32F407ZG + USB3300 高速USB实验(虚拟串口)

STM32CubeMX + STM32F407ZG + USB3300 高速USB实验(虚拟串口)

时间:2021-02-17 19:32:04

相关推荐

STM32CubeMX + STM32F407ZG + USB3300  高速USB实验(虚拟串口)

使用STM32CubeMX配置HS USB。

由于STM32F407内部只有FS USB PHY(全速),若要实现HS USB则需要通过ULPI接口外接一个HS USB PHY,虽然在STM32CubeMX中配置HS USB时可以选用内置PHY,但是内置PHY只能达到FS USB(全速)的速度。

此处使用的是USB3300,因为在淘宝上只有这一款= =。

之前买的一块USB3300调试过程中莫名其妙的就烧了,研究了一下微雪的那套板子的原理图之后,发现USB3300模块的5V是连到两个USB接口的VBus的,因为此处主要作为USB Device,所以不能再给5V供电。

配置STM32CubeMX:

都保持默认的就行,注意要改一下:

生成工程,编译,烧录,安装STM32虚拟串口驱动,一切顺利的话就可以在串口助手中看到一个虚拟串口。

而且选择的波特率无论是啥都能正常接收数据(不知道为什么)。

在main.c中添加:

需要包含usbd_cdc_if.h 以使用CDC_Transmit_HS(uint8_t* Buf, uint16_t Len);函数来设置数据起始地址和长度,随后USB中断将自动将数据拷贝到发送缓冲区,完成数据的发送。

/* USER CODE BEGIN Includes */#include "usbd_cdc_if.h"/* USER CODE END Includes */

uint8_t data[1024];for(uint16_t i=0;i<1024;i++){data[i]=i%10+0x30;}data[1023]='\n';CDC_Transmit_HS(data,1024);

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。