TOP
0
0
【簡體曬書區】 單本79折,5本7折,活動好評延長至5/31,趕緊把握這一波!
USB開發大全(第4版)(簡體書)
滿額折

USB開發大全(第4版)(簡體書)

人民幣定價:55 元
定價
:NT$ 330 元
優惠價
87287
絕版無法訂購
相關商品
商品簡介
作者簡介
名人/編輯推薦
目次
書摘/試閱

商品簡介

《USB開發大全(第4版)》介紹了有關通用串行總線(Universal Serial Bus,USB)的工作方式、設備硬件及軟件編程等方面的知識和工程實例,內容大致可分為4個方面。第一,闡述USB協議,包括基本常識、設備枚舉、傳輸過程、設備類、主機通信方式以及總線狀態等。讀者通過學習,可迅速掌握USB接口的工作原理和組織結構。第二,詳細地介紹了USB硬件,從控制器芯片的選擇、電源供給、集線器原理,到線纜的電氣和機械特性,幾乎涵蓋USB硬件的全部技術細節。第三,討論了USB的程序編寫,涉及設備固件和驅動,重點闡述了HID設備類驅動程序的開發,并給出了在廠商專屬設備上應用WinUSB的方法。第四,作者也關注了幾種開發工具的使用。《USB開發大全(第4版)》在組織上真正做到了協議、硬件、軟件、工具的完美結合,對4方面的論述滲透全書。
《USB開發大全(第4版)》融會作者在該領域豐富的工作經驗和設計實例,在規范與工程實際間搭起了橋梁。它是USB軟硬件的開發指南,一本無可替代的工具書。新版本與時俱進地增加了USB 3.0協議及其超高速總線的內容。無論初學者還是資深開發人員,讀到此書,都將如沐春風,大受裨益。

作者簡介

作者:(美國)阿克塞爾森 (Jan Axelson) 譯者:李鴻鵬 鄭瑞霞 陳香凝 等

阿克塞爾森(Jan Axelson),著有《串行端口大全》、《嵌入式以太網及互聯網大全》以及《USB大容量存儲設備》等書 其文章曾刊載于Circuits Cellar、Nuts & Volts、EDN及其他刊物上。

名人/編輯推薦

《USB開發大全(第4版)》涵蓋USB硬件的全部技術細節、USB接口的工作原理和組織結構、USB編程技術及HID設備驅動開發、USB無線通信技術、USB3.0強大動力和超高速總線技術。
開發者的權威指南!
讓USB的能量在您設計中釋放!
探索USB3.0及其超高速總線的奧秘!
這一版的《USB開發大全》經過全新修訂,及時反映了該領域的動向與更新。
若您參與開發USB設備或負責編寫訪問USB設備的軟件,《USB開發大全(第4版)》正適合您。
您可獲悉如何:
選擇合適的設備控制器芯片;
開發實現專用功能的設備;
用Visual Basic或C#等開發訪問設備;
通過采用USB設備類來減少開發時間;
使用USB無線接口來訪問USB設備;
節省功耗并延長電池壽命;
開發訪問USB設備的嵌入式系統。

目次

第1章 USB基礎
1.1 USB的用途和局限
1.1.1 給用戶帶來的好處
1.1.2 給開發者帶來的好處
1.1.3 USB不能做什么
1.1.4 USB與Ethernet
1.1.5 USB與IEEE-1394
1.2 USB接口的發展演變
1.2.1 USB 1.0
1.2.2 USB 1.1
1.2.3 USB 2.0
1.2.4 USB 3.0
1.2.5 USB On-The-Go
1.2.6 無線USB
1.3 總線組成部分
1.3.1 拓撲結構
1.3.2 關于總線速率的考慮
1.3.3 術語
1.4 分割工作
1.4.1 主機的責任
1.4.2 設備的職責
1.4.3 總線速率和數據吞吐量
1.5 開發設備
1.5.1 組件
1.5.2 開發工具
1.5.3 工程開發的步驟
1.6 USB 3.0常見問題
1.6.1 功能
1.6.2 兼容性
1.6.3 線纜
1.6.4 電源和功耗

第2章 深入USB傳輸
2.1 傳輸的基礎
2.1.1 傳輸要素
2.1.2 通信的目的
2.1.3 管理總線上的數據
2.2 傳輸要素
2.2.1 端點:數據的來源和數據接收端
2.2.2 事務類型
2.2.3 管道:將端點連接到主機
2.2.4 傳輸類型
2.2.5 流管道和消息管道
2.2.6 發起傳輸
2.3 USB 2.0事務
2.3.1 事務步驟
2.3.2 信息包的順序
2.3.3 時間約束和保證
2.3.4 分割事務
2.4 保證傳輸成功
2.4.1 狀態與控制
2.4.2 報告控制傳輸的狀態
2.4.3 錯誤檢查
2.5 超高速事務
2.5.1 信息包類型
2.5.2 數據傳輸
2.5.3 連接管理信息包

