usb的传输类型

usb的传输类型

usb的四种传输类型:

  1. 批量传输
  2. 同步传输(或等时传输)
  3. 中断传输
  4. 控制传输

其中的批量,同步,中断,三种传输中,每完整传输一次数据都称做一个事务(主要的数据传输是靠这三种传输)

事务的具体表现(批量,同步,中断)

在这里插入图片描述

​ 上图说说的输入事务是以主机来说的, 主机需要先发送一条命令来接收信号 (主从模式(从机是不能主动发起通信的) 所有的通信都是由主机发起的, 从机只能被动应答)

主机发送:

第一个段: 同步域 需要先发送一个同步信号

第二段: PID(IN) 令牌表示我需要输入

第三段: 7为地址 从机所在地址:

第四段: 4位端点号有四种传输方式, 代表一种传输方式

第五段: 5位CRC校验 校验

结束标志: EoP

设备返回:

第一个段: 同步域 需要先发送一个同步信号

第二段: PID(data0) 数据令牌

第三段: 向主机输入的数据

第四段16位CRC校验

第五段: EOP 结束标志

主机应答: 有时候主机一次接收不完, 主机返回ack让从机继续发送

第二段: PID(ACK) 正常应答 Nck 为异常应答

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-U9UEMpi0-1686397833932)(usb的传输类型.assets/image-20230610192456350.png)]

上图是主机输出事务

主机第一次发送是不需要从机应答的

第二次需要, 如果从机一直没有应答, 会有超时

控制传输(主要用于主从命令配置)

包括三个过程: 建立过程和状态过程分别是一个事务, 数据过程则可能包含多个事务.

建立过程: 使用一个建立事务, SETUP+ DATA0 + ACK , 建立过程实际就是输出数据,

数据过程: 可以没有数据过程也可以有多笔数据事务, 由建立过程中的设置命令决定的

中断传输(这里指的是一种异步通信方式而已, 它不是物理中断.):

这里所说的中断, 不同于硬件中断,它不是由设备主动地发出一个中断请求, 而是由主机保证在不大于某个时间间隔内按排一次传输.

一般用于对时间要求比较严格的设备中, 入大多数HID设备, 也可以作为批量传输的状态检测,

中断传输与批量传输的结构一样

同步传输(开销很小的传输类型, 容许少量错误)

用于数据量大, 且时实时性要求比较高, 能容忍少量的数据错误的场合, 如音视频设备等, 并有可能因此占用批量传输的带宽, 而优先满足同步传输的需要

由于不保证数据100% 正确, 所以数据错误时, 并不进行重传, 也没有应答包, 如果crc等错误的话, 由软件来决定怎样处理.

批量传输:

数据量较大, 但实时性要求不高的场合,

, 并不进行重传, 也没有应答包, 如果crc等错误的话, 由软件来决定怎样处理.

批量传输:

数据量较大, 但实时性要求不高的场合,

小结

有什么不太了解的, 可以说出来, 探讨探讨, 互相学习一下嘛

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值