用stm32Cube生成103c8t6的usb驱动

开发板是用的stm32f103c8t6的核心板淘宝上最便宜最常见的那种(还是上图吧)
这里写图片描述
stm32f1系列的hal驱动库中把usb驱动放在了“Middlewares(中间件)”文件夹下,且有“STM32_USB_Device_Library”和“STM32_USB_Host_Library”两个驱动库。若是想直接利用驱动库新建工程可在这两个库的目录下复制Core文件夹和Class文件夹下所需文件。

使用stm32cube直接生成工程:
这里写图片描述

先勾选Peripherals的USB->Device才能在MiddleWares下的USB_Devics下选择IP核,下拉后有六个选项,分别对应USB设备的六大分类:

分类 功能
AUDIO USB音频设备
CDC(communication device class) 虚拟串口
Download Firmware Update 固件更新
Human Interface Device 人机接口
Custom Human Interface Device 传统人机接口(键盘鼠标类)
Mass Storage Class 大容量存储设备

此处选择CDC设备。需要注意的是,在RCC分类下的HSE必须被使能成外部晶振->Crystal/ceramic Resonator。要开启USB核主时钟必须达到48M,因为USB区域的时钟为48M。这点可在时钟树的配置中很清楚看到。不过,若主时钟没有配置成48M或以上,在STM32Cube的Clock Configuartion界面会直接报错,点进去看会提示是否自动设置时钟,直接确认就OK。
这里写图片描述

PLL倍频数位6的话,USB分频设为1即可,若要开到72M的最高频率,分频数则要设为1.5。其余配置均保持默认即可。

此处还开启了SWD引脚用于代码的下载。最终的引脚配置如图:

  • 5
    点赞
  • 48
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值