sutian
驱动牛犊
驱动牛犊
  • 注册日期2003-02-10
  • 最后登录2006-04-20
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
阅读:1876回复:3

an2131中的DATA0和DATA1有什么用?

楼主#
更多 发布于:2003-04-16 15:47
Bit 6: S Set Data Toggle to DATA1
After selecting the desired endpoint by writing the endpoint select bits (IO and EP[2..0])
the 8051 sets S=1 to set the data toggle to DATA1. The endpoint selection bits should not
be changed while this bit is written.

Bit 5: R Set Data Toggle to DATA0
After selecting the desired endpoint by writing the endpoint select bits (IO and EP[2..0])
the 8051 sets R=1 to set the data toggle to DATA0. The endpoint selection bits should not
be changed while this bit is written

什么意思啊?为什么要把数据锁入,DATA0或DATA1中?它能锁多少字节?
sutian
驱动牛犊
驱动牛犊
  • 注册日期2003-02-10
  • 最后登录2006-04-20
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-05-07 20:40
帮忙看一下 :cool:
NewTech
驱动大牛
驱动大牛
  • 注册日期2002-10-02
  • 最后登录2010-03-27
  • 粉丝0
  • 关注0
  • 积分16分
  • 威望263点
  • 贡献值0点
  • 好评度86点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-05-08 02:35
 这实际上就是接受和发送FIFO的切换啊!
token
驱动牛犊
驱动牛犊
  • 注册日期2003-04-09
  • 最后登录2010-04-29
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-05-08 13:18
实际上是用于主机和设备交互式进行数据包同步用的,举个例子给你看一下。
1、主机向目标设备发送IN令牌以获得后续的数据
2、目标设备无误的受到这个令牌包
3、目标设备重新向主机发送一个DATA0数据包
4、主机无误的接收到数据包DATA0,它和触发位一致
5、成功受到数据包DATA0,主机触发位变为1
6、主机向目标设备发送一个ACK握手包,通知目标设备数据已经被无误
   地收到了
7、但载目标设备接收ACK握手包时出现错误
8、由于目标设备检测到错误,所以它不能验证主机是否已成功地接收到
   数据,所以目标设备将会重新发送DATA0
9、而主机接收到DATA0时就会认为主机和设备之间不同步,所以丢弃该
   数据,因为它知道在上一次传输过程中主机已经接受到了同样的数据
   ,并返回一个ACK。
10、设备和主机继续进行后续操作。

 综上所述DATA TOGGLE主要是用来防止数据包接受方的应答出问题而设立的一种解决方案。
游客

返回顶部