TOP
0
0
【簡體曬書區】 單本79折,5本7折,活動好評延長至5/31,趕緊把握這一波!
USB 3.0編程寶典(簡體書)
滿額折

USB 3.0編程寶典(簡體書)

人民幣定價:99 元
定  價:NT$ 594 元
優惠價:87517
絕版無法訂購
相關商品
商品簡介
名人/編輯推薦
目次

商品簡介

USB總線接口技術是當前計算機接口最流行的技術,本書系統地介紹了USB總線接口的協議、工作原理、驅動程序設計以及上位機控制函數。本書中還以大量實例,全面詳細地介紹了不同場合下USB接口的應用。本書言簡意賅、通俗易懂,知識點介紹全面詳細,實例完整豐富。通過本書,讀者能夠更快、更好地掌握當前最新USB接口的原理及設計方法。
本書分為4部分,共26章,全面詳細地講述了USB接口的編程原理及應用實例。第1部分是USB總線接口技術基礎,介紹了USB總線接口的協議、事務處理、數據傳輸方式以及設備配置等;第2部分重點介紹了USB接口驅動程序的設計,包括使用DriverStudio進行驅動程序設計、使用通用USB驅動程序以及LabVIEW平臺下的驅動程序設計。第3部分是USB編程基礎,詳細介紹了在DriverStudio、C++、C#和LabVIEW平臺下如何對USB接口進行讀寫控制;第4部分為USB開發實戰,通過11個例子,詳細介紹了在不同的應用場合下USB接口設備的設計,包括完整的電路圖、固件程序、驅動程序和上位機程序設計。
本書內容全面、結構緊湊、實例豐富。對于USB接口開發的初學者,通過學習本書可以快速掌握USB接口開發。本書對具有一定開發經驗的設計人員也有很好的參考價值。

名人/編輯推薦

《USB 3.0編程寶典》由電子工業出版社出版。

USB是一種新型的計算機總線接口技術,其全稱為Universal Serial Bus(通用串行總線)。目前,在消費電子產品以及智能測控等領域,USB接口得到了廣泛的應用。USB接口使得計算機和外部設備的連接十分方便,例如USB鼠標、USB鍵盤、USB攝像頭、USB移動硬盤、USB打印機等。在實際設計工作中,也越來越多地采用USB技術,例如USB接口控制、高速USB數據采集等。目前USB接口大有取代其他老式接口的趨勢。因此,掌握USB接口的設計開發是非常必要的。
為了便于廣大電子設計者能夠掌握USB接口的知識,并快速開展基于USB接口的設計開發,本書詳細介紹了新型USB總線接口的協議、工作原理、驅動程序開發、固件程序設計和上位機程序設計。另外,本書還以豐富的實例,全面詳細地介紹了在各種應用場合下USB的設計實例。學完本書后,讀者可以全面地掌握USB接口的設計開發。
和其他書籍相比,本書具有如下優點
1.知識點豐富全面
為了便于讀者全面掌握USB總線接口技術,本書涉及USB總線技術接口協議、USB事務處理、USB數據傳輸類型、各類USB描述符及設備請求,同時還介紹了各種平臺下的USB驅動程序開發和上位機編程。通過本書,讀者可以完整掌握不同平臺下USB設備的開發。
2.內容新穎
USB接口技術發展非常迅速,現在已經推出了全新的超高速USB 3.0接口技術協議。本章在介紹常規的USB接口協議和開發時,還介紹了當前最新的USB 3.0總線接口技術。同時,在USB接口開發和應用方面,針對近年來全新的LabVIEW平臺USB接口開發以及嵌入式Android操作系統下的USB接口開發進行了介紹。這些內容都是近年來USB接口的全新應用點,十分具有前沿性。
3.遵循開發流程
由于USB開發涉及不同的領域,所以為了便于讀者學習,本書按照開發流程和學習順序,嚴格劃分章節。通過USB總線技術接口協議、USB驅動程序開發、USB編程基礎和USB開發實戰4章的內容,逐步帶領讀者深入USB接口開發。同時,在每一章中,采用由淺入深的方式,逐步展開各個知識點的講解。
4.實例完整詳細
對于讀者來說,完整詳細的實例可以幫助讀者理解和掌握USB接口的開發。本章對于每一個應用實例都詳細介紹了開發基礎知識,并提供了完整的電路原理圖、驅動程序設計、固件程序和上位機程序。讀者可以將本書實例直接應用于實際工作中。對于需要改進的實例,也只需要簡單修改,就可以投入使用。
5.開發代碼講解注釋詳細
本書在每一個USB設計實例中,對程序代碼進行了比較詳細的注釋和講解,從而幫助讀者理解程序代碼的功能,加速USB設計學習的進度。
6.多平臺開發模式
隨著技術的不斷進步和發展,USB接口的開發可以采用多種方式。本書擺脫傳統的單一平臺設計模式,全面介紹了DriverStudio、Visual C++、Visual C#、LabVIEW和Android平臺下的USB接口開發。讀者可以更為全面地掌握USB接口開發,為日后的設計工作提供更多思路。
本書的內容
本書以全面性、實用性、系統性、完整性和前沿性為重點,詳細介紹了USB總線技術接口開發的全過程。本書分為4篇,共26章內容。
第一篇是USB總線接口技術基礎篇,共分為8章。詳細介紹了USB接口技術、USB事務處理、USB數據傳輸類型、各類USB設備配置以及常用的USB接口芯片。
第1章為USB技術概述,介紹了USB總線技術的產生、USB接口類型以及USB總線版本,同時還對USB總線結構以及其他相關計算機接口進行了介紹對比。最后,給出了USB設備開發的基本流程。
第2章為USB電源管理,介紹了USB接口的供電方式,并重點介紹了典型USB接口的電源設計以及USB電源管理方式。
第3章為USB事務處理,介紹了USB事務處理的各個階段以及7種典型的USB事務處理,這是USB接口協議的底層基礎。
第4章為USB數據傳輸類型,詳細介紹了USB接口的塊傳輸、中斷傳輸、控制傳輸和同步傳輸4種傳輸類型,并針對全新的USB 3.0介紹了傳輸方式的改變。
第5章為USB設備配置,對USB功能設備的描述符進行了全面的介紹,并詳細講解了USB設備請求。
第6章為USB集線器配置,詳細介紹了USB集線器的描述符以及集線器設備請求。
第7章為USB HID設備配置,詳細介紹了USB HID類設備的描述符以及USB HID設備請求。
第8章為常用的USB芯片,介紹了幾種常用的通用USB接口芯片和專用USB接口芯片,這些內容是USB接口開發的基礎,在實際開發過程中經常會用到。最后,還介紹了USB接口在PCB設計上的注意事項。

