Linux源码阅读笔记-USB设备驱动架构

总线速度及主机控制器

USB系统架构

USB系统主机端提供为4个引脚的A型接口,USB外围设备通过4个引脚的B型接口和主机端连接。那4个引脚(一条电压线VBUS、一条地线GND、一条正方向传输数据的D+和一条反方向传输数据的D-线。)USB主机和USB设备收发器可以采用相同型号的芯片。

嵌入式设备的USB架构视图

USB标准 传输速度
USB1.0 1.5MB/s
USB1.1 12MB/s
USB2.0 480MB/s

传输模式和寻址方法

  1. USB传输模式:控制传输模式,中断传输模式,登时传输模式,批量传输模式。

  2. 寻址:USB设备里面每个寻址单元称为端点。为每个端点分配的地址称为端点地址。每个端点地址都与之相关的传输模式。

  3. 每个端点可以沿上行方向发送数据,也可以沿下行方向接收数据。沿上行防线从设备收数据叫IN传输;数据沿下行方向到达设备叫OUT传输。

  4. USB驱动整体框架结构及USB子系统架构视图。

USB驱动整体框架结构

USB子系统架构视图

USB驱动总线数据结构

  1. usb设备描述符结构体类型
  1. usb设备结构体类型
  1. usb配置描述符结构类型
  1. 接口描述符类型
相关推荐
改一下配置文件14 分钟前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
碳基沙盒42 分钟前
OpenClaw 多 Agent 配置实战指南
运维
深紫色的三北六号10 小时前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash14 小时前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI1 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行2 天前
Linux和window共享文件夹
linux
木心月转码ing2 天前
WSL+Cpp开发环境配置
linux
蝎子莱莱爱打怪3 天前
Centos7中一键安装K8s集群以及Rancher安装记录
运维·后端·kubernetes
崔小汤呀3 天前
最全的docker安装笔记,包含CentOS和Ubuntu
linux·后端
何中应3 天前
vi编辑器使用
linux·后端·操作系统