chenbile
驱动牛犊
驱动牛犊
  • 注册日期2003-10-20
  • 最后登录2009-02-13
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:2939回复:4

usb驱动是否必须向device发送零长度数据包

楼主#
更多 发布于:2004-03-17 13:24
usb驱动发送数据时只需将所需要发送的数据传递给usbd,但如果所传输的数据长度恰好是该端点的最大传输包的倍数时(即,如果bulk out enpoint的maxpacketsize=64byes,发送的数据长度为128byte=2*64),USB驱动是否必须再向该端点发送一个零长度数据包?
谢谢

yyouking
驱动老牛
驱动老牛
  • 注册日期2003-12-18
  • 最后登录2020-04-28
  • 粉丝0
  • 关注0
  • 积分967分
  • 威望114点
  • 贡献值1点
  • 好评度78点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2004-03-17 16:25
不用的
提供: AT89S52+D12开发套件 W78E54+Sl811HST单片机读写U盘套件 PL2303HX-串口转USB 网站http://www.devking.cn 联系 sl811hs@yahoo.com.cn QQ:14441292
chenbile
驱动牛犊
驱动牛犊
  • 注册日期2003-10-20
  • 最后登录2009-02-13
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-03-17 16:57
但是依据USB1.1,
当发送的数据长度恰好是该端点的最大传输包的倍数时
host如果不向device发送零长度数据包,
device如何判断此次传输已经结束?
(如果数据传输中没有其他的协议能够让device知道本次传输的数据长度)
zmwk
驱动中牛
驱动中牛
  • 注册日期2001-05-15
  • 最后登录2009-04-05
  • 粉丝0
  • 关注0
  • 积分59分
  • 威望51点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-03-20 03:51
控制传输中要发0长数据包。其他传输中倒不一定的。
A strong man can save himself. A great man can save another.
LJ1978
驱动小牛
驱动小牛
  • 注册日期2004-02-25
  • 最后登录2011-06-08
  • 粉丝0
  • 关注0
  • 积分43分
  • 威望24点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-03-20 10:26
控制传输发送前要先发送一个无效字节,再发数据长度(1BYTE),然后才发数据。所以协议能判断出哪里是结束
游客

返回顶部