STM32 USB OTG官方库移植

原创 2015年11月17日 16:57:19

其实ST公司的官方usb库已经做得很不错了。只是一开始不会用,导致浪费了很多时间。

首先拿到库,需要确认板上的端口资源。

VBUS D- D+ GND 四条线至少要有,但是VBUS不一定要接在芯片端口上。作为从机的话VBUS可以直接拉高到3v以上。电流大小待确认。D-,D+一定要接到芯片的OTG FS HS均可 DM  DP对应 D- D+。作为主机可以不接VBUS,也可将VBUS接到芯片端口作为检测口,此处不明是硬件原因还是什么原因,若使用VBUS检测的话,拔掉usb线会造成JLINK崩溃,因此我将VBUS口作为普通I/O口,查询读取是否连接或失去连接。

OTG_HS想用的话需要外接PHY,若无外接PHY,也将HS口配置成FS口。

确认硬件完毕后,需要确认所需使用的晶振,外部内部均可。STM32F2为例,HSI为16M。则可以直接用HSI来配置 配置出48M的晶振供给USB。此配置可采用ST官方的配置工具来完成,操作简便 ,将配置生成的system_stm32f2xx.c与工程中的替换即可。

时钟确认完毕,接下来需要对USB库进行配置。USB库中有很多例程,此处我是做USB升级方案,则有两种,一种是DFU升级模式,需要配合官方给的DFU Demo上位机软件来使用,第二种是MSC模式,读取U盘。库做的很完善,FATFS已经写进例程。配置主要看是USB_HOST还是USB_DEV抑或是OTG双向模式。目前没有用到双向模式。

模式配置需要在usb_conf.h中修改对应的宏,可以不适用VBUS来检测外设是否插入等,还可以配置使OTG_HS口工作在FS模式下。配置完成后,理论上就移植成功了。



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

STM32F107 USB otg U盘读写

MCU型号:STM32F107 开发环境:MDK4 U盘大小:8GB FAT:R0.08A 最终效果如下所示:   代码解析: 1.main.c int main(void) {    BSP_In...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

stm32f407以太网及USB OTG快速开发

stm32f407以太网及USB OTG快速开发 引言 想要快速完成网络协议栈和USB OTG功能,使用ST自家的工具STM32CubMx再好不过的了。如果你还不会使用,别着急下面我会一步一步的用图...

STM32 USB 之从0开始移植笔记

STM32 USB 之从0开始移植笔记             -----------------------------------动机-----------------------...

STM32 USB软件移植注意事项 及硬件接线注意

移植了个自定义HID USB程序到STM32开发板上,成功运行,但是最近自己做的板子上(用的是F103C8T6)就不行,死活没有反应。经过几番调试终于发现问题,以下做个小结: 1.一定要保证USB时...
  • agave7
  • agave7
  • 2015年02月05日 11:30
  • 2361

stm32的USB(二)Fatfs在stm32上的移植

前言 相信大家不会对FAT文件系统感到陌生,在Windows上就能够直接操作FAT文件,Fatfs是一个完全免费和开源的文件系统模块,它支持FATl2、FATl6 和FAT32,支持多个存储媒介,有...

最新stm32 USB库获取

之前找了挺久都没找到stm32USB的驱动在官网的哪个地方下载,虽然网上有很多说从哪里下载的,但是官网更新了,一下子也没找到,分享下,顺便防止以后忘记了。 1.官网主页http://www.st.co...

Real6410移植linux-2.6.39.1记录(3)-USB驱动移植(USB HOST以及USB OTG)

// 主题:Real6410移植linux-2.6.39.1// 作者:kevinjz2010@gmail.com// 版权:kevinjz原创// 平台:linux-2.39.1 real6410 ...

Stm32f107与Stm32f103系列usb使用区别

手上项目用到了usb-hid通信,借鉴了别人的f107的程序,想着改到103上面试试,然后发现有几点不同,与大家分享下:1:关于时钟设置,在”howconfig.c”中//f103 void Set_...

STM32F103系列USB的学习过程及使用心得(二)(USB HID协议篇)

在熟悉USB的协议后,感觉能自己做出些东西的就是HID协议了,因为HID的设备对于上位机开发容易很多,不用涉及各个操作系统和USB主设备的等等知识。按照HID协议写好的下位机程序,在stm32的芯片上...
  • gjy127
  • gjy127
  • 2016年03月31日 14:21
  • 5337
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:STM32 USB OTG官方库移植
举报原因:
原因补充:

(最多只允许输入30个字)