第3章 通用的傳輸類型
3.1 控制傳輸
3.1.1 可用性
3.1.2 結構
3.1.3 數據大小
3.1.4 速度
3.1.5 錯誤的檢測與處理
3.1.6 設備的職責
3.2 批量傳輸
3.2.1 可用性
3.2.2 結構
3.2.3 數據大小
3.2.4 速率
3.2.5 錯誤的檢測和處理
3.2.6 設備的職責
3.3 中斷傳輸
3.3.1 可用性
3.3.2 結構
3.3.3 數據大小
3.3.4 速率
3.3.5 錯誤的檢測和處理
3.3.6 設備的職責
3.4 等時傳輸
3.4.1 可用性
3.4.2 結構
3.4.3 數據大小
3.4.4 速度
3.4.5 錯誤的檢測和處理
3.4.6 設備的職責
3.5 更多關于時間關鍵傳輸的內容
3.5.1 總線帶寬
3.5.2 設備性能
3.5.3 主機性能
3.5.4 主機等待時間

第4章 枚舉:主機如何了解設備
4.1 枚舉過程
4.1.1 枚舉步驟
4.1.2 設備移除
4.1.3 枚舉成功的秘訣
4.2 描述字
4.2.1 類型描述字
4.2.2 設備描述字
4.2.3 Device_Qualifier描述字
4.2.4 配置描述字
4.2.5 Other_Speed_Configuration描述字
4.2.6 接口聯合描述字
4.2.7 接口描述字
4.2.8 端點描述字
4.2.9 超高速端點伙伴描述字
4.2.10 字符串描述字
4.2.11 二進制目標存儲及設備性能描述字
4.2.12 其他標準描述字
4.2.13 微軟OS描述字
4.2.14 更新描述字到USB 2.0

第5章 控制傳輸:用于關鍵數據的結構化請求
5.1 控制傳輸的組成
5.1.1 設置階段
5.1.2 數據階段
5.1.3 狀態階段
5.1.4 錯誤處理
5.1.5 設備固件
5.2 標準請求
5.2.1 Get Status(獲得狀態)請求
5.2.2 Clear Feature(清除特征)請求
5.2.3 Set Feature(設置特征)請求
5.2.4 Set Address(設置地址)請求
5.2.5 Get Descriptor(獲得描述字)請求
5.2.6 Set Descriptor(設定描述字)請求
5.2.7 Get Configuration(獲得配置)請求
5.2.8 Set Configuration(設定配置)請求
5.2.9 Get Interface(獲得接口)請求
5.2.10 Set Interface(設置接口)請求
5.2.11 Synch Frame(幀同步)請求
5.2.12 Set SEL(設定選擇)請求
5.2.13 Set Isochronous Delay(設定等時延時)請求
5.3 其他請求
5.3.1 類專屬請求
5.3.2 廠商定義的請求

第6章 芯片選擇
6.1 USB設備的組成部分
6.1.1 USB2.0控制器內部結構
6.1.2 其他的設備組件
6.2 簡化設備開發
6.2.1 設備要求
6.2.2 芯片文檔
6.2.3 驅動程序的選擇
6.2.4 調試工具
6.3 USB微控制器
6.3.1 Microchip的PIC18F4550
6.3.2 Cypress EZ-USB
6.3.3 ARM
6.4 連接到CPU的控制器
6.4.1 ST-NXP Wireless公司的ISP1582型控制器
6.4.2 PLX Technology的NET2272型控制器
6.4.3 FTDI公司的USB UART和USB FIFO

第7章 設備類
7.1 元素與用途
7.1.1 已被公認的規范
7.1.2 類規范的組成
7.2 已定義的類
7.2.1 音頻類
7.2.2 通信類
7.2.3 內容安全類
7.2.4 設備固件升級類
7.2.5 人機接口類
7.2.6 IrDA橋設備類
7.2.7 大容量存儲設備類
7.2.8 個人健康設備類
7.2.9 打印機設備類
7.2.10 智能卡設備類
7.2.11 靜態圖像獲取設備類
7.2.12 測試與測量設備類
7.2.13 視頻設備類
7.3 非標準功能的實現
7.3.1 選擇驅動程序
7.3.2 使用通用驅動程序
7.3.3 從RS-232轉換到USB
7.3.4 從并行端口轉換到USB
7.3.5 PC與PC間的通信

