图书介绍

USB应用开发宝典PDF|Epub|txt|kindle电子书版本网盘下载

USB应用开发宝典
  • 薛园园,赵建领编著 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:9787115246745
  • 出版时间:2011
  • 标注页数:738页
  • 文件大小:292MB
  • 文件页数:758页
  • 主题词:电子计算机-接口

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

USB应用开发宝典PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1篇USB开发基础篇3

第1章USB概述3

1.1 USB的产生3

1.2 USB总线特点4

1.3 USB的总线结构6

1.3.1 USB主机和设备6

1.3.2 USB的连接7

1.3.3 USB系统的分层结构8

1.4 USB的开发流程9

1.5小结10

第2章USB电源管理11

2.1 USB的供电11

2.1.1 USB接口的电源指标11

2.1.2电源分配12

2.2 USB电源管理13

2.2.1供电保持13

2.2.2 USB设备的挂起13

2.2.3 USB集线器的挂起14

2.3小结14

第3章USB的设备配置15

3.1 USB标准设备的描述符15

3.1.1设备描述符16

3.1.2配置描述符18

3.1.3字符串描述符20

3.1.4接口描述符21

3.1.5端点描述符22

3.1.6设备限定描述符24

3.1.7其他速率配置描述符26

3.2 USB集线器的描述符28

3.2.1集线器设备描述符28

3.2.2集线器配置描述符30

3.2.3集线器接口描述符32

3.2.4集线器端点描述符33

3.2.5集线器类描述符34

3.3 HID设备的描述符36

3.3.1 HID设备简介36

3.3.2 HID基本描述符38

3.3.3 HID类描述符40

3.4小结42

第4章USB的数据传输44

4.1 USB数据传输简介44

4.1.1 USB数据传输流程44

4.1.2 USB事务处理45

4.1.3 USB数据传输类型46

4.2 USB控制传输46

4.2.1数据包长度47

4.2.2事务处理47

4.3 USB块传输49

4.3.1数据包长度49

4.3.2事务处理49

4.4 USB中断传输50

4.4.1数据包长度50

4.4.2事务处理51

4.5 USB同步传输51

4.5.1数据包长度51

4.5.2事务处理52

4.6小结52

第5章USB设备请求53

5.1标准USB设备请求53

5.1.1读取状态请求GetStatus54

5.1.2清除特性请求ClearFeature56

5.1.3设置特性请求SetFeature56

5.1.4设置地址请求SetAddress57

5.1.5读取描述符请求GetDescription57

5.1.6设置描述符请求SetDescriptor57

5.1.7读取配置请求GetConfiiguration58

5.1.8设置配置请求SetConfiiguration58

5.1.9读取接口请求GetInterface59

5.1.10设置接口请求SetInterface59

5.1.11同步帧请求SynchFrame59

5.2 USB集线器类请求60

5.2.1读取集线器状态请求GetHubStatus60

5.2.2读取下行端口状态请求GetPortStatus61

5.2.3禁止集线器的特性请求ClearHubFeature61

5.2.4禁止下行端口特性请求ClearPortFeature62

5.2.5使能集线器特性请求SetHubFeature63

5.2.6使能下行端口特性请求SetPortFeature63

5.2.7读取集线器描述符请求GetHubDescriptor64

5.2.8设置集线器描述符请求SetHubDescriptor64

5.2.9清除TT块请求ClearTTBuffer65

5.2.10复位TT块请求ResetTT65

5.2.11读取TT内部状态请求GetTTState66

5.2.12停止TT正常工作请求StopTT66

5.3 HID设备类请求67

5.3.1获取报告请求GetReport67

5.3.2获取空闲速率请求GetIdle68

5.3.3获取HID协议请求GetProtocol69

5.3.4设置报告请求SetReport69

5.3.5设置空闲速率请求SetIdle70

5.3.6设置HID协议请求SetProtocol71

5.4 USB设备请求示例71

5.4.1声明设备请求71

5.4.2设备请求的响应72

5.5小结77

第6章 元器件的识别和加工78

6.1元器件的封装78

6.1.1元器件封装的发展78

6.1.2元器件封装小结79

6.2元器件的焊接88

6.2.1双列直插器件的焊接88

6.2.2表面贴元器件的焊接88

6.3常用的USB接口芯片89

6.3.1 Cypress公司的USB接口芯片90

6.3.2 Philips公司的USB接口芯片95

6.3.3南京沁恒公司的USB接口芯片97

6.4小结100

第7章 电路制板布局101

7.1印制电路板基础101

7.1.1印制电路板的分类101

