STM32F4标准固件库USB_OTG+CDC类移植

1.参考博客:

https://blog.csdn.net/ZCShouCSDN/article/details/78936456
https://blog.csdn.net/lutao614/article/details/88284922

2.根据使用的OTG模块来选择PHY

在这里插入图片描述

比如F4里有两个OTG,一个是高速(HS,左边),一个是全速(FS,右边),当使用高速(HS)的时候,如果没有外接高速芯片而使用内部PHY时,实际上需要在HS中配置为FS。若使用OTG_FS则直接配置为FS即可。
在这里插入图片描述
(1)在HS中使用FS,首先在Keil“魔术棒”的“C/C++”中“define”一栏添加宏定义
在这里插入图片描述
(2)直接使用OTG_FS的话只添加“USE_USB_OTG_FS”即可。

3.更改USB_bsp.c文件

(1)初始化函数

void USB_OTG_BSP_Init(USB_OTG_CORE_HANDLE *pdev)
{
   
  GPIO_InitTypeDef GPIO_InitStructure;
  RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB , ENABLE);
   /* Configure SOF ID DM DP Pins */
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_14 | GPIO_Pin_15;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
  GPIO_InitStructure
  • 0
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
STM32F407标准中的USB CDC (Communication Device Class)用于在STM32微控制器和计算机之间建立虚拟的串行通信连接。USB CDC支持基于文本和二进制的数据传输,可以在计算机上使用终端模拟器或其他串口通信工具来与STM32F407进行通信。 使用USB CDC,可以实现STM32F407与计算机之间的实时双向通信。在STM32中,需要通过配置USB外设为CDC设备,并实现相应的回调函数来处理来自计算机的命令和数据。STM32F407的USB CDC提供了相关的函数和数据结构,以简化配置和操作的过程。 首先,需要在工程中添加USB CDC文件,并在代码中包含对应的头文件。接着,需要配置相应的GPIO和时钟以启用USB的功能。然后,通过调用函数配置USB外设为CDC设备并进行初始化。 在USB CDC设备初始化完成后,可以通过调用相关函数来处理USB连接和传输的事件。例如,可以通过设置回调函数来处理接收到的数据或将数据发送到计算机。可以使用函数来读取并处理计算机发送的数据并作出响应。 当STM32F407与计算机建立了USB CDC连接后,可以使用终端模拟器或其他串口通信工具来与STM32进行通信。可以通过发送和接收文本或二进制数据来实现双向通信。 在开发过程中,需要仔细配置和处理USB CDC相关的设置和事件,以确保正常的通信和数据传输。同时,也需要了解USB CDC的协议规范以便正确地配置和操作USB外设。 总之,STM32F407标准中的USB CDC功能提供了一种方便的方式,在STM32微控制器和计算机之间建立虚拟的串行通信连接。通过适当的配置和操作,可以实现实时的双向通信。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值