第8章 主機的通信方式
8.1 設備驅動程序
8.1.1 分層的驅動程序模型
8.1.2 用戶及內核模式
8.2 分層結構內部
8.2.1 應用程序
8.2.2 用戶模式下的用戶驅動程序
8.2.3 內核模式下的用戶驅動程序
8.2.4 總線和主機控制器驅動程序
8.3 編寫驅動程序
8.3.1 內核模式的驅動程序
8.3.2 用戶模式的驅動程序
8.3.3 測試工具
8.4 GUID的使用
8.4.1 設備設置GUID
8.4.2 設備接口GUID

第9章 為設備匹配驅動程序
9.1 使用設備管理器
9.1.1 查看設備
9.1.2 屬性頁
9.2 注冊表中的設備信息
9.2.1 Hardware鍵值
9.2.2 Class鍵值
9.2.3 Driver鍵值
9.2.4 Service鍵值
9.3 深入INF文件
9.3.1 結構及語法
9.3.2 設備專屬取值
9.4 使用設備標識字符串
9.4.1 找到匹配
9.4.2 何時提供INF文件
9.5 工具及診斷協助
9.5.1 使用INF文件的技巧
9.5.2 用戶可見到什么

第10章 設備檢測
10.1 關于Windows API函數調用的簡要指導
10.1.1 托管代碼與非托管代碼
10.1.2 管理數據
10.2 找到您的設備
10.2.1 獲取設備接口GUID
10.2.2 請求指向設備信息集的指針
10.2.3 標識設備接口
10.2.4 請求帶有設備類路徑名的結構體
10.2.5 提取設備路徑名
10.2.6 結束通信
10.3 獲取句柄
10.3.1 請求通信句柄
10.3.2 關閉句柄
10.4 檢測設備連接和移除
10.4.1 關于設備通知
10.4.2 請求設備通知
10.4.3 記錄設備變化信息
10.4.4 讀取設備變化消息
10.4.5 收回消息中的設備路徑名
10.4.6 停止設備通知

第11章 人機接口設備:使用控制和中斷傳輸
11.1 什么是HID
11.1.1 硬件要求
11.1.2 固件要求
11.2 描述字
11.2.1 HID接口
11.2.2 HID類描述字
11.2.3 報告描述字
11.3 HID專屬請求
11.3.1 Get Report請求
11.3.2 Get Idle請求
11.3.3 Get Prtocol請求
11.3.4 Set Report請求
11.3.5 Set Idle請求
11.3.6 Set Protocol請求
11.4 數據傳輸
11.4.1 編寫固件
11.4.2 工具

第12章 人機接口設備:報告
12.1 HID報告的數據結構
12.1.1 使用HID描述符編輯工具
12.1.2 控制項及數據項目的值
12.1.3 項目格式
12.2 主項目
12.2.1 輸入項目,輸出項目及特征項目
12.2.2 Collection項目
12.3 全局項目類型
12.3.1 識別報告
12.3.2 描述數據用途
12.3.3 單位轉換
12.3.4 轉換原始數據
12.3.5 描述數據大小及數據格式
12.3.6 儲存和恢復全局項目
12.4 局部項目類型
12.4.1 物理描述符
12.4.2 填充

第13章 人機接口設備:主機應用程序
13.1 HID API函數
13.1.1 請求HID信息
13.1.2 報告發送與接收
13.1.3 報告數據提供及使用
13.1.4 HID通信管理
13.2 設備識別
13.2.1 讀取Vendor ID及Product ID
13.2.2 獲取設備功能指針
13.2.3 獲取設備功能
13.2.4 獲取按鈕及數值的功能
13.3 報告發送與接收
13.3.1 向設備發送輸出報告
13.3.2 由設備讀取輸入報告
13.3.3 向設備寫入特征報告
13.3.4 從設備讀取特征報告
13.3.5 關閉通信

第14章 利用WinUSB的廠商定義函數
14.1 功能與局限
14.1.1 設備要求
14.1.2 主機要求
14.1.3 設備固件
14.1.4 分配WinUSB驅動程序
14.2 訪問設備
14.2.1 獲取WinUSB句柄
14.2.2 請求接口描述符
14.2.3 端點識別
14.2.4 配置管道策略
14.2.5 利用批量傳輸及中斷傳輸寫入數據
14.2.6 利用批量傳輸及中斷傳輸讀取數據
14.2.7 使用廠商定義的控制傳輸
14.2.8 關閉通信