7.1.2印制电路板的基本概念102

7.2印制电路板设计规则104

7.2.1电路板的选择105

7.2.2电路板布局105

7.2.3电路板布线106

7.2.4其他设计规则107

7.3高速USB接口的PCB设计109

7.3.1差分阻抗109

7.3.2 USB信号110

7.3.3电源和地112

7.3.4晶体振荡器113

7.4小结113

第2篇USB编程篇117

第8章 构建USB接口开发环境117

8.1 USB固件开发环境117

8.1.1 Keil μVision3简介117

8.1.2 Keil μVision3集成开发环境118

8.1.3 Cypress开发包119

8.2上位机开发环境120

8.2.1 Visual Studio开发平台120

8.2.2 LabVIEW开发平台121

8.3 USB驱动开发环境121

8.3.1 DriverStudio软件简介121

8.3.2配置DriverSutdi o编译环境123

8.3.3 NI-VISA开发平台124

8.3.4 USB通用驱动程序125

8.4 USB最小开发系统125

8.5 USB软硬件开发环境127

8.6小结127

第9章USB固件编程128

9.1 USB设备配置描述符128

9.1.1变量声明128

9.1.2设备描述129

9.1.3设备配置130

9.1.4字符串描述133

9.2 USB设备请求134

9.2.1自定义设备请求声明134

9.2.2自定义设备请求的响应135

9.3 USB重列举139

9.4小结142

第10章USB驱动开发143

10.1 Windows下的USB驱动开发143

10.1.1 USB驱动程序建立144

10.1.2 USB驱动程序设计146

10.2 LabVIEW环境下的USB驱动开发147

10.2.1 NI-VISA的USB驱动简介147

10.2.2创建USB驱动148

10.3通用USB驱动概述149

10.4 INF文件简介149

10.4.1 INF文件处理过程150

10.4.2 INF文件的结构150

10.4.3版本节[Version]151

10.4.4源文件盘符节[SourceDisksNames]153

10.4.5源文件节[SourceDisksFiles]153

10.4.6目标磁盘节[DestinationDirs]153

10.4.7供应商节[Manufacturer]154

10.4.8默认安装节[DefaultInstall]154

10.4.9字符串节[String]155

10.5 Visual Studio 6.0环境下的通用USB驱动155

10.5.1 CyLoad.inf文件155

10.5.2 CyUSB.inf文件158

10.6 Visual Studio 2005环境下的通用USB驱动161

10.7驱动程序的安装163

10.8小结165

第11章 上位机程序开发166

11.1 Visual C++读写USB设备166

11.1.1 CYIOCTL控制函数类166

11.1.2 CyAPI控制函数类173

11.2 Visual C#读写USB设备194

11.2.1 CyHidDevice类194

11.2.2 CyIsocEndPoint类200

11.2.3 CyUSBStorDevice类204

11.3 LabVIEW读写USB设备206

11.3.1 USB设备测试207

11.3.2 VISA控制函数209

11.4小结211

第3篇USB应用实例篇215

第12章 使用EEPROM进行USB列举215

12.1 EZ-USB FX2LP的启动模式概述215

12.1.1 EZ-USB FX2LP的启动模式216

12.1.2无EEPROM启动216

12.1.3首字节为0xC0的EEPROM启动217

12.1.4首字节为0xC2的EEPROM启动217

12.1.5启动配置218

12.2 EEPROM引导USB启动电路221

12.3 USB固件程序设计222

12.3.1建立USB项目223

12.3.2主程序文件224

12.3.3请求响应函数226

12.3.4数据读写子程序232

12.3.5 USB描述符233

12.4驱动程序设计237

12.4.1 USB固件下载驱动程序237

12.4.2 USB通信驱动程序239

12.5主机程序设计241

12.5.1建立工程241

12.5.2用户界面设计243

12.5.3程序代码设计243

12.6小结246

第13章USB控制LED显示实例247

13.1 LED数码管简介247

13.1.1共阳极7段LED数码管247

13.1.2共阴极7段LED数码管249

13.2 USB控制LED显示实例250

13.3 USB固件程序设计251

13.3.1建立USB项目251

13.3.2主函数程序设计253

13.3.3设备请求响应函数255

13.3.4 LED控制子函数261

13.3.5 USB固件描述符261

13.4 USB主机程序设计266

13.4.1建立项目267

13.4.2程序设计268

13.5小结273

第14章USB控制LCD液晶显示模块274

14.1液晶显示模块概述274

14.1.1液晶显示模块的分类275

14.1.2液晶显示模块的特点276

14.2液晶显示控制驱动器276

