news 2026/6/10 22:57:27

usb 通讯

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
usb 通讯

USB(Universal Serial Bus,通用串行总线)是一种广泛使用的串行通信协议,用于连接计算机与外部设备(如键盘、鼠标、打印机、存储设备、摄像头等)。USB 通信具有即插即用、热插拔、高传输速率和供电能力等优点。

下面是对 USB 通信的基本介绍:


一、USB 的基本组成

  1. 主机(Host)

    • 通常是 PC 或嵌入式主控器。
    • 控制整个 USB 通信过程,发起所有数据传输。
  2. 设备(Device)

    • 如 U 盘、鼠标、手机等。
    • 响应主机请求,不能主动发起通信。
  3. 集线器(Hub)

    • 用于扩展 USB 接口数量。

二、USB 的通信拓扑结构

  • USB 采用星型拓扑,所有通信必须通过主机进行。
  • 设备之间不能直接通信

三、USB 的版本与速度

版本最大速率发布年份
USB 1.01.5 Mbps (低速) / 12 Mbps (全速)1996
USB 2.0480 Mbps (高速)2000
USB 3.05 Gbps (超高速)2008
USB 3.110 Gbps2013
USB 3.220 Gbps2017
USB440 Gbps(基于 Thunderbolt 3)2019

四、USB 通信模型

USB 通信基于管道(Pipe)端点(Endpoint)

  • 端点(Endpoint):设备上的数据缓冲区,有方向(IN/OUT)。
  • 管道(Pipe):主机与端点之间的逻辑连接。
  • 每个设备至少有一个控制端点(Endpoint 0),用于枚举和配置。
传输类型:
  1. 控制传输(Control Transfer)

    • 用于设备识别、配置(如枚举阶段)。
    • 可靠、双向、有确认机制。
  2. 批量传输(Bulk Transfer)

    • 用于大量数据(如打印机、U盘)。
    • 可靠但无固定带宽保证。
  3. 中断传输(Interrupt Transfer)

    • 用于低延迟、小数据量(如鼠标、键盘)。
    • 定期轮询。
  4. 等时传输(Isochronous Transfer)

    • 用于音视频流(如摄像头、耳机)。
    • 保证带宽和时序,但不重传错误数据。

五、USB 枚举过程(简要)

当设备插入主机时,会经历以下步骤:

  1. 上电复位(Device Reset)
  2. 主机读取设备描述符(Device Descriptor)
  3. 分配地址(Set Address)
  4. 读取配置描述符(Configuration Descriptor)
  5. 加载驱动程序
  6. 进入正常工作状态

六、开发相关

  • 主机端开发:通常使用操作系统提供的 API(如 Windows 的 WinUSB、Linux 的 libusb)。
  • 设备端开发:使用 MCU(如 STM32、ESP32)配合 USB 外设或专用芯片(如 FTDI、CH340)。
  • 调试工具:Wireshark(配合 USBPcap)、USBlyzer、Total Phase Beagle 等。

如果你有具体的应用场景(比如想用单片机实现 USB 通信、解析 USB 协议、开发驱动等),可以告诉我,我可以提供更针对性的建议或代码示例。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/9 14:46:52

Qwen3-Embedding-4B性能评测:多语言文本聚类效果对比

Qwen3-Embedding-4B性能评测:多语言文本聚类效果对比 1. Qwen3-Embedding-4B介绍 Qwen3 Embedding 模型系列是 Qwen 家族中专为文本嵌入与排序任务打造的最新成员,基于强大的 Qwen3 系列基础模型构建。该系列覆盖多种参数规模(0.6B、4B 和 …

作者头像 李华
网站建设 2026/6/10 19:51:48

Z-Image-Turbo实测:复杂描述也能精准还原

Z-Image-Turbo实测:复杂描述也能精准还原 在文生图领域,我们常遇到这样令人沮丧的时刻:精心构思的提示词——“一位穿靛蓝扎染旗袍的年轻女子站在苏州平江路青石板上,左手提竹编食盒,背景是粉墙黛瓦与垂柳&#xff0c…

作者头像 李华
网站建设 2026/6/10 13:39:36

YOLO11快速部署指南:5分钟跑通你的第一个模型

YOLO11快速部署指南:5分钟跑通你的第一个模型 你是不是也经历过——下载完模型、配环境、装依赖、改路径、调参数……折腾两小时,连一张图都没检测出来?别急,这篇指南专治“部署焦虑”。我们不讲原理、不抠代码细节、不堆术语&am…

作者头像 李华
网站建设 2026/6/10 17:07:52

计算机毕业设计Spark地铁客流量预测 交通大数据 交通可视化 大数据毕业设计 深度学习 机器学习 大数据毕业设计(源码+LW文档+PPT+讲解)

温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 技术范围:Sprin…

作者头像 李华
网站建设 2026/6/10 12:53:40

零基础搭建AI绘图系统,Z-Image-Turbo超简单

零基础搭建AI绘图系统,Z-Image-Turbo超简单 你是不是也试过:下载一堆模型、配环境、改配置、调依赖……折腾半天,连一张图都没生成出来? 或者刚打开网页,就弹出“CUDA out of memory”“Model not found”“Port 7860…

作者头像 李华
网站建设 2026/6/10 13:25:57

aiohttp批量请求最佳实践(从入门到跑通1000并发)

第一章:aiohttp批量请求最佳实践(从入门到跑通1000并发) 在高并发HTTP客户端场景中,aiohttp凭借其异步I/O特性和轻量级设计成为Python生态的首选。但盲目提升并发数常导致连接耗尽、服务端限流或客户端内存溢出。本章聚焦可落地的…

作者头像 李华