三种返回确认信息

ACK 、NAK 、STALL

【ACK 包】

ACK(确认) 表示 主机和设备已经收到数据,没有出现错误。设备必须在Setup 事务的交换包中返回ACK,设备也必须在OUT事务的交换中返回ACK。

主机在IN事务的交换包中返回ACK。

【NAK 包】(NAK包只能从设备发向主机)

NAK(未确认) 表示设备正忙或没有数据要返回。如果主机在设备太忙而不能接受数据时发送数据,

则设备在交换包中发出NAK。如果主机在设备没有数据可发送时向设备请求数据,则设备在数据包

中发出NAK。在上述两种情况的任何一种下,NAK表示一个暂时的状况,而主机会在以后重试。

【STALL包】

不支持的控制请求,控制请求失败或终端失败

当一个设备接收到一个终端不支持的控制传输请求,那么这个设备返回一个STALL 给主机。设备

在它支持这个请求但是由于某些原因不能采取请求的动作时,也会发出STALL给主机。

STALL 的另一个用途是在终端暂停特性设置的情况下来响应传输请求,表示终端根本不能发送

或接收数据。规范称这个类型的延迟为功能延迟。

批量和中断终端必须支持功能延迟。

在接收到一个功能STALL后,主机停止所有与设备悬而未决的请求,并且不会恢复通信直到它

已经发送一个成功的请求来清除设备的暂停特性。主机绝不会发送STALL

USB协议中的返回包含义相关推荐

  1. 简单说说USB协议(二)包的结构与包的分类

    无论是什么传输设备,通信的过程就涉及到传输方法,USB协议中有四种传输方式:批量传输.中断传输,等时传输,控制传输.因此在这些传输方式上传输的都是包,所以在了解传输方式前,还需要知道包是个什么东西. ...

  2. [网络知识]TCP协议中的粘包与拆包

    在平时客户端socket开发中,如果客户端连续不断的向服务端发送数据包时,服务端接收的数据会出现两个数据包粘在一起的情况,这就是TCP协议中经常会遇到的粘包以及拆包的问题. 我们都知道TCP属于传输层 ...

  3. 老丁带你学USB-解疑2:USB协议中的ACK、NAK、STALL三种返回包含义

    三种返回确认信息 ACK .NAK .STALL [ACK 包] ACK(确认) 表示 主机和设备已经收到数据,没有出现错误.设备必须在Setup 事务的交换包中返回ACK,设备也必须在OUT事务的交 ...

  4. HTTP协议中状态码的含义

    当浏览者访问一个网页时,浏览者的浏览器会向网页所在服务器发出请求.当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含HTTP状态码的信息头(server header)用以响应浏览器的请求. ...

  5. AXI协议中的模棱两可的含义的解释

    Cachable和Bufferable 一个Master发出一个读写的request,中间要经过很多Buffer,最后才能送到memory.这些Buffer的添加是为了outstanding,timi ...

  6. 5、USB协议学习:USB的枚举过程

    文章目录 枚举顺序 枚举过程 标准请求 bmRequestType bReqest 请求类型 GetDescriptor 设备描述符 设备描述符定义 获取设备描述符 返回设备描述符 配置描述符 配置描 ...

  7. 【Android车载系列】第8章 车载通信-USB协议代码实现

    1 USB协议 1.1 USB协议分层   上一篇已经简单介绍了USB协议的相关知识,其中的描述符较为重要,描述符成功返回,USB通信已经成功了一大半,具体描述符的知识点可以翻阅上一篇来了解.下面我们 ...

  8. 面试官问:你来讲下Netty通信中的粘包、拆包?

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 作者:Java技术剑 来源:https://urlify.cn/I ...

  9. BADUSB 橡皮鸭 键盘注入漏洞 USB协议漏洞

    摘要: BadUSB最早是在2014年的黑帽大会上研究人员JakobLell和Karsten Nohl提出并展示的.不同于老式的U盘病毒,它利用了USB协议中的一个漏洞,通过模拟键盘.鼠标.网卡等从而 ...

最新文章

  1. Form表单提交前进行JS验证的3种方式
  2. opencv 检测直线、线段、圆、矩形
  3. fftw_plan_dft_2d优化
  4. jQuery检查某个元素在页面上是否存在
  5. 两个孤寡老人不领证同居在一起合适吗?
  6. php鼠标 显示图片,鼠标放在图片上显示大图的JS代码
  7. 《htmlxhtml权威指南》部分标签语义学习
  8. silverlight异常
  9. #!/bin/sh与#!/bin/bash有区别
  10. python 拼图验证码
  11. 数据挖掘—GEO,TCGA,Oncomine联合(三)GEO数据的下载和数据质量分析
  12. 346雷达有多少tr组件_TR组件是什么?
  13. python下载酷狗音乐上的歌曲
  14. 前端加载自定义字体及速度优化
  15. 如果面试时大家都说真话
  16. 推荐 5 款私藏的优质 Chrome 插件
  17. 收到一封钓鱼邮件……
  18. 硬解直显模式实现抓图功能(二)
  19. 如何查询2021年高考成绩名次,2021年高考哪个分数段竞争最激烈?这些考生太难了...
  20. sublime text3 去除python代码的白色框框方法

热门文章

  1. IC上电和关断 --- POR策略
  2. vue实现自定义身份证,数字键盘(光标,输入框,键盘)
  3. 隐秘而伟大——纪念图灵诞辰110周年
  4. sublime text 3开启vi编辑模式
  5. Linux九阴真经之九阴白骨爪残卷3(自动化运维之系统安装)
  6. 华硕服务器 系统安装win7系统,华硕主板u盘装win7系统 华硕主板装u盘系统安装win7...
  7. web课程设计网页规划与设计 :网页设计——在线书店(12个页面) HTML+CSS+JavaScript 学生网页课程设计期末作业...
  8. ulimit -c unlimited 详解
  9. 世界杯的“中国元素”昂扬大国担当,点面科技全新推出的多模态多功能移动终端踏上卡塔尔征途!
  10. Eclipse常用配置