打印
[STM32F2]

无法获取设备描述符

[复制链接]
1558|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
happy_10|  楼主 | 2016-5-29 17:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
RT,可以识别连接上,可以检测到是全速设备,但是接下来就没有然后了。。。
使用的是stm32f207,
跟踪调试发现读取设备描述符的时候返回USBH_BUSY,继续跟踪,但是由于ST的USB OTG固件库好多状态机。。。
找出哪里有问题还是不太容易。
沙发
冰清玉洁| | 2016-5-29 17:45 | 只看该作者
设备枚举的时候有没有正常, 先搞清楚这些状态机吧

使用特权

评论回复
板凳
happy_10|  楼主 | 2016-5-29 17:46 | 只看该作者
谢谢啦。
搞出来了,时钟问题,用RCC_Getclock函数串口输出系统时钟,发现都是不对的。
后来在官网下载了一个stm32f2xx专用的时钟配置工具,
配置好后直接生成了system_stm32f2xx.c然后替代原来的就可以正常枚举了。stm32f2xx.h中的外部时钟定义HSE_Value 也要改为实际用的晶振频率

可是插上我的8GU盘,枚举完成后直接进入 Unrecovered error state,还是想找固件的问题

使用特权

评论回复
地板
wenfen| | 2016-5-29 17:46 | 只看该作者
兼容性问题

使用特权

评论回复
5
happy_10|  楼主 | 2016-5-29 17:47 | 只看该作者
找了个1G的U盘,插上去直接就可以读写文件了。。

使用特权

评论回复
6
zhuhuis| | 2016-5-29 17:48 | 只看该作者
还有官方的FATFS没有加长文件名支持,很多小写字母都变大写了,改改让他支持长文件名。

使用特权

评论回复
7
happy_10|  楼主 | 2016-5-29 17:49 | 只看该作者
不是兼容性不好,而是我的U盘是 参加Cypress worksheet的时候送的,里面包含两个存储区,一个是U盘,一个是软盘,不是一般的U盘。
一般的U盘,2G,8G,都可以操作的,

使用特权

评论回复
8
宋倩2010| | 2016-5-29 17:49 | 只看该作者
MP3不行,好像是因为它的USB class定义的不是MSC类。
windows能识别这些东西,因为它做的比较全面,如果想要让stm32 HOST实现同样的功能,就要参考windows的USB驱动流程来写了。。

使用特权

评论回复
9
chenho| | 2016-5-29 17:50 | 只看该作者
有个宏开关,就是这个长文件名

使用特权

评论回复
10
gongche| | 2016-5-29 17:51 | 只看该作者
请问下,USB_OTG时钟必须用外部晶振么?

使用特权

评论回复
11
huwr| | 2016-5-29 17:52 | 只看该作者
采用HSI提供48MHz时钟

使用特权

评论回复
12
happy_10|  楼主 | 2016-5-29 17:53 | 只看该作者
呵呵,大家讨论的好热闹,结贴了哈

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

744

主题

7973

帖子

6

粉丝