14.2.1液晶显示控制驱动器概述276

14.2.2液晶显示控制驱动器功能277

14.3液晶显示控制器指令集280

14.3.1基本指令集280

14.3.2扩充指令集283

14.3.3控制器指令操作方式285

14.4液晶显示电路原理图287

14.5固件程序设计289

14.5.1建立USB项目289

14.5.2主程序文件290

14.5.3请求响应函数293

14.5.4初始化子程序298

14.5.5液晶汉字显示子程序298

14.5.6点阵图形型液晶控制子函数299

14.5.7 USB描述符303

14.6主机程序设计308

14.6.1建立工程308

14.6.2用户界面设计310

14.6.3程序代码设计311

14.7小结313

第15章USB键盘程序设计314

15.1 HID设备概述314

15.2 USB键盘设计实例315

15.2.1电路原理图315

15.2.2建立USB项目316

15.2.3主程序文件317

15.2.4标准设备请求响应函数320

15.2.5 USB键盘功能实现325

15.2.6 USB键盘描述符328

15.3小结333

第16章USB鼠标程序设计334

16.1 USB鼠标硬件概述334

16.2电路原理图335

16.3固件程序设计336

16.3.1接口定义337

16.3.2主函数338

16.3.3初始化函数338

16.4功能实现代码339

16.4.1主循环函数usbmain339

16.4.2鼠标事务函数MouseTask340

16.4.3挂起函数Suspend340

16.4.4数据包处理函数HandleSetup342

16.4.5输入数据包处理函数HandleIn343

16.4.6读数据函数USB_control_read343

16.4.7装载FIFO函数LoadEPOFifo344

16.4.8停止端点函数USB_Stall_In_Out344

16.4.9总线空闲函数BusInactive344

16.4.10光学测量函数ProcessOptics345

16.4.11读按键函数GetButtons346

16.4.12鼠标移动函数MouseMoved346

16.5 HID设备请求处理347

16.5.1设置配置请求SetConfiguration347

16.5.2设置地址请求SetAddress347

16.5.3清标志请求ClearFeature348

16.5.4设置标志请求SetFeature349

16.5.5读取描述符请求GetDescriptor349

16.5.6读取状态请求GetStatus351

16.5.7设置空闲请求SetIdle352

16.5.8设置协议请求SetProtocol353

16.5.9读取报告请求GetReport353

16.5.10读取空闲请求GetIdle354

16.5.11读取协议请求GetProtocol354

16.5.12读取配置请求GetConfiiguration354

16.6 USB鼠标描述符355

16.6.1设备描述符355

16.6.2配置描述符355

16.6.3接口描述符356

16.6.4端点描述符356

16.6.5 HID类描述符357

16.6.6报告描述符357

16.6.7字符串描述符358

16.7小结359

第17章USB控制D/A转换输出实例360

17.1 D/A转换概述360

17.1.1 D/A转换原理360

17.1.2 D/A转换器的类型361

17.1.3 D/A转换器的性能参数363

17.2高速D/A转换芯片AD558364

17.2.1 AD558简介364

17.2.2 AD558输出模式365

17.2.3 AD558的数据锁存366

17.3电路原理图367

17.4固件程序设计369

17.4.1建立USB项目369

17.4.2主程序文件370

17.4.3请求响应函数373

17.4.4 D/A转换子函数378

17.4.5 USB设备配置描述符378

17.5主机程序设计384

17.5.1建立工程384

17.5.2用户界面设计386

17.5.3程序代码设计386

17.6小结391

第18章USB控制A/D转换数据采集实例392

18.1 A/D转换器概述392

18.1.1 A/D转换原理393

18.1.2 A/D转换器的技术参数395

18.1.3 A/D转换器的选择原则396

18.2 8通道电压型A/D转换器MAX197397

18.2.1 MAX197的引脚接口397

18.2.2 MAX197的控制字节398

18.2.3 MAX 197的控制时序400

18.3 USB模拟电压采集实例401

18.3.1系统电路原理图401

18.3.2稳压电路403

18.4 USB固件程序设计403

18.4.1建立USB项目404

18.4.2主函数程序设计404

18.4.3设备请求处理407

18.4.4 A/D转换控制子函数413

18.4.5 USB描述符413

18.5上位机程序设计418

18.5.1建立项目418

18.5.2程序设计420

18.6小结424

第19章USB的RAM测试实例425

19.1 EZ-USB FX2LP的存储器425

19.1.1内部数据RAM425

19.1.2外部程序和数据存储空间428

19.2 USB的RAM测试电路原理图432

19.3固件程序设计433

