第1章 深入理解USB信號 001
1.1 USB的電氣特性和信號 002
1.1.1 電氣特性 003
1.1.2 驅動特性 007
1.1.3 USB信號特性 009
1.1.4 數據包編碼 018
1.2 連接和斷開的檢測 020
1.2.1 連接狀態(tài)的檢測 021
1.2.2 斷開狀態(tài)的檢測 024
1.3 速度檢測 028
1.3.1 低速和全速設備識別 028
1.3.2 高速設備識別 029
第2章 深入理解USB協議 035
2.1 通信協議 036
2.1.1 概要 038
2.1.2 包 039
2.1.3 事務 044
2.1.4 傳輸 055
2.1.5 數據翻轉 062
2.1.6 標準USB設備請求 069
2.2 USB描述符 071
2.2.1 設備描述符 073
2.2.2 配置描述符 074
2.2.3 接口描述符 075
2.2.4 端點描述符 076
2.2.5 字符串描述符 077
2.2.6 接口關聯描述符 078
2.2.7 設備限定描述符 079
2.2.8 其他速度模式下的配置描述符 079
2.3 枚舉 080
2.3.1 設備狀態(tài) 080
2.3.2 枚舉流程 083
2.4 掛起和恢復 090
2.4.1 掛起 090
2.4.2 恢復 092
2.4.3 高速模式下的掛起信號和復位信號區(qū)別 098
2.5 端點停止 100
2.5.1 功能停止 100
2.5.2 協議停止 103
2.6 OTG簡介 104
2.6.1 角色 105
2.6.2 協議 105
2.6.3 OTG設備狀態(tài)遷移 111
2.6.4 OTG工作流程 118
第3章 USB硬件控制器 121
3.1 增強主機控制器接口 122
3.1.1 寄存器接口 123
3.1.2 EHCI連接/斷開檢測 125
3.1.3 EHCI速度檢測 128
3.1.4 USB主機傳輸調度機制 130
3.1.5 USB設備傳輸調度機制 137
3.1.6 EHCI枚舉的軟件實現 139
3.1.7 EHCI掛起和恢復 140
3.1.8 EHCI異常處理 142
3.2 Kinetis主機控制器接口 143
3.2.1 外圍硬件設計 144
3.2.2 控制器接口 145
3.2.3 KHCI連接/斷開檢測 151
3.2.4 KHCI速度檢測 154
3.2.5 KHCI傳輸實現 155
3.2.6 KHCI枚舉的軟件實現 158
3.2.7 KHCI掛起和恢復 158
3.2.8 KHCI端點停止處理 161
第4章 USB音頻演示程序 163
4.1 USB音頻 164
4.1.1 USB音頻功能實現拓撲 164
4.1.2 音頻控制接口和描述符 165
4.1.3 音頻流接口和描述符 172
4.1.4 USB音頻描述符實例 177
4.1.5 音頻設備請求 182
4.1.6 USB音頻類2.0簡介 184
4.2 USB音頻流同步 187
4.2.1 反饋端點同步方案 188
4.2.2 調節(jié)時鐘同步方案 192
4.3 USB音頻演示程序代碼分析 192
4.3.1 連接/斷開檢測代碼分析 192
4.3.2 速度檢測代碼分析 198
4.3.3 枚舉、掛起和恢復代碼分析 202
4.3.4 音頻流同步代碼分析 208
4.3.5 USB音頻示例演示 212
第5章 USB認證 215
5.1 USB認證的簡介 216
5.2 USB認證的流程 218
5.2.1 獲得供應商識別碼 218
5.2.2 準備USB兼容性測試清單 219
5.2.3 送USB授權實驗室進行測試 220
5.2.4 獲得合格報告及證書 221
5.3 典型的測試用例 221
5.3.1 不受支持的設備信息 222
5.3.2 最大集線器層次數 222
5.3.3 電源預算指示 222
5.3.4 PET測試 223
5.3.5 USB測試模式 223
5.3.6 USB特殊單步測試用例 226
第6章 USB Type-C及供電協議 231
6.1 Type-C 232
6.1.1 接口定義 233
6.1.2 角色定義 235
6.1.3 熱拔插檢測 239
6.1.4 正反插檢測 240
6.1.5 供電功能 243
6.1.6 附屬模式 243
6.2 供電協議 244
6.2.1 供電協議規(guī)范定義 245
6.2.2 供電規(guī)則 252
6.2.3 供電協商 252
6.2.4 供電切換 255
6.2.5 通信功能協商 257
6.2.6 復用模式 258
6.3 解決方案 262
6.3.1 硬件支持 262
6.3.2 演示程序 265
參考文獻 270