OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 8832|回复: 19

有谁知道将STM32的USB做成Hub怎么枚举的

[复制链接]

4

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2015-11-25
在线时间
25 小时
发表于 2016-10-11 16:12:56 | 显示全部楼层 |阅读模式
1金钱
最近也在尝试把STM32 USB做成一个USB Hub,我的Hub枚举就失败了,卡在请求配置描述符失败。请问USB Hub是怎么枚举的?     用找了个Hub用抓包工具看了下描述符,发现Hub比USB设备多了USB Hub Descriptor跟Device Qualifier Descriptor这两个描述符。在usb_Desc.c文件里已经参考添加了描述符结构体,问题不知道怎么去修改配置,STM32的USB设备初始化DEVICE_PROP Device_Property =  {
    MASS_init,
    MASS_Reset,
    MASS_Status_In,
    MASS_Status_Out,
    MASS_Data_Setup,
    MASS_NoData_Setup,
    MASS_Get_Interface_Setting,
    MASS_GetDeviceDescriptor,
    MASS_GetConfigDescriptor,
    MASS_GetStringDescriptor,
    0,
    0x40 /*MAX PACKET SIZE*/
  };


最佳答案

查看完整内容[请看2#楼]

具体过程就是 ,找了HUB板,Bushound抓取了枚举的整个过程,然后参考过程自己在STM32上修改了USB驱动。将STM32枚举成一个HUB。 一步一步的去按照Hub板枚举的过程去修改。其实我这样只是让主机把我当做一个Hub。具体功能还要自己继续实现。现在卡在在枚举了Hub之后去枚举Hub下的usb设备了,还在研究中
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

4

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2015-11-25
在线时间
25 小时
 楼主| 发表于 2016-10-11 16:12:57 | 显示全部楼层
正点原子 发表于 2016-11-2 19:21
可否分享下解决办法?

具体过程就是 ,找了HUB板,Bushound抓取了枚举的整个过程,然后参考过程自己在STM32上修改了USB驱动。将STM32枚举成一个HUB。 一步一步的去按照Hub板枚举的过程去修改。其实我这样只是让主机把我当做一个Hub。具体功能还要自己继续实现。现在卡在在枚举了Hub之后去枚举Hub下的usb设备了,还在研究中
回复

使用道具 举报

38

主题

302

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
439
金钱
439
注册时间
2012-3-6
在线时间
5 小时
发表于 2016-10-11 16:40:12 | 显示全部楼层
哈哈哈哈 这条可怜虫。
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2016-10-12 21:39:01 | 显示全部楼层
帮顶
回复

使用道具 举报

4

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2015-11-25
在线时间
25 小时
 楼主| 发表于 2016-10-17 14:53:18 | 显示全部楼层

目前已经枚举出来了Generic USB Hub设备,但是设备有警告,抓包分析了数据,在主机请求命令的返回过程中,有错误,还在修改
图片1.png
回复

使用道具 举报

1

主题

6

帖子

0

精华

新手上路

积分
47
金钱
47
注册时间
2015-9-7
在线时间
4 小时
发表于 2016-10-18 16:45:29 | 显示全部楼层
汤焰 发表于 2016-10-17 14:53
目前已经枚举出来了Generic USB Hub设备,但是设备有警告,抓包分析了数据,在主机请求命令的返回过程中 ...

在吗?大牛,你使用stm32 usb device 实现的hub集线器吗?
回复

使用道具 举报

4

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2015-11-25
在线时间
25 小时
 楼主| 发表于 2016-10-27 11:40:07 | 显示全部楼层
dun2010 发表于 2016-10-18 16:45
在吗?大牛,你使用stm32 usb device 实现的hub集线器吗?

设备管理器里枚举的Generic USB Hub设备已经出来了,问题是在配置主机请求命令的地方还需要修改,目前枚举的设备还带有警告。
回复

使用道具 举报

4

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2015-11-25
在线时间
25 小时
 楼主| 发表于 2016-11-2 14:30:47 | 显示全部楼层
自问自答,已经解决了, 设备管理器可以看到枚举出正常的Hub设备。下一步准备在HUB里虚拟个键盘试试
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2016-11-2 19:21:15 | 显示全部楼层
汤焰 发表于 2016-11-2 14:30
自问自答,已经解决了, 设备管理器可以看到枚举出正常的Hub设备。下一步准备在HUB里虚拟个键盘试试

可否分享下解决办法?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

3

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
100
金钱
100
注册时间
2016-10-14
在线时间
13 小时
发表于 2016-11-9 11:19:46 | 显示全部楼层
回复

使用道具 举报

4

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2015-11-25
在线时间
25 小时
 楼主| 发表于 2016-11-15 13:46:40 | 显示全部楼层
又遇到新的问题卡住了,现在STM32虚拟的Hub下面出来一个未识别的USB设备了。这个设备未识别原因是我在USB设备初始化时,配置的是Hub的,这里不知道怎么去添加HID设备初始化,导致在枚举hub之后没有成功枚举HID设备。现在怎么去实现初始化这个HID设备。
QQ图片20161115134008.png
QQ图片20161115134024.png
回复

使用道具 举报

4

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2015-11-25
在线时间
25 小时
 楼主| 发表于 2016-11-15 13:49:22 | 显示全部楼层
汤焰 发表于 2016-11-15 13:46
又遇到新的问题卡住了,现在STM32虚拟的Hub下面出来一个未识别的USB设备了。这个设备未识别原因是我在USB设 ...

hub方面的资料太少了,没找到什么比较好的参考资料和例程,都是自己在慢慢摸索
回复

使用道具 举报

0

主题

0

帖子

0

精华

新手入门

积分
1
金钱
1
注册时间
2019-4-29
在线时间
0 小时
发表于 2016-12-30 14:46:42 | 显示全部楼层
楼主不要放弃,一定要坚持。我们支持你,加油!!!!
对了,楼主可以分享一下你的代码吗?kelei999999@163.com
回复

使用道具 举报

0

主题

3

帖子

0

精华

新手入门

积分
16
金钱
16
注册时间
2017-1-10
在线时间
1 小时
发表于 2017-1-10 23:18:10 | 显示全部楼层
kelei999999 发表于 2016-12-30 14:46
楼主不要放弃,一定要坚持。我们支持你,加油!!!!
对了,楼主可以分享一下你的代码吗?

楼主可以分享代码吗,求发送至yxr921123@126.com。小弟感激不尽
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
5
金钱
5
注册时间
2017-9-1
在线时间
1 小时
发表于 2017-9-1 16:24:39 | 显示全部楼层
楼主不知可否分享代码,谢谢,421470327@qq.com
回复

使用道具 举报

2

主题

3

帖子

0

精华

新手上路

积分
43
金钱
43
注册时间
2013-2-21
在线时间
2 小时
发表于 2017-9-2 22:47:45 | 显示全部楼层
汤焰 发表于 2016-11-2 14:30
自问自答,已经解决了, 设备管理器可以看到枚举出正常的Hub设备。下一步准备在HUB里虚拟个键盘试试

请问hub警号是如何去掉的,我这里也一直是感叹号
回复

使用道具 举报

0

主题

6

帖子

0

精华

初级会员

Rank: 2

积分
71
金钱
71
注册时间
2013-3-19
在线时间
8 小时
发表于 2018-3-30 09:41:50 | 显示全部楼层
求讨论 QQ:270334034
努力,加油,提高能力
回复

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
17
金钱
17
注册时间
2019-8-9
在线时间
6 小时
发表于 2019-9-7 22:38:41 | 显示全部楼层
楼主,有相关资料可以共享下吗?最近在学这块,谢谢~
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
13
金钱
13
注册时间
2019-10-17
在线时间
2 小时
发表于 2020-1-3 10:30:22 | 显示全部楼层
楼主可以分享一下代码吗?1776972580@qq.com
回复

使用道具 举报

0

主题

5

帖子

0

精华

初级会员

Rank: 2

积分
100
金钱
100
注册时间
2023-7-21
在线时间
30 小时
发表于 2023-11-2 13:50:30 | 显示全部楼层
请问有人实现STM32+HUB设备各设备的数据吗?可以分享下代码吗?4139288162qq.com
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-23 19:49

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表