关于USB微帧与数据包包长与端点缓冲区的理解

摘要:
在USB上工作了这么长时间之后,我仍然不知道DATA0、DATA1的最大包长度以及端点描述符中的最大包长与68013端点缓冲区有什么关系。经过两个小时的努力,我得出以下结论:1.DATA0或DATA1实际上是端点描述符中的最大数据包长度。如果端点缓冲区小于描述符中的最大数据包长度,则在某些情况下,USB硬件接收的数据将被截断或不接收。如果端点缓冲区大于描述符中的最大数据包长度,则将浪费端点缓冲区。

       搞了这么久USB了,还是不知道DATA0,DATA1的最大包长,以及端点描述符中的最大包长与68013的端点缓冲区有什么关系,经过二小时的奋斗得出如下结论:
       1.DATA0或DATA1实际上就是一个端点描述符中的最大包长。换句话说,68013发一次数据包就是一个DATA0或             DATA1

2.微帧是用来作为传输时间基准的。在每个微帧间可以传一到多次DATA0/DATA1,但是根据DATA0/DATA1(也就是68013一次发送的数据的长度)的大小,每个微帧之间可以传送DATA数据包的个数也不同,DATA0/DATA1越大,每个微帧之间能传输的DATA的数据包的个数越少。

3.在USB2.0之中限定了描述符中的最大包长,是因为在一个微帧内由于物理条件的限制(物理带宽、bit率的原因),只能传输那么多。

4.固件使用的USB协议其实就是用来与上位机驱动进行通信的一种语言。换句话说,里面的描述符中的内容都是给上位机驱动看的。其中端点中的最大包长也就是指的是,硬件的端点缓冲区。如果端点缓冲区比描述符中的最大包长小(在USB2.0协议最大包长范围之内),那么USB硬件接收到的数据在一定情况下将会被截断或者不被接收,如果端点缓冲区比描述符中的最大包长大(在USB2.0协议最大包长范围之内),端点缓冲将会被浪费。

免责声明:文章转载自《关于USB微帧与数据包包长与端点缓冲区的理解》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Oracle 数组的写法php代理下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

用组策略彻底禁止USB存储设备、光驱、软驱、ZIP软驱

转自:http://beyondhdf.blog.51cto.com/229452/131678 一、禁止USB存储设备、光驱、软驱、ZIP软驱 在现在企业网络环境下,由于企业网络越来越大环境越来越复杂。公司内员工素质参差不齐,公司为了加强网络安全性、数据保密性提出要封堵USB存储设备、光驱、软驱、ZIP软驱设备。首先我们在企业网络环境要想实现以上目的,必...

VirtualBox 及一些特殊USB(无驱动)的识别问题(二)解决了不能识别一些特殊USB的问题(其实就是插着USB重启,很简单)

原来手机怎么也连不上Linux ,碰巧这几天又在搞VirtualBox虚拟,刚好手机当时又插上USB的,重启了下,识别出来了:),只要重启电脑,不作如下设置,手机都能被识别(不知原因) ;作个标记,有时间再慢慢研究。(或者按下面流程过一遍,再恢复原状,手机就可以被识别了 ),求解?(请各位知道具体情况的留言,谢过) 再论述一下我的问题吧: 卸载了手机之后,...

【转】android电池(四):电池 电量计(MAX17040)驱动分析篇

关键词:android 电池  电量计  MAX17040 任务初始化宏 power_supply 平台信息:内核:linux2.6/linux3.0系统:android/android4.0 平台:samsung exynos 4210、exynos 4412 、exynos 5250 作者:xubin341719(欢迎转载,请注明作者) 欢迎指正错误...

安卓手机开启USB调试 连接电脑

本教程只教,开机状态的手机如何用USB调试连接到电脑。如果手机已经不能开机,请直接点击酷卓上的 获取ROOT救砖优化版刷机包 然后使用一键刷机来救砖。(点击一键刷机会有提示手机如何进入刷机模式。) 处于开机状态的手机要想连接上酷卓或其他安卓客户端。分为两步 。手机上开启USB调试和电脑上正确安装驱动 第一步: 首先教你们,手机上开启USB调试。  但是,u...

USB应用开发笔记之一:STM32上实现USB主机读写U盘

  在项目应用中,经常会有对外交换数据的需求。USB接口读写U盘无疑是一种颇为方便的选择。在这一篇中,我们就来讨论如何在STM32上实现USB主机读写U盘文件的方法。 1、应用概述   在我们的产品上有这样一个需求,希望通过大容量的U盘存取数据。我们来分析一下这个需求的具体内容。   首先在硬件上我们需要有相应的USB端口,这一点在产品设计时就已经考虑并实...

zz-rtl8188eu的linux-usb-wifi调试及驱动编译150210

//zz//#######################################################################zz-rtl8188eu的linux-usb-wifi调试及驱动编译150210zz-Write:@2015-2-4 22:11:14@2015-2-11 00:32:07@REF:嵌入式linux us...