首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >不同端点的HID传输比较

不同端点的HID传输比较
EN

Stack Overflow用户
提问于 2013-02-25 15:29:04
回答 1查看 1K关注 0票数 1

我使用配置为HID的SiLabs C8051F320将ADC数据(在64B或32B报告中)流到PC上。我的HID基于SiLabs示例代码,使用bInterval =1,并尝试端点1 (EP1)和端点2 (EP2)。

根据C8051F320的数据表,当端点处于拆分模式时,当不进行双缓冲时,EP1为64B,EP2为128 B。当没有双缓冲时,我的EP1为64B,双缓冲时为32B。无论是否双缓冲,EP2都是64B。ADC数据为每个样本2个字节,因此在64B报表中的31个样本和32B报表中的15个样本被传输到每个报表中。

( 1)非双缓冲EP1 (每个报表64B)流22.5kSps ADC数据正确2)双缓冲EP1 (每个报表32B)流11.5kSps ADC数据正确3)非双缓冲EP2 (每个报表64B)没有正确地流22.5 does ADC数据(我没有检查最大采样率是多少) 4)双缓冲EP2 (每个报表64B)双缓冲EP2数据(每个报表64B)例如,如果bInterval是10而不是1,那么非双缓冲的EP1流3kSp是正确的。

上面的场景看起来正确吗?为什么EP1允许比EP2更快的传输?为什么报告填写时间需要比bInterval长?

EN

回答 1

Stack Overflow用户

发布于 2013-03-01 18:32:32

似乎用样本填写报告的时间必须比bInterval长。

正确: HID使用中断类型端点,它们可以在每个bInterval ms中传输一个报表。这允许您在每秒内计算64 Byte * 1000 Hz = 64000 Bytes的最大数据速率。当样本中有2位字节时,这将导致32 this的最大采样率。

为什么EP1允许比EP2更快的传输?

除了编程错误之外,我看不出这种行为的原因。

注意: HID协议是流数据的糟糕选择。大容量类型端点允许更高的数据吞吐量。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15070453

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档