19.3.1建立USB项目433

19.3.2主程序文件434

19.3.3测试RAM区域函数test_mem437

19.3.4错误码分析函数status439

19.3.5特定字符串输出函数statString439

19.4小结440

第20章USB读写I2C总线EEPROM441

20.1 I2C总线概述441

20.1.1 I2C总线的工作原理442

20.1.2 I2C总线的负载能力442

20.1.3 I2C总线的寻址方式442

20.1.4 I2C总线数据传输协议443

20.2电路原理图445

20.3固件程序设计447

20.3.1建立USB项目447

20.3.2主程序文件448

20.3.3请求响应处理451

20.3.4 EEPROM读写456

20.3.5 I2C接口子函数457

20.3.6 USB设备配置描述符462

20.4主程序设计467

20.4.1建立工程467

20.4.2用户界面设计468

20.4.3程序代码设计469

20.5小结472

第21章USB读写Microware串行EEPROM473

21.1 Microware串行总线概述473

21.2 Microware串行总线接口的EEPROM存储器474

21.2.1 Microware串行总线接口EEPROM概述474

21.2.2 Microware串行总线接口EEPROM的指令475

21.2.3 Microware串行总线接口EEPROM的指令时序476

21.3电路原理图479

21.4固件程序设计480

21.4.1建立USB项目481

21.4.2主程序文件482

21.4.3请求响应函数485

21.4.4 Microware读写子函数489

21.4.5三线制Microware串行总线读写子函数490

21.4.6 USB设备配置描述符493

21.5主程序设计498

21.5.1建立工程499

21.5.2用户界面设计500

21.5.3程序代码设计501

21.6小结503

第22章USB控制实时时钟芯片DS1302504

22.1实时时钟芯片DS1302概述504

22.1.1实时时钟芯片DS 1302概述504

22.1.2实时时钟芯片DS 1302命令字节505

22.1.3实时时钟芯片DS1302数据格式505

22.1.4实时时钟芯片DS1302数据传输方式507

22.2电路原理图508

22.3固件程序设计510

22.3.1建立USB项目510

22.3.2主程序文件511

22.3.3请求响应处理514

22.3.4实时时钟操作519

22.3.5 DS1302控制子函数521

22.3.6 USB设备配置描述符524

22.4上位机程序设计529

22.4.1建立工程530

22.4.2用户界面设计531

22.4.3程序代码设计532

22.5小结535

第23章USB采集单总线温度传感器DS18S20536

23.1单总线概述536

23.2单总线温度传感器DS18S20537

23.2.1温度传感器DS 18S20概述538

23.2.2 DS18S20的供电方式538

23.2.3 DS18S20的数据操作539

23.2.4 DS18S20的温度转换操作541

23.3电路原理图542

23.4固件程序设计543

23.4.1建立USB项目543

23.4.2主程序文件544

23.4.3请求响应处理547

23.4.4读取温度操作552

23.4.5 DS18S20控制子函数553

23.4.6 USB设备配置描述符555

23.5上位机程序设计560

23.5.1建立工程561

23.5.2用户界面设计562

23.5.3程序代码设计563

23.6小结566

第24章USB打印机控制实例567

24.1 CH375A接口芯片567

24.1.1 CH375A概述568

24.1.2 CH375A内部结构570

24.2 CH375A指令570

24.2.1 CH375A基本指令571

24.2.2 USB存储设备类指令574

24.3 CH375A接口方式580

24.3.1并行接口581

24.3.2串行接口581

24.4 USB打印机控制实例582

24.4.1电路原理图582

24.4.2 USB打印机控制方式586

24.5程序设计586

24.5.1项目建立586

24.5.2头文件587

24.5.3参数及结构定义591

24.5.4主函数593

24.5.5基本操作子函数594

24.5.6数据同步及读写子函数596

24.5.7 CH375A主机操作子函数597

24.6小结602

第25章USB接口充电器实例603

25.1锂电池及其充电概述603

25.1.1锂电池概述603

25.1.2锂电池充电概述604

25.2智能充电管理芯片MAX 1898604

25.2.1智能充电管理芯片选型605

25.2.2智能充电管理芯片MAX 1898概述605

25.2.3 MAX1898充电工作原理606

25.3 USB接口充电器实例607

25.3.1电路原理图608

25.3.2 USB接口充电器功能610

25.4固件程序设计611

25.4.1建立USB项目611

25.4.2主程序文件612

25.4.3请求响应处理615

25.4.4智能充电管理620

25.4.5 USB设备配置描述符621

25.5小结626

第26章USB转RS-232串口实例627

26.1 CH341简介627