第二篇是USB驅動程序設計篇,共分為3章。詳細介紹了USB驅動程序的概述,以及采用DriverStudio、通用驅動程序和LabVIEW平臺下的USB驅動程序開發。
第9章為USB驅動程序,介紹了Windows平臺的WDM驅動程序框架,并介紹了DriverStudio驅動開發工具。
第10章為通用驅動程序解析,詳細講解了驅動程序的INF文件結構,并介紹了Cypress通用驅動程序和微軟通用USB驅動程序WinUSB。
第11章為LabVIEW平臺的USB驅動程序開發,詳細講解了NI LabVIEW平臺及NI-VISA平臺,介紹了如何使用NI-VISA來創建LabVIEW平臺的USB驅動程序。

第三篇是USB編程篇,共分為4章。詳細介紹了在DriverStudio、Visual C++、Visual C#和LabVIEW平臺下如何實現USB設備編程。
第12章為基于DriverStudio的USB設備編程基礎,介紹了DriverStudio提供的上位機USB開發庫函數及其應用。
第13章為基于Visual C++的USB設備編程基礎,介紹了Cypress的USB接口開發庫函數CyAPI的應用。
第14章為基于Visual C#的USB設備編程基礎,介紹了Cypress提供的.net平臺USB開發庫函數及其應用。
第15章為基于LabVIEW的USB設備編程基礎,介紹了在NI LabVIEW平臺下使用VISA函數如何讀寫和控制USB設備。

第四篇是USB開發實戰篇,共分為11章。詳細介紹了在各個應用場合的USB接口開發,提供了完整的電路原理圖、驅動程序、固件程序和上位機程序。
第16章為EZ-USB FX2LP固件設計,詳細講解了Cypress固件開發工具,并通過實例介紹了USB接口固件設計和調試方法。
第17章為USB控制數碼管顯示實例,詳細講解了USB接口的控制端點0及其請求,并使用EZ-USB FX2LP的IO端口來實現對數碼管的控制。實例中提供了完整的電路原理圖、固件程序和上位機程序。
第18章為使用EEPROM列舉USB設備,詳細講解了EZ-USB FX2LP的EEPROM啟動模式,并通過一個實例介紹了如何實現自定義USB設備的啟動。實例中提供了完整的電路原理圖、驅動程序、固件程序和上位機程序。
第19章為基于Slave FIFO模式的USB數據采集,詳細介紹了EZ-USB FX2LP的Salve FIFO接口模式及其程序設計,并通過一個實例介紹了如何實現高速數據采集。實例中提供了完整的電路原理圖、驅動程序、固件程序和上位機程序。
第20章為PSoC USB設計實例。本章采用PSoC 3系列USB接口芯片,介紹了使用PSoC Creator設計USB固件程序的方式、驅動程序和上位機程序設計。實例中提供了完整的電路原理圖、驅動程序、固件程序和上位機程序。
第21章為USB控制DA輸出實例,詳細講解了D/A轉換器的工作原理,并使用PSoC芯片內部集成的D/A轉換器來實現特定信號的輸出。實例中提供了完整的電路原理圖、驅動程序、固件程序和上位機程序。
第22章為USB控制A/D轉換實例,詳細講解了A/D轉換的工作原理,并通過一個高性能的8通道A/D轉換器MAX1300來采集外部的多路模擬信號。實例中提供了完整的電路原理圖、驅動程序、固件程序和上位機程序。
第23章為USB集線器開發實例,詳細介紹了USB Hub芯片CY7C65642,并依此設計了一個4端口USB 2.0高速集線器。實例中提供了完整的電路原理圖。
第24章為U盤設計實例,詳細講解了U盤存儲芯片的操作方式以及Nand-Flash控制器CY7C68024,并依此設計了一個U盤。實例中提供了完整的電路原理圖。
第25章為USB接口控制示波器實例,介紹了示波器及示波器的編程接口,并通過兩個實例介紹了如何實現USB接口示波器的控制。實例中提供了上位機程序。
第26章為Android平臺USB接口開發,詳細講解了Android操作系統開發平臺以及Android的USB接口模式,并通過一個完整實例介紹了如何編寫Android手機的USB控制程序。實例中提供了完整的電路原理圖、固件程序和上位機程序。
本書由重慶電子工程職業學院的鄭杰老師編寫,本書知識點覆蓋全面、結構安排緊湊、講解詳細、實例豐富、圖文并茂。由于本書內容較多,編寫時間比較倉促,書中如有遺漏或不足之處,懇請廣大讀者提出寶貴意見,以便于進一步改進。
適合的讀者
? USB接口初學者
? 具有一定開發經驗的USB設計人員。
? 電子設計愛好者。
? 電子工程師。
? 系統開發人員。
? 大學、大專等相關專業的學生及教師。
? 硬件開發培訓班。
編者
2013年4月

