文章目录
1、声明
本文是在学习韦东山《驱动大全》USB子系统时,为梳理知识点和自己回看而记录,全部内容高度复制粘贴。
韦老师的《驱动大全》:商品详情
其对应的讲义资料:https://e.coding.net/weidongshan/linux/doc_and_source_for_drivers.git
2、USB协议概述
USB(Universal Serial Bus)即通用串行总线,是一种广泛应用于计算机和外部设备之间的通信协议,旨在简化设备之间的连接和数据传输。它允许各种设备(如键盘、鼠标、打印机、存储设备、摄像头等)通过统一的接口与计算机进行连接和通信。
3、USB电气信号
3.1、USB基础概念
- USB有四条线,分别是5V、D+、D-、GND。
- USB 2.0协议支持3种速率:低速(Low Speed,1.5Mbps)、全速(Full Speed, 12Mbps)、高速(High Speed, 480Mbps)。
- 一个USB设备,可能兼容低速、全速,可能兼容全速、高速,但是不会同时兼容低速、高速。
3.1.1、低速/全速信号电平
这里列出几个主要的名词:
- Differential “1”和 Differential “0”
- Data J state 和 Data K state
- Idle state
3.1.2、高速信号电平
这里列出几个主要的名词:
- Differential “1”和 Differential “0”
- Data J state 和 Data K state
- Idle state
- Chirp J state 和 Chirp K state
3.2、学习目标
下图是USB设备状态切换图,我们将按顺序理解红框里的内容:
Attached -> Powered -&g