首先以stm32f103c8t6为例讲解:

1.在STM32MxCube安装芯片包。

第三章:STM32MxCube生成USB程序---模拟鼠标(从机)

2、先要配置USB时钟,查看手册可知usb需要时钟48Mhz,且谁使用的APB1 timer clocks时钟,由于内部的8MHZ时钟倍频达不到48MHZ,因此只能使用外部高速时钟HSE时钟。

第三章:STM32MxCube生成USB程序---模拟鼠标(从机)

配置如下:

第三章:STM32MxCube生成USB程序---模拟鼠标(从机)

第三章:STM32MxCube生成USB程序---模拟鼠标(从机)

在HCLK时必须达到48Mhz,在APB1 timer clocks时钟处,才能分频。从而实现APB1 timer clocks时钟处为48MHZ。

3、使能全速USB,使能USB从机。注意custom HID device class是自定义HID设备类,HID device class指普通的HID设备类

第三章:STM32MxCube生成USB程序---模拟鼠标(从机)  第三章:STM32MxCube生成USB程序---模拟鼠标(从机)

4、配置速率,位数。第三章:STM32MxCube生成USB程序---模拟鼠标(从机)

5、配置USB从机的PID/VID,如果切换了从机类型,务必改变PID/VID

第三章:STM32MxCube生成USB程序---模拟鼠标(从机)

6、usb驱动相关的一些宏定义,一般默认值

第三章:STM32MxCube生成USB程序---模拟鼠标(从机)

7、生成代码,再编译下载。

第三章:STM32MxCube生成USB程序---模拟鼠标(从机)

编译可能会有错,将其注释就行,是keil版本过低的原因导致。因为没有使用Pwr功能,所以注释了不影响正常使用。

第三章:STM32MxCube生成USB程序---模拟鼠标(从机)


下面以stm32f407zgt6为例讲解:

参加下一篇博客:





相关文章:

  • 2021-12-29
  • 2021-06-01
  • 2022-02-07
  • 2021-06-18
  • 2021-07-28
  • 2021-11-23
  • 2022-12-23
  • 2021-12-11
猜你喜欢
  • 2021-11-03
  • 2021-05-06
  • 2022-01-13
  • 2022-12-23
  • 2021-12-20
  • 2022-12-23
  • 2021-04-16
相关资源
相似解决方案