STM32 USB OTG官方库移植
来源:互联网 发布:淘宝申请试用在哪里 编辑:程序博客网 时间:2024/05/17 07:45
其实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模式下。配置完成后,理论上就移植成功了。
- STM32 USB OTG官方库移植
- 内核移植(包括LCD液晶屏、OTG-usb)
- stm32 usb host移植
- USB-OTG
- usb otg
- USB otg
- USB OTG
- USB OTG
- USB OTG
- USB OTG
- usb otg
- USB-OTG
- USB OTG
- USB OTG,USB Slave
- Real6410移植linux-2.6.39.1记录(3)-USB驱动移植(USB HOST以及USB OTG)
- Real6410移植linux-2.6.39.1记录(3)-USB驱动移植(USB HOST以及USB OTG)
- STM32 USB-HID通信移植步骤
- STM32 USB-HID通信移植步骤
- Spark入门之九:机器学习简介
- javaScript弹窗
- 不敢“犯错”的应试教育
- 【黑马程序员】C语言—推箱子游戏实现
- android Toast大全(五种情形)建立属于你自己的Toast
- STM32 USB OTG官方库移植
- SQLSERVER 获取手机号码归属地
- 设置dialog的大小,位置
- android游戏开发初学之SurfaceView绘制界面
- 程序启动原理
- java使用FileReader上传图片,可支持预览,支持多张上传
- Ⅰ.2.6.3.3 如何测试 QTableWidgets 中的 Items
- u3d性能优化
- 九、使用Maven创建Web应用程序项目