USB百科
+ -

USB工作原理

2022-03-11 4985 20

所有 USB 数据传输均由 USB 主机发起。主机通过维护称帧的时间间隔来控制通信时间。主机在每帧开始时在 USB 数据线上发出帧开始 (SOF) 序列。
每帧的时间间隔由指定的USB 速度决定。USB 合规性认证的一项能力要求是主机准确发布 SOF

低速或全速SOF间隔1ms,高速为125us。

USB主机与设备进在帧间期间使用事务通信。
事务通讯

传输数据的机制涉及主机读取和写入位于每个设备上的一组内存位置。这些内存位置称为端点。端点的大小(即端点中的数据量)在不同设备之间可能会有很大差异。

设备端点以编号对的形式出现。端点编号从 0 开始,最高可达 32。每个端点编号都有一个 IN 和一个 OUT 端点。OUT 端点携带来自主机的数据,而 IN 端点包含发送到主机的数据。例如,端点 1 是两个端点;端点 1 IN (EP1IN) 和端点 1 OUT (EP1OUT)。

USB主机发送数据到设备

当主机希望向设备发送消息时,通过使用 WRITE 事务将消息放置在设备上的 OUT 端点中。设备的应用程序代码监视 OUT 端点以确定是否已从主机接收到任何消息。在检测到来自 Host 的消息存在后,Device 将从 OUT 端点复制消息。

USB主机发送数据到设备

USB主机接收来自设备的数据

如果设备的程序希望与主机通信,则会在 IN 端点中放置一条消息。该消息将保留在 IN 端点中,直到主机发出 READ 事务。READ 事务导致将 IN 端点的内容发送到主机。
USB主机接收来自设备的数据

通讯参数

USB 与端点通信的数据速率取决于三个项:

  • 帧的信号速率,由指定的 USB 速度决定。
  • 端点的大小(每个事务移动的数据量)。
  • 主机向端点发出事务的频率。这可以从每帧几个事务到端点事务之间的多个帧不等。

有关所有端点参数和通信要求的信息由设备定义,并在设备插入主机并成功枚举时提供给主机。枚举过程通知主机在与设备端点通信时使用哪种传输类型。

控制和配置

每个 USB 设备都将端点 0 保留为称为控制端点的唯一端点。端点0 IN 包含主机在枚举期间读取的 USB 设备的描述。端点0 OUT 使主机能够向设备发送配置命令。

HID人机交互QQ群:564808376    UAC音频QQ群:218581009    UVC相机QQ群:331552032    BOT&UASP大容量存储QQ群:258159197    STC-USB单片机QQ群:315457461    USB技术交流QQ群2:580684376    USB技术交流QQ群:952873936   

0 篇笔记 写笔记

USB Type-C的工作原理与技术分析
USB TYPE-C更加深入的应用,是从USB3.1开始的,这是因为从USB3.1开始,USB的功能开始变得更加丰富起来。USB 3.1基本规格有SS字样的代表支持PD,有SS和10的USB标志代表支持USB3.1及PD2.0历代USB输出功率及标志比较本图来源于:https://ww......
USB4规范解读(三) 深入了解USB4的系统结构和工作原理
本文介绍USB4主机和USB设备的内部组成。USB4系统分为USB4主机和USB4设备,而USB4设备又分为USB4集线器、USB4扩展坞和USB4外部设备。USB4主机、USB4集线器和USB4外部设备组成的一整个系统叫做USB4系统架构。这里的系统架构指的是整体的设计框图,描述了构成整体的各个部......
USB通讯原理
USB是轮询总线,USB主机与设备之间的数据交换都是由主机发起的,设备端只能被动的响应。USB数据传入或传出 USB 设备中的端点。USB 主机中的客户端将数据存储在缓冲区中,USB主机没有端点的概念。USB Host 和外围 USB Device 有不同的层,如下图所示。各层之间的连接是每个水......
USB工作原理
所有 USB 数据传输均由 USB 主机发起。主机通过维护称帧的时间间隔来控制通信时间。主机在每帧开始时在 USB 数据线上发出帧开始 (SOF) 序列。每帧的时间间隔由指定的USB 速度决定。USB 合规性认证的一项能力要求是主机准确发布 SOF。低速或全速的SOF间隔1ms,高速为125us......
Windows服务HidServ及Hid.dll工作原理
在Windows操作系统下,使用自定义HID接口通讯时,离不开hid.dll,就算你使用的是hidapi等第三方HID库,它的底层也是HID.dll这个库。而我们使用系统原生的hid.dll库时,也一般是这样引用的。#include#pragma comment(......
UVC红外相机的工作原理
UVC红外相机从USB设备来讲,是一个独立的UVC设备,但其在使用时往往配合彩色相机一起使用。由于红外相机和彩色相机采集的是同一场景,只是采集的信息不一样。故对于操作系统来说,需要对这IR相机和彩色相机进行整合分组,分组的ID叫做容器ID(container ID),容器ID相同归为同一组相机。需......
关注公众号
  • HID人机交互
  • Linux&USB
  • UAC音频
  • TYPE-C
  • USB规范
  • USB大容量存储
  • USB百科
  • USB周边
  • UVC摄像头
  • Windows系统USB
  • 音视频博客
  • 取消
    感谢您的支持,我会继续努力的!
    扫码支持
    扫码打赏,你说多少就多少

    打开支付宝扫一扫,即可进行扫码打赏哦

    您的支持,是我们前进的动力!