第15章 集線器
15.1 USB 2.0
15.1.1 集線器轉發器
15.1.2 事務轉換器
15.1.3 集線器控制器
15.1.4 傳輸速率
15.1.5 維持已激活鏈接
15.2 USB 3.0
15.2.1 總線速率
15.2.2 USB 3.0的構成
15.2.3 通信管理
15.3 集線器類
15.3.1 集線器描述符
15.3.2 集線器類請求
15.3.3 端口指示器

第16章 電源管理
16.1 電源選項
16.1.1 電壓
16.1.2 使用總線電源
16.1.3 電源需求
16.1.4 通知主機
16.1.5 電池充電
16.2 集線器電源
16.2.1 電源
16.2.2 電流超載保護
16.2.3 功率切換
16.3 節電模式
16.3.1 USB 2.0鏈路電源管理
16.3.2 掛起狀態
16.3.3 休眠狀態
16.3.4 超速通信電源管理
16.3.5 Windows操作系統下的電源管理

第17章 測試與調試
17.1 工具
17.1.1 硬件協議分析器
17.1.2 軟件協議分析器
17.1.3 流量發生器
17.2 測試
17.2.1 合規性
17.2.2 Windows徽標

第18章 總線上的包
18.1 USB 2.0通信
18.1.1 低速、全速總線狀態
18.1.2 高速總線狀態
18.1.3 數據編碼
18.1.4 保持同步
18.1.5 精確計時
18.1.6 包的格式
18.1.7 包間延遲
18.1.8 測試模型
18.2 超速通信
18.2.1 數據加擾
18.2.2 編碼
18.2.3 鏈路層
18.2.4 復位

第19章 電氣與機械接口
19.1 USB 2.0收發器
19.1.1 線纜段
19.1.2 低速和全速收發器
19.1.3 高速收發器
19.1.4 信號電壓
19.2 USB 2.0線纜
19.2.1 導線
19.2.2 連接器
19.2.3 可拆卸及不可分離線纜
19.2.4 線纜長度
19.2.5 總線長度
19.2.6 芯片間連接
19.3 USB 3.0
19.3.1 發送器和接收器
19.3.2 線纜
19.4 確保信號質量
19.4.1 噪聲來源
19.4.2 對稱傳輸線
19.4.3 雙絞線
19.4.4 屏蔽
19.4.5 邊沿變化率
19.4.6 被隔離的接口
19.5 無線方式實現USB
19.5.1 無線USB認證
19.5.2 Cypress無線USB
19.5.3 其他選擇

第20章 嵌入式系統主機
20.1 USB OTG
20.1.1 能力與局限
20.1.2 OTG連接器
20.1.3 A型設備及B型設備
20.1.4 OTG設備要求
20.1.5 OTG描述符
20.1.6 HNP特征代碼
20.2 其他主機選項
20.2.1 嵌入式主機要求
20.2.2 設備端口
20.3 控制器芯片
20.3.1 微控制器
20.3.2 接口芯片

書摘/試閱

帶有多個數據信思包的高速批量或控制傳輸中,主機可能會在發送第二個數據信息包和隨後的任何數據信息包之前,發送一個PING包標識符,來確定是否端點已經準備好接收更多的數據。設備則響應一個狀態代碼。
SPLIT包標識符用于將令牌包看作是分割事務的一部分,這會在隨後章節中解釋。ERR包標識符只用于分割事務。USB 2.0集線器使用此包標識符在下行的低速、全速事務中報錯。由于集線器從來不會向主機發送PRE或者向設備發送ERR,ERR和PRE雖然擁有同樣的取值卻不會造成混淆。同樣,ERR只用于高速線路段,而PRE則從來不會在高速線路段被發送。
USB 2.0規范的電源連接管理附錄(Link Power Management addendum)定義了EXT包標識符。主機會在EXT令牌信息包後面跟隨一個擴展的令牌信息包,用于特別功能。
第16章有關于在電源管理中使用擴展令牌信息包的更多論述。對于分割事務,SPLIT信息包會先行于令牌信息包。
根據不同的傳輸類型,以及主機與設備是否有信息要發送,令牌包後可能會跟有數據信息包。令牌信息包中所確定的方向,決定了是由主機還是設備來發送數據信息包。在除等時傳輸外的其他所有傳輸類型中,數據信息包的接收端(或沒有數據信息包的設備)會返回一個聯絡信息包,其中含有表明事務成功與否的代碼。沒有收到預期的聯絡信息包表明錯誤更為嚴重,或信息包標識符不被支持。

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 287
絕版無法訂購

暢銷榜

客服中心

收藏

會員專區