你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

自定义设备的端点使用问题

[复制链接]
wylew 提问时间:2018-2-27 12:52 /
设备的端点是有USB PHY芯片决定的,那每一个端点的特性也是芯片决定好的吗?如我现在的USB协议栈中的描述符里:
/* Endpoint 1 descriptor */
0x07, 0x05, 0x84, 0x03, 0x08, 0x00, 0x0B,
/* Data Class Interface Descriptor Requirement */
0x09, 0x04, 0x01, 0x00, 0x02, 0x0A, 0x00, 0x00,0x00,
/* First alternate setting Endpoint 1 descriptor */
0x07, 0x05, 0x01, 0x02, 0x00, 0x02, 0x00,
/* Endpoint 2 descriptor */
0x07, 0x05, 0x82, 0x02, 0x00, 0x02, 0x00,

其中端点4位IN中断端点,端点1和端点2分别为OUT批量端点和IN批量端点
但当我修改端点的ID号时则不能用,比如将IN批量端点为0x82修改为0x86,则无法实现device向host传数......我的PHY芯片是支持16个IN端点和OUT端点的,那么,对应ID号的端点的特性是在PHY芯片中定好的呢,还是可以自定义某一个端点为IN或者OUT呢?
收藏 评论2 发布时间:2018-2-27 12:52

举报

2个回答
随风飘扬 回答时间:2018-2-27 15:29:54
设备的端点和PHY应该没有关系,关于你说的端点的问题,除了在描述符中指定端点之后,还需要在单片机中打开相应的端点才可以使用。

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

wylew 回答时间:2018-2-27 15:34:24
yu0405jie 发表于 2018-2-27 15:29
设备的端点和PHY应该没有关系,关于你说的端点的问题,除了在描述符中指定端点之后,还需要在单片机中打开 ...

和STM32有些不同,我这里是根据几个函数可以初始化所有的端点,如:
ux_dcd_dwc_otg_endpoint_create.c
ux_dcd_dwc_otg_endpoint_reset.c
ux_dcd_dwc_otg_endpoint_stall.c
ux_dcd_dwc_otg_endpoint_status.c
......
如此的这类函数,里面都可以根据“ed =  &dcd_otg -> ux_dcd_otg_ed[otg_endpoint_index];”otg_endpoint_index的这个值来判断使用的哪个端点,所以应该是有过初始化和激活

所属标签

相似问题

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版