查看: 3671|回复: 0

关于STM32 USB作为从机设备时管脚连 接以及通讯的简易验证方法

[复制链接]
发表于 2016-9-22 17:19:29 | 显示全部楼层 |阅读模式
关键词: 融创芯城 , STM32研讨会
2.webp.jpg

2016年度STM32全国巡回研讨会将于9月7日至23日于全国12座城市举办,ST已邀请融创芯城作为电商平台合作伙伴全程参与,欢迎小伙伴们莅临各大研讨会的融创芯城展台沟通交流。







前言
USB作为从机设备时,管脚连接以及通讯的验证方法其实就是下载一段简单USB程序,在不需要任何驱动的前提下实现简单的USB通讯。通过这个简单程序的运行情况来判断USB管脚和通讯是否正常。

问题分析
USB作为从机设备时,其硬件验证相对简单。当硬件工程师怀疑自己的硬件有问题时,就自己写一个简单的测试程序。但这对一般的硬件工程师来说还是有一定难度的。通过STM32CubeMX这个工具,这个过程就变的非常简单了。方法如下:

1/在STM32CubeMX中选择您需要使用的开发板,我们以STM32F401C-Discovery板子为例(在选择板子的时候,是不需要需改时钟配置+管脚配置的,所以流程更加简单)
3.webp.jpg
注意:如果你选择的不是开发板,而是自己做的板子请参考如下简易配置流程:
1.选STM32Fxxx
2.在PinOut项中配置RCC的HSE外部时钟开启(这个是必须的,除了STM32F0x2系列MCU)  
3.开启USB_OTG_HS/USB_OTG_FS/USB中的InternalFS PHY为Device Only
4.设置Middleware 中的USB_Device为HumanInterface device
5.配置时钟的输入为‘x’M(默认是25M,这里的‘x’是需要与实际连接晶体频率相等),设置系统时钟为72M(建议使用时钟自动分配功能,际具体数据需要根据实际所选芯片的时钟范围来设置)
6.直接生成代码运行即可

2/在Pinout中选择USBOTG FS选项中的Device Only选项。
4.webp.jpg
之后在Middleware中选择USBDevice选项中的Human Interface deviceclass
5.webp.jpg
3/直接生成工程,并编译下载到STM32F401C-Discovery板子上就可以验证了。如果可以看到HID的设备,那么就是USB部分的硬件联系没有什么问题了.
6.webp.jpg
总结:
该工程只是完成了一个USBHID类的枚举工作,不需要工程师添加任何代码,其作用就是为了验证USB作为从机设备时的硬件管脚连接以及通讯是否有问题。且一般windows都是支持HID这个基本类,故此方法有广泛的实用意义。

重要通知 - 请仔细阅读
意法半导体公司及其子公司(“ST”)保留随时对ST 产品和/ 或本文档进行变更、更正、增强、修改和改进的权利,恕不另行通知。买方订货之前应获取关于ST 产品的最新信息。ST 产品的销售依照订单确认时的相关ST 销售条款。
买方自行负责对ST 产品的选择和使用, ST 概不承担与应用协助或买方产品设计相关的任何责任。
ST 不对任何知识产权进行任何明示或默示的授权或许可。
转售的ST 产品如有不同于此处提供的信息的规定,将导致ST 针对该产品授予的任何保证失效。
ST 和ST 徽标是ST 的商标。所有其他产品或服务名称均为其各自所有者的财产。
本文档中的信息取代本文档所有早期版本中提供的信息。


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表