USB协议详解第17讲(USB事务总结)

来自:https://hellocode.blog.csdn.net/article/details/112793567

一、USB事务总结

  本节我们来对事务(transaction)相关内容做以总结,从前面学习中我们可以看到其实事务有三种类型,Setup事务、Data IN事务、Data OUT事务。

  Setup事务:主要向设备发送控制命令;

  Data In事务:主要从设备读取数据;

  Data OUT事务:主要向设备发送数据。

  回顾下前面我讲的传输、事务、包的关系,“某领导和一个早起的程序员进行了一次交流,说了5件事”。其实这里的"这次交流"就相当于USB的一次传输,"说了5件事"就相当于这次传输过程中的5个事务,当然每件事肯定有若干句对话,就相当于每个事务里面的各种包。

  其实USB所有类型的事务(Setup事务、IN事务、OUT事务)都是由3个包组成(令牌包『Token packet』、数据包『Data packet』、握手包『Handshack packet』),但是,但是,但是除了同步传输所用到的事务,同步传输事务由2个包组成(令牌包、数据包),没有握手包,不会再有其他可能,USB事务组成如下图。
在这里插入图片描述
  其中所有传输的所有事务的令牌包总是由主机发起, 所以我们说USB一切事务都是USB主机操纵的,所有的事务都是主机发起的;数据包含本次传输的数据负载;握手包主要是数据接收方回应数据发送方数据是否正常接收到。

二、后期内容大纲

  事务其实没什么可讲的,大家只要记住事务的概念和上面的内容即可。但是接下来我们会学习到USB包(packet)的详细协议,USB协议基本上都在USB描述符和USB包上面体现的,不过大家也不用担心,我会带着大家学习包的结构和分类、各类包的组成及用途、四种传输的包组成, 课程大纲如下。

USB协议详解第18讲(USB包-初探)
USB协议详解第19讲(USB包-包的组成及分类)
USB协议详解第20讲(USB包-帧首类包SOF)
USB协议详解第21讲(USB包-命令类包Token)
USB协议详解第22讲(USB包-数据类包DATA)
USB协议详解第23讲(USB包-握手类包Handshake)
USB协议详解第24讲(USB包-控制传输包详解)
USB协议详解第25讲(USB包-同步传输包详解)
USB协议详解第26讲(USB包-批量传输包详解)
USB协议详解第27讲(USB包-中断传输包详解)

三、传输、事务、包组成学习架构图

  本架构图后期再学习中会一步一步更新,每一节之后也会逐步完善并更新,最后会完整的展示出来传输、事务、包的结构,让大家在学习过程中对协议框架不混乱。
在这里插入图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值