目次

第1部分 USB總線接口技術基礎
第1章 USB技術概述
1.1 USB總線技術的產生
1.2 認識USB總線接口
1.2.1 USB A型插座和插頭
1.2.2 USB B型插座和插頭
1.2.3 USB mini型插座和插頭
1.2.4 USB micro型插座和插頭
1.2.5 USB 3.0型插座和插頭
1.2.6 USB電纜結構
1.3 USB總線版本
1.3.1 USB 1.0
1.3.2 USB 1.1
1.3.3 USB 2.0
1.3.4 USB 3.0
1.3.5 其他USB規范
1.4 USB規范概覽
1.5 USB總線結構
1.5.1 USB主機
1.5.2 USB電纜
1.5.3 USB設備
1.6 USB總線特點
1.7 USB的競爭技術解析
1.7.1 IEEE 1394接口技術
1.7.2 eSATA接口技術
1.7.3 USB PLUS接口技術
1.7.4 Thunder Bolt超高速接口技術
1.7.5 USB接口與其他計算機接口的對比
1.8 USB設備的開發
1.9 小結
第2章 USB電源管理
2.1 USB的供電
2.1.1 USB接口的電源指標
2.1.2 USB外設功率需求
2.2 典型USB外設的電源設計
2.2.1 USB根集線器
2.2.2 USB總線供電集線器
2.2.3 USB自供電集線器
2.2.4 USB總線供電低功率設備
2.2.5 USB總線供電高功率設備
2.2.6 USB自供電設備
2.2.7 USB設備功率需求的設置
2.3 USB電源管理
2.3.1 激活(ACTIVE)
2.3.2 掛起(SUSPEND)
2.3.3 空閑(FAST EXIT IDLE)
2.3.4 睡眠(SLOW EXIT IDLE)
2.3.5 USB 2.0與USB 3.0電源管理的區別
2.4 小結
第3章 USB事務處理
3.1 USB事務處理概述
3.2 令牌階段
3.2.1 同步字段
3.2.2 令牌包
3.3 數據階段
3.3.1 同步字段
3.3.2 數據包
3.4 握手階段
3.4.1 同步字段
3.4.2 握手包
3.5 USB事務處理
3.5.1 IN事務處理
3.5.2 OUT事務處理
3.5.3 SETUP事務處理
3.5.4 PING事務處理
3.5.5 SOF事務處理
3.5.6 SPLIT事務處理
3.5.7 PRE事務處理
3.6 USB設備的總線狀態
3.7 USB設備的總線列舉
3.7.1 連接USB設備
3.7.2 斷開USB設備
3.8 小結
第4章 USB數據傳輸類型
4.1 USB數據傳輸概述
4.1.1 USB下傳數據
4.1.2 USB上傳數據
4.1.3 USB的數據傳輸類型
4.2 USB塊傳輸
4.2.1 USB塊傳輸方式
4.2.2 塊傳輸的數據包長度
4.2.3 塊事務處理
4.3 USB中斷傳輸
4.3.1 USB中斷傳輸方式
4.3.2 中斷傳輸的數據包長度
4.3.3 中斷事務處理
4.4 USB同步傳輸
4.4.1 USB同步傳輸方式
4.4.2 同步傳輸的數據包長度
4.4.3 同步事務處理
4.5 USB控制傳輸
4.5.1 USB控制傳輸方式
4.5.2 控制傳輸數據包長度
4.5.3 控制事務處理
4.6 USB 3.0與USB 2.0數據傳輸的對比
4.6.1 接口不同
4.6.2 數據傳輸方式不同
4.6.3 編碼方式不同
4.6.4 數據傳輸對比
4.7 小結
第5章 USB設備配置
5.1 USB描述符概述
5.2 設備描述符(Device)
5.2.1 設備描述符定義
5.2.2 設備描述符示例
5.3 配置描述符(Configuration)
5.3.1 配置描述符定義
5.3.2 配置描述符示例
5.4 字符串描述符(String)
5.4.1 字符串描述符定義
5.4.2 字符串描述符示例
5.5 接口描述符(Interface)
5.5.1 接口描述符定義
5.5.2 接口描述符示例
5.6 端點描述符(Endpoint)
5.6.1 端點描述符定義
5.6.2 端點描述符示例
5.7 設備限定描述符(Device Qualifier)
5.7.1 設備限定描述符的定義
5.7.2 設備限定描述符示例
5.8 其他速率配置描述符(Other SpeedConfiguration)
5.8.1 其他速率配置描述符的定義
5.8.2 其他速率配置描述符示例
5.9 USB設備請求概述
5.9.1 標準USB設備請求概述
5.9.2 USB設備請求處理過程
5.10 讀取狀態請求(GetStatus)
5.10.1 讀取設備
5.10.2 讀取接口
5.10.3 讀取端點
5.11 清除特性請求(ClearFeature)
5.11.1 清除設備特性
5.11.2 清除接口特性
5.11.3 清除端點特性
5.12 設置特性請求(SetFeature)
5.12.1 設置設備特性
5.12.2 設置接口特性
5.12.3 設置端點特性
5.12.4 設置測試特性
5.13 設置地址請求(SetAddress)
5.14 讀取描述符請求(GetDescription)
5.15 設置描述符請求(SetDescriptor)
5.16 讀取配置請求(GetConfiguration)
5.17 設置配置請求(SetConfiguration)
5.18 讀取接口請求(GetInterface)
5.19 設置接口請求(SetInterface)
5.20 同步幀請求(SynchFrame)
5.21 設備請求示例
5.21.1 聲明設備請求
5.21.2 設備請求的響應
5.22 小結
第6章 USB集線器配置
6.1 USB集線器簡介
6.1.1 集線器設備類
6.1.2 集線器的配置
6.2 USB集線器描述符
6.2.1 集線器設備描述符
6.2.2 集線器配置描述符
6.2.3 集線器接口描述符
6.2.4 集線器端點描述符
6.2.5 集線器類描述符
6.3 USB集線器類請求
6.3.1 讀取集線器狀態請求GetHubStatus
6.3.2 讀取下行端口狀態請求GetPortStatus
6.3.3 禁止集線器的特性請求ClearHubFeature
6.3.4 禁止下行端口特性請求ClearPortFeature
6.3.5 使能集線器特性請求SetHubFeature
6.3.6 使能下行端口特性請求SetPortFeature
6.3.7 讀取集線器描述符請求GetHubDescriptor
6.3.8 設置集線器描述符請求SetHubDescriptor
6.3.9 清除TT塊請求ClearTTBuffer
6.3.10 復位TT塊請求ResetTT
6.3.11 讀取TT內部狀態請求GetTTState
6.3.12 停止TT正常工作請求
StopTT
6.4 小結
第7章 USB HID設備配置
7.1 USB HID設備簡介
7.2 USB HID設備描述符
7.2.1 USB HID設備的定義
7.2.2 USB HID基本描述符
7.2.3 USB HID類描述符
7.3 USB HID設備類請求
7.3.1 獲取報告請求GetReport
7.3.2 獲取空閑速率請求GetIdle
7.3.3 獲取HID協議請求GetProtocol
7.3.4 設置報告請求SetReport
7.3.5 設置空閑速率請求SetIdle
7.3.6 設置HID協議請求SetProtocol
7.4 小結
第8章 常用的USB芯片
8.1 USB芯片分類概述
8.1.1 通用USB芯片
8.1.2 專用USB芯片
8.2 通用USB 接口芯片
8.2.1 高速USB接口芯片EZ-USBFX2LP
8.2.2 可編程片上系統PSoC USB芯片
8.2.3 通用USB接口芯片CH375A
8.2.4 超速USB 3.0接口芯片CYUSB3014
8.3 專用USB接口芯片
8.3.1 USB HID類接口芯片CY7C63723
8.3.2 NEC USB3.0芯片µPD720200
8.3.3 USB轉串口芯片CH341
8.4 USB接口的PCB設計技巧
8.4.1 差分阻抗匹配
8.4.2 供電和接地
8.4.3 USB接頭屏蔽
8.4.4 晶體振蕩器
8.5 小結
第2部分 USB驅動程序設計
第9章 USB驅動程序
9.1 WDM驅動程序概述
9.1.1 WDM驅動程序簡介
9.1.2 WDM驅動程序的特點
9.1.3 WDM驅動程序的分層結構
9.2 WDM功能驅動程序的組成
9.2.1 入口例程
9.2.2 即插即用例程
9.2.3 分發例程
9.2.4 電源管理例程
9.2.5 卸載例程
9.3 USB設備的即插即用實現
9.3.1 即插即用設備狀態
9.3.2 啟動USB設備
9.3.3 停止USB設備
9.3.4 刪除USB設備
9.4 即插即用IRP請求的處理規則
9.5 驅動開發工具——DriverStudio
9.5.1 DriverStudio軟件工具集
9.5.2 搭建DriverStudio驅動開發環境
9.5.3 配置DriverStudio編譯環境
9.6 WDM驅動程序基本結構
9.6.1 基類KDriver
9.6.2 即插即用類KPnPDevice
9.6.3 物理對象類KPnpLowerDevice
9.7 使用DriverStudio創建USB驅動
9.7.1 創建USB驅動程序框架
9.7.2 USB驅動程序設計
9.8 小結
第10章 通用USB驅動程序解析
10.1 驅動程序文件簡介
10.1.1 USB設備驅動程序的安裝
10.1.2 USB設備的識別
10.2 驅動程序INF文件的結構
10.2.1 版本節
10.2.2 源文件盤符節
10.2.3 源文件節
10.2.4 目標磁盤節
10.2.5 供應商節
10.2.6 默認安裝節
10.2.7 字符串節
10.3 Cypress通用USB驅動——基于VC6.0平臺
10.3.1 CyLoad.inf文件分析
10.3.2 CyUSB.inf文件分析
10.3.3 驅動程序的安裝
10.4 Cypress通用USB驅動——基于.NET平臺
10.4.1 CyUSB.inf文件
10.4.2 CyUSB.inf文件分析
10.5 微軟通用USB驅動——WinUSB
10.5.1 WinUSB簡介
10.5.2 WinUSB驅動程序安裝包
10.5.3 WinUSB INF文件
10.6 小結
第11章 LabVIEW平臺的USB驅動程序開發
11.1 NI LabVIEW平臺簡介
11.1.1 LabVIEW平臺簡介
11.1.2 NI-VISA開發平臺
11.2 LabVIEW平臺下的USB驅動開發
11.2.1 NI-VISA的USB驅動簡介
11.2.2 創建USB驅動
11.2.3 INF安裝文件
11.3 小結
第3部分 USB編程基礎
第12章 基于DriverStudio的USB設備編程基礎
12.1 USB編程類函數概述
12.2 設備編程類KUsbLowerDevice
12.2.1 激活設備配置函數ActivateConfiguration
12.2.2 終止設備配置函數DeActivateConfiguration
12.2.3 初始化廠商自定義請求函數BuildVendorRequest
12.2.4 分配USB類請求函數BuildClassRequest
12.2.5 清除USB特征標志函數ClearFeature
12.2.6 設置USB特征標志函數SetFeature
12.2.7 獲取狀態信息函數GetStatus
12.2.8 獲取USB幀號函數GetCurrentFrameNumber
12.2.9 設置未配置狀態函數Unconfigure
12.2.10 設置配置狀態函數Configure
12.2.11 配置USB接口函數PreconfigureInterface
12.2.12 獲取USB接口描述符函數LocateInterface
12.2.13 獲取USB配置描述符函數Preconfigure
12.2.14 刪除資源函數ReleaseResources
12.2.15 獲取字符串描述符函數GetStringDescriptor
12.2.16 獲取設備描述符函數GetDeviceDescriptor
12.2.17 初始化實例函數Initialize
12.2.18 URB發送函數SubmitUrb
12.3 接口編程類KUsbInterface
12.3.1 使能USB接口函數SelectAlternate
12.3.2 清除USB特征標志函數ClearFeature
12.3.3 設置USB特征標志函數SetFeature
12.3.4 獲取狀態信息函數GetStatus
12.3.5 廠商自定義請求函數BuildVendorRequest
12.3.6 分配USB類請求函數BuildClassRequest
12.3.7 設置管道函數Pipes
12.3.8 獲取管道數量函數NumberOfPipes
12.3.9 獲取接口協議函數Protocol
12.3.10 獲取接口子類函數Subclass
12.3.11 獲取接口類函數Class
12.3.12 獲取接口號函數AlternateSetting
12.3.13 獲取接口數量函數InterfaceNumber
12.3.14 初始化實例函數Initialize
12.3.15 關閉接口函數Close
12.3.16 判斷是否打開函數IsOpen
12.3.17 打開實例函數Open
12.3.18 URB發送函數SubmitUrb
12.3.19 判斷實例是否有效函數IsValid
12.4 管道編程類KUsbPipe
12.4.1 初始化實例函數Initialize
12.4.2 打開接口函數Open
12.4.3 判斷是否打開函數IsOpen
12.4.4 關閉管道函數Close
12.4.5 中斷數據傳輸函數BuildInterruptTransfer
12.4.6 控制數據傳輸函數BuildControlTransfer
12.4.7 塊數據傳輸函數BuildBulkTransfer
12.4.8 同步數據傳輸函數BuildIsochronousTransfer
12.4.9 清除USB特征標志函數ClearFeature
12.4.10 設置USB特征標志函數SetFeature
12.4.11 獲取狀態信息函數GetStatus
12.4.12 管道復位函數Reset
12.4.13 丟棄傳輸函數Abort
12.4.14 初始化廠商自定義請求函數BuildVendorRequest
12.4.15 初始化類請求函數BuildClassRequest
12.4.16 獲取最大幀字節數函數MaximumPacketSize
12.4.17 獲取最大傳輸字節數函數MaximumTransferSize
12.4.18 獲取管道句柄函數Handle
12.4.19 獲取中斷檢查間隔函數PollInterval
12.4.20 獲取管道端點地址函數EndpointAddress
12.4.21 設置最大傳輸字節數函數SetMaximumTransferSize
12.4.22 URB發送函數SubmitUrb
12.4.23 獲取傳輸類型函數Type
12.5 小結
第13章 基于Visual C++的USB設備編程基礎
13.1 基于Visual C++的USB設備編程環境
13.1.1 cyioctl類控制函數
13.1.2 CyAPI控制函數類
13.2 cyioctl控制函數類
13.2.1 中止端點請求接口IOCTL_ADAPT_ABORT_PIPE
13.2.2 斷開設備接口IOCTL_ADAPT_CYCLE_PORT
13.2.3 獲取設備地址接口IOCTL_ADAPT_GET_ADDRESS
13.2.4 獲取替換接口IOCTL_ ADAPT_GET_ALT_INTERFACE_SETTING
13.2.5 獲取描述字符串接口IOCTL_ADAPT_GET_DEVICE_NAME
13.2.6 獲取電源狀態接口IOCTL_ADAPT_GET_DEVICE_POWER_STATE
13.2.7 獲取版本號接口IOCTL_ADAPT_GET_DRIVER_VERSION
13.2.8 獲取替換名稱接口IOCTL_ADAPT_GET_FRIENDLY_NAME
13.2.9 獲取端點數量接口IOCTL_ADAPT_GET_NUMBER_ENDPOINTS
13.2.10 獲取單次傳輸大小接口IOCTL_ADAPT_GET_TRANSFER_SIZE
13.2.11 獲取USBDI版本號接口IOCTL_ADAPT_GET_USBDI_VERSION
13.2.12 復位USB設備接口IOCTL_ADAPT_RESET_PARENT_PORT
13.2.13 復位USB端點接口IOCTL_ADAPT_RESET_PIPE
13.2.14 設置替換接口IOCTL_ADAPT_SELECT_INTERFACE
13.2.15 發送控制請求接口IOCTL_ADAPT_SEND_EP0_CONTROL_TRANSFER
13.2.16 數據通信接口IOCTL_ ADAPT_SEND_NON_EP0_TRANSFER
13.2.17 設置電源狀態接口IOCTL_ADAPT_SET_DEVICE_POWER_STATE
13.2.18 設置傳輸字節數接口IOCTL_ADAPT_SET_TRANSFER_SIZE
13.3 CyAPI控制函數類
13.3.1 USB設備控制類CCyUSBDevice
13.3.2 USB配置信息類CCyUSBConfig
13.3.3 USB端點控制類CCyUSBEndPoint
13.3.4 USB接口控制類CCyUSBInterface
13.3.5 USB塊傳輸端點控制類CCyBulkEndPoint
13.3.6 USB控制傳輸端點類CCyControlEndPoint
13.3.7 USB中斷傳輸端點控制類CCyInterruptEndPoint
13.3.8 USB同步傳輸端點控制類CCyIsocEndPoint
13.4 USB數據傳輸實例
13.5 小結
第14章 基于Visual C#的USB設備編程基礎
14.1 基于Visual C#的USB設備編程環境
14.2 USBDeviceList類
14.2.1 USBDeviceList函數
14.2.2 Count成員變量
14.2.3 Dispose函數
14.2.4 USBDeviceList (int index)成員變量
14.2.5 USBDeviceList (string FriendlyName)成員變量
14.2.6 USBDeviceList (int VendorID, int ProductID)成員變量
14.2.7 USBDeviceList (int VendorID, int ProductID, int UsagePage, int Usage)成員變量
14.3 CyUSBDevice類
14.3.1 BcdUSB成員變量
14.3.2 DevClass成員變量
14.3.3 DevProtocol成員變量
14.3.4 DevSubClass成員變量
14.3.5 DriverName成員變量
14.3.6 FriendlyName成員變量
14.3.7 Manufacturer成員變量
14.3.8 Name成員變量
14.3.9 Path成員變量
14.3.10 ProductID成員變量
14.3.11 VendorID成員變量
14.3.12 SerialNumber成員變量
14.3.13 USBAddress成員變量
14.4 CyControlEndPoint類
14.4.1 Direction成員變量
14.4.2 Index成員變量
14.4.3 ReqCode成員變量
14.4.4 ReqType成員變量
14.4.5 Target成員變量
14.4.6 Value成員變量
14.4.7 XferData函數
14.4.8 Read函數
14.4.9 Write函數
14.5 CyIsocEndPoint類
14.5.1 GetPktBlockSize函數
14.5.2 BeginDataXfer函數
14.5.3 FinishDataXfer函數
14.5.4 GetPktCount函數
14.5.5 XferData函數
14.6 CyHidDevice類
14.6.1 GetFeature函數
14.6.2 GetInput函數
14.6.3 ReadInput函數
14.6.4 SetFeature函數
14.6.5 SetOutput函數
14.6.6 WriteOutput函數
14.6.7 ToString函數
14.7 CyUSBStorDevice類
14.7.1 SendScsiCmd函數
14.7.2 ToString函數
14.7.3 TimeOut成員變量
14.8 CyBulkEndPoint類
14.9 小結
第15章 基于LabVIEW的USB設備編程基礎
15.1 NI-VISA USB設備交互控制
15.2 VISA控制函數
15.2.1 VISA打開
15.2.2 VISA關閉
15.2.3 VISA USB控制輸出
15.2.4 VISA USB控制輸入
15.2.5 VISA寫入
15.2.6 VISA讀取
15.3 小結
第4部分 USB開發實踐
第16章 EZ-USB FX2LP固件設計
16.1 Cypress固件開發工具
16.1.1 安裝開發包
16.1.2 開發包工具簡介
16.2 基本固件框架
16.2.1 基本固件框架的建立
16.2.2 固件調試
16.3 固件程序設計
16.3.1 USB端口讀寫的程序設計
16.3.2 USB端口讀寫的固件仿真調試
16.3.3 USB端點的數據發送和采集
16.3.4 數據發送和采集仿真調試
16.4 小結
第17章 USB控制數碼管顯示實例
17.1 EZ-USB FX2LP的I/O端口
17.1.1 普通I/O功能
17.1.2 第二復用功能
17.2 控制端點0請求
17.2.1 USB控制傳輸
17.2.2 USB設備請求及固件響應
17.2.3 獲得狀態請求(Get Status)
17.2.4 設置特性請求(Set Feature)
17.2.5 清除特性請求(Clear Feature)
17.2.6 獲得描述符請求(Get Descriptor)
17.2.7 設置描述符請求(Set Descriptor)
17.2.8 設置配置請求(Set Configuration)
17.2.9 獲得配置請求(Get Configuration)
17.2.10 設置接口請求(Set Interface)
17.2.11 獲得接口請求(Get Interface)
17.2.12 同步幀請求(Sync Frame)
17.2.13 固件加載請求(Firmware Load)
17.2.14 自定義請求
17.3 USB控制數碼管實例
17.3.1 數碼管顯示原理
17.3.2 電路原理圖
17.4 USB固件程序設計
17.4.1 主程序文件
17.4.2 功能實現代碼
17.4.3 自定義請求的定義
17.4.4 USB描述
17.4.5 下載固件程序
17.5 USB主機程序設計
17.5.1 建立項目
17.5.2 程序設計
17.5.3 編譯程序并運行
17.6 小結
第18章 使用EEPROM列舉USB設備
18.1 USB啟動配置模式
18.1.1 EZ-USB FX2LP的啟動模式簡介
18.1.2 默認USB設備狀態
18.2 EEPROM引導USB啟動
18.2.1 無EEPROM引導啟動
18.2.2 EEPROM引導啟動
18.2.3 啟動配置寄存器
18.2.4 固件下載和重列舉
18.2.5 不同芯片的接線
18.3 電路原理圖
18.4 固件程序設計
18.4.1 主程序文件
18.4.2 請求響應函數
18.4.3 初始化子程序
18.4.4 功能子程序
18.4.5 自定義請求的定義
18.5 USB描述符
18.5.1 設備描述符
18.5.2 高速配置描述符
18.5.3 全速配置描述符
18.5.4 字符串描述符
18.6 下載固件程序
18.7 驅動程序設計
18.8 主機程序設計
18.8.1 建立工程
18.8.2 用戶界面設計
18.8.3 程序代碼設計
18.8.4 編譯執行
18.9 小結
第19章 基于Slave FIFO模式的USB數據采集
19.1 Slave FIFO模式簡介
19.1.1 Slave FIFO模式接口配置
19.1.2 典型的數據傳輸
19.2 Slave FIFO模式程序設計
19.2.1 Slave FIFO程序設計的基本概念
19.2.2 Slave FIFO模式寄存器介紹
19.2.3 Slave FIFO工作模式一:AUTO IN模式
19.2.4 Slave FIFO工作模式二:AUTO OUT模式
19.2.5 Slave FIFO工作模式三:CPU訪問OUT數據包
18.2.6 Slave FIFO工作模式四:CPU訪問IN數據包
19.3 Slave FIFO模式數據采集實例
19.3.1 電路設計
19.3.2 USB固件程序設計
19.3.3 上位機程序設計
19.3.4 程序運行
19.4 小結
第20章 PSoC USB設計實例
20.1 電路原理圖設計
20.2 固件設計
20.2.1 創建項目
20.2.2 配置USB
20.2.3 配置引腳
20.2.4 配置時鐘
20.2.5 固件程序設計
20.2.6 下載程序
20.3 驅動程序設計
20.3.1 制作驅動程序
20.3.2 安裝驅動程序
20.4 上位機程序設計
20.4.1 調試固件
20.4.2 創建項目
20.4.3 軟件設計
20.4.4 運行程序
20.5 小結
第21章 USB控制DA輸出實例
21.1 D/A轉換器概述
21.1.1 D/A轉換原理
21.1.2 D/A轉換器的類型
21.1.3 D/A轉換器的性能參數
21.2 電路原理圖設計
21.3 固件設計
21.3.1 創建項目
21.3.2 配置USB
21.3.3 配置時鐘
21.3.4 配置DA
21.3.5 配置引腳
21.3.6 固件程序設計
21.4 驅動程序設計
21.5 上位機程序設計
21.5.1 創建項目
21.5.2 軟件設計
21.5.3 運行程序
21.6 小結
第22章 USB控制A/D轉換實例
22.1 A/D轉換器概述
22.1.1 A/D轉換原理
22.1.2 A/D轉換器的技術參數
22.1.3 A/D轉換器的選擇原則
22.2 8通道AD轉換器MAX1300
22.2.1 引腳接口
22.2.2 工作方式
22.2.3 控制指令
22.3 電路原理圖設計
22.4 固件設計
22.4.1 創建項目
22.4.2 配置USB
22.4.3 配置時鐘
22.4.4 配置SPI組件
22.4.5 配置引腳
22.4.6 固件程序設計
22.5 驅動程序設計
22.6 上位機程序設計
22.6.1 創建項目
22.6.2 軟件設計
22.6.3 運行程序
22.7 小結
第23章 USB集線器開發實例
23.1 USB Hub芯片CY7C65642
23.1.1 CY7C65642接口
23.1.2 CY7C65642供電模式
23.1.3 EEPROM配置項
23.1.4 時鐘配置
23.1.5 復位電路
23.1.6 過流監測
23.1.7 端口指示
23.2 四端口USB集線器設計
23.2.1 電路圖
23.2.2 安裝
23.3 小結
第24章 U盤設計實例
24.1 U盤存儲芯片
24.1.1 Nor-Flash存儲芯片和Nand-Flash存儲芯片
24.1.2 Nand-Flash存儲器K9K4G08U0M
24.1.3 Nand-Flash存儲器的組織結構
24.1.4 Nand-Flash存儲器的指令集
24.1.5 Nand-Flash存儲器的操作
24.2 基于Nand-Flash的文件系統
24.2.1 磁盤分區格式簡介
24.2.2 基于Nand-Flash的文件系統
24.2.3 Nand-Flash存儲器上的FAT結構
24.3 Nand-Flash控制器
24.3.1 CY7C68024簡介
24.3.2 兼容Nand-Flash存儲器
24.4 U盤設計實例
24.4.1 電路原理圖
24.4.2 重新配置U盤
24.5 小結
第25章 USB接口控制示波器實例
25.1 示波器簡介
25.1.1 示波器分類
25.1.2 示波器的主要技術指標
25.1.3 主要示波器生產商
25.1.4 示波器的使用注意事項
25.2 示波器編程接口
25.2.1 USBTMC簡介
25.2.2 DPO2024示波器
25.2.3 安裝符合USBTMC的驅動程序
25.3 USB讀寫示波器實例
25.3.1 創建項目
25.3.2 程序設計
25.3.3 程序演示
25.4 使用NI-VISA控制示波器實例
25.4.1 創建項目
25.4.2 程序設計
25.4.3 運行程序
25.5 小結
第26章 Android平臺USB接口開發
26.1 Android平臺簡介
26.1.1 Android開放手機聯盟
26.1.2 Android的特性
26.1.3 Android對比其他主流操作系統
26.1.4 Android系統構架
26.1.5 Android開發工具
26.1.6 Android程序結構分析
26.2 Android的USB接口
26.2.1 Android USB接口模式
26.2.2 USB附件模式
26.2.3 USB主機模式
26.2.4 調試注意事項
26.3 USB硬件設計
26.3.1 電路原理圖
26.3.2 固件程序設計
26.3.3 固件程序代碼
26.4 Android程序設計
26.4.1 創建項目
26.4.2 界面布局
26.4.3 程序實現
26.4.4 運行結果
26.5 小結

您曾經瀏覽過的商品

購物須知

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

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

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

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

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

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