26.2 CH341串口工作方式628

26.2.1异步串口方式628

26.2.2同步串口方式631

26.3 CH341打印口工作方式631

26.4 CH341并口工作方式633

26.4.1 EPP并口方式634

26.4.2 MEM并口方式635

26.5 CH341功能配置635

26.5.1直接组合配置635

26.5.2外部芯片配置635

26.6 USB转RS-232串口实例636

26.6.1电路原理图636

26.6.2硬件接口介绍637

26.6.3连接使用638

26.7小结639

第27章U盘设计实例640

27.1 Nand-Flash存储器640

27.1.1 Nor-Flash和Nand-Flash640

27.1.2 Nand-Flash存储器K9F2G08U0M641

27.1.3 Nand-Flash存储器的组织结构642

27.1.4 Nand-Flash存储器的指令集643

27.1.5 Nand-Flash存储器的操作643

27.2基于Nand-Flash的文件系统644

27.2.1分区格式简介644

27.2.2基于Nand-Flash的文件系统645

27.2.3 Nand-Flash存储器上的FAT结构649

27.3 Nand-Flash控制器649

27.3.1 CY7C68023简介649

27.3.2兼容Nand-Flash存储器651

27.4 U盘设计实例652

27.4.1电路原理图652

27.4.2 PCB设计要求653

27.4.3配置格式化654

27.5小结655

第28章LabVIEW下的USB数据采集实例656

28.1 Slave FIFO模式简介656

28.1.1 Slave FIFO模式的引脚及功能657

28.1.2典型的数据传输661

28.2 Slave FIFO的固件设计662

28.2.1 Slave FIFO固件基础662

28.2.2 Auto In/Auto Out模式663

28.2.3 Auto In/Auto Out模式初始化664

28.2.4 CPU访问OUT数据包667

28.2.5 CPU访问IN数据包669

28.3电路原理图671

28.4固件程序设计672

28.4.1建立USB项目672

28.4.2主程序文件673

28.4.3请求响应函数676

28.4.4初始化子函数680

28.4.5自定义请求子函数681

28.4.6块传输处理682

28.4.7 USB设备配置描述符683

28.5 LabVIEW程序设计688

28.5.1 USB驱动程序688

28.5.2前面板程序设计690

28.5.3程序框图设计690

28.6小结691

第4篇USB3.0展望篇695

第29章USB 3.0概述695

29.1 USB 3.0的产生和基本特性695

29.1.1 USB 3.0的产生695

29.1.2 USB 3.0的基本特性696

29.1.3 USB 3.0的标志697

29.2 USB 3.0技术解析698

29.2.1 USB 3.0针脚定义698

29.2.2 USB 3.0接头标准699

29.2.3 USB 3.0线缆结构701

29.3 USB 3.0工作原理703

29.3.1 USB 3.0总线结构预览703

29.3.2 USB 3.0总线编码704

29.3.3 USB 3.0超速数据流模型705

29.3.4 USB 3.0的典型眼图706

29.3.5 USB 3.0超高速数据传输708

29.3.6 USB 3.0的供电管理708

29.4 USB 3.0的技术改进709

29.5 USB 3.0产品及操作系统支持711

29.5.1 USB 3.0的实现711

29.5.2 USB 3.0的应用前景和产品713

29.5.3 USB 3.0的操作系统支持714

29.6 USB 3.0的竞争对手714

29.6.1 Firewire技术714

29.6.2 eSATA技术715

29.6.3 ExpressCard 2.0技术715

29.6.4 USB PLUS技术715

29.7小结716

第30章USB 3.0的开发717

30.1 USB 3.0开发概述717

30.1.1 USB 3.0的开发流程717

30.1.2开发USB 3.0的准备工作718

30.2 USB 3.0对设计的挑战719

30.2.1对开发人员的挑战719

30.2.2对厂商的挑战721

30.3常用的USB 3.0芯片722

30.3.1 NEC USB 3.0芯片μPD720200722

30.3.2富士通MB86C30A桥接芯片725

30.3.3 USB 3.0 Hub控制器VL810728

30.3.4 USB 3.0-SATA控制器VL700729

30.4 USB 3.0的测试测量工具730

30.4.1泰克(Tektronix)的 USB 3.0工具730

30.4.2安捷伦(Agilent)的USB 3.0工具733

30.4.3力科(LeCroy)的USB 3.0工具734

30.5 USB 3.0电路保护方案734

30.5.1过流保护735

30.5.2过压保护736

30.5.3 ESD保护737

30.5.4综合电路保护方案737

30.6小结738

热门推荐