图书介绍

USB应用开发实例详解2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

USB应用开发实例详解
  • 薛园园,赵建领编著 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:9787115196507
  • 出版时间:2009
  • 标注页数:635页
  • 文件大小:164MB
  • 文件页数:653页
  • 主题词:电子计算机-接口

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的供电8

1.4.1 USB接口的电源指标9

1.4.2 电源分配9

1.4.3 USB电源管理10

1.5 USB的开发流程12

1.6 小结13

第2章 USB的设备配置14

2.1 USB标准设备的描述符14

2.1.1 设备描述符15

2.1.2 配置描述符17

2.1.3 字符串描述符19

2.1.4 接口描述符20

2.1.5 端点描述符21

2.1.6 设备限定描述符23

2.1.7 其他速率配置描述符25

2.2 USB集线器的描述符26

2.2.1 集线器设备描述符27

2.2.2 集线器配置描述符29

2.2.3 集线器接口描述符30

2.2.4 集线器端点描述符31

2.2.5 集线器类描述符32

2.3 HID设备描述符34

2.3.1 HID设备简介34

2.3.2 HID基本描述符36

2.3.3 HID类描述符38

2.4 小结40

第3章 USB的数据传输41

3.1 USB数据传输简介41

3.1.1 USB数据传输流程41

3.1.2 USB事务处理42

3.1.3 USB数据传输类型43

3.2 USB控制传输43

3.2.1 数据包长度44

3.2.2 事务处理44

3.3 USB块传输46

3.3.1 数据包长度46

3.3.2 事务处理46

3.4 USB中断传输47

3.4.1 数据包长度47

3.4.2 事务处理47

3.5 USB同步传输48

3.5.1 数据包长度48

3.5.2 事务处理48

3.6 小结49

第4章 USB设备请求50

4.1 标准USB设备请求50

4.1.1 读取状态请求51

4.1.2 清除特性请求52

4.1.3 设置特性请求53

4.1.4 设置地址请求54

4.1.5 读取描述符请求54

4.1.6 设置描述符请求54

4.1.7 读取配置请求55

4.1.8 设置配置请求55

4.1.9 读取接口请求55

4.1.10 设置接口请求55

4.1.11 同步帧请求56

4.2 USB集线器类请求56

4.2.1 读取集线器状态请求57

4.2.2 读取下行端口状态请求57

4.2.3 禁止集线器的特性请求58

4.2.4 禁止下行端口特性请求58

4.2.5 使能集线器特性请求59

4.2.6 使能下行端口特性请求60

4.2.7 读取集线器描述符请求60

4.2.8 设置集线器描述符请求61

4.2.9 清除TT块请求61

4.2.10 复位TT块请求62

4.2.11 读取TT内部状态请求62

4.2.12 停止TT正常工作请求63

4.3 HID设备类请求63

4.3.1 获取报告请求64

4.3.2 获取空闲速率请求64

4.3.3 获取HID协议请求65

4.3.4 设置报告请求65

4.3.5 设置空闲速率请求66

4.3.6 设置HID协议请求67

4.4 USB设备请求示例67

4.4.1 声明设备请求67

4.4.2 设备请求的响应68

4.5 小结72

第5章 器件识别和加工73

5.1 元器件的封装73

5.1.1 元器件封装的发展73

5.1.2 元器件封装小结74

5.2 元器件的焊接83

5.2.1 双列直插器件的焊接83

5.2.2 表面贴元器件的焊接83

5.3 常用的USB接口芯片84

5.3.1 Cypress公司的USB接口芯片84

5.3.2 Philips公司的USB接口芯片89

5.3.3 南京沁恒公司的USB接口芯片91

5.4 小结94

第6章 电路制板布局95

6.1 印制电路板基础95

6.1.1 印制电路板的分类95

6.1.2 印制电路板的基本概念95

6.2 印制电路板设计规则98

6.2.1 电路板的选择99

6.2.2 电路板布局99

6.2.3 电路板布线100

6.2.4 其他设计规则101

6.3 高速USB接口的PCB设计102

6.3.1 差分阻抗103

6.3.2 USB信号104

6.3.3 电源和地105

6.3.4 晶体振荡器106

6.4 小结107

第2篇 USB编程篇111

第7章 构建USB接口开发环境111

7.1 USB固件开发环境111

7.1.1 Keil μVision3简介111

7.1.2 keil μVision3集成开发环境112

7.1.3 Cypress开发包113

7.2 上位机开发环境114

7.2.1 Visual Studio开发平台114

7.2.2 LabVIEW开发平台114

7.3 USB驱动开发环境115

7.3.1 DriverStudio软件简介115

7.3.2 配置DriverSutdio编译环境117

7.3.3 NI-VISA开发平台118

7.3.4 USB通用驱动程序118

7.4 USB最小开发系统119

7.5 USB软硬件开发环境120

7.6 小结121

第8章 USB固件编程122

8.1 USB设备配置描述符122

8.1.1 变量声明122

8.1.2 设备描述123

8.1.3 设备配置123

8.1.4 字符串描述126

8.2 USB设备请求127

8.2.1 自定义设备请求声明127

8.2.2 自定义设备请求的响应128

8.3 USB重列举131

8.4 小结133

第9章 USB驱动开发134

9.1 Windows下的USB驱动开发134

9.1.1 USB驱动程序建立134

9.1.2 USB驱动程序设计137

9.2 LabVIEW环境下的USB驱动开发138

9.2.1 NI-VISA的USB驱动简介138

9.2.2 创建USB驱动139

9.3 通用USB驱动概述140

9.4 INF文件简介140

9.4.1 INF文件处理过程141

9.4.2 INF文件的结构141

9.4.3 版本节141

9.4.4 源文件盘符节143

9.4.5 源文件节144

9.4.6 目标磁盘节144

9.4.7 供应商节145

9.4.8 默认安装节145

9.4.9 字符串节145

9.5 Visual Studio6.0环境下的通用USB驱动145

9.5.1 CyLoad.inf文件146

9.5.2 CyUSB.inf文件148

9.6 Visual Studio 2005环境下的通用USB驱动151

9.7 驱动程序的安装153

9.8 小结155

第10章 上位机程序开发156

10.1 VisualC+++读写USB设备156

10.1.1 CYIOCTL控制函数类156

10.1.2 CyAPI控制函数类162

10.2 VisualC#读写USB设备181

10.2.1 CyHidDevice类181

10.2.2 CyIsocEndPoint类186

10.2.3 CyUSBStorDevice类190

10.3 LabVIEW读写USB设备192

10.3.1 USB设备测试192

10.3.2 VISA控制函数194

10.4 小结196

第3篇 USB应用实例篇199

第11章 使用EEPROM进行USB列举199

11.1 EZ-USBFX2LP的启动模式概述199

11.1.1 EZ-USBFX2LP的启动模式200

11.1.2 无EEPROM启动200

11.1.3 首字节为Oxco的EEPROM启动201

11.1.4 首字节为OxC2的EEPROM启动201

11.1.5 启动配置202

11.2 EEPROM引导USB启动电路205

11.3 USB固件程序设计206

11.3.1 建立USB项目207

11.3.2 主程序文件207

11.3.3 请求响应函数210

11.3.4 数据读写子程序215

11.3.5 USB描述符215

11.4 驱动程序设计219

11.4.1 USB固件下载驱动程序219

11.4.2 USB通信驱动程序221

11.5 主机程序设计222

11.5.1 建立工程223

11.5.2 用户界面设计224

11.5.3 程序代码设计225

11.6 小结227

第12章 USB控制LED显示实例228

12.1 LED数码管简介228

12.1.1 共阳极7段LED数码管228

12.1.2共阴极7段LED数码管230

12.2 USB控制LED显示实例231

12.3 USB固件程序设计232

12.3.1 建立USB项目232

12.3.2 主函数程序设计233

12.3.3 设备请求响应函数236

12.3.4 LED控制子函数241

12.3.5 USB固件描述符241

12.4 USB主机程序设计246

12.4.1 建立项目246

12.4.2 程序设计247

12.5 小结251

第13章 USB控制LCD液晶显示模块252

13.1 液晶显示模块概述252

13.1.1 液晶显示模块的分类253

13.1.2 液晶显示模块的特点254

13.2 液晶显示控制驱动器254

13.2.1 液晶显示控制驱动器概述254

13.2.2 液晶显示控制驱动器功能255

13.3 液晶显示控制器指令集258

13.3.1 基本指令集258

13.3.2 扩充指令集261

13.3.3 控制器指令操作方式263

13.4 液晶显示电路原理图264

13.5 固件程序设计267

13.5.1 建立USB项目267

13.5.2 主程序文件268

13.5.3 请求响应函数270

13.5.4 初始化子程序275

13.5.5 液晶汉字显示子程序275

13.5.6 点阵图形型液晶控制子函数275

13.5.7 USB描述符280

13.6 主机程序设计283

13.6.1 建立工程284

13.6.2 用户界面设计285

13.6.3 程序代码设计286

13.7 小结288

第14章 USB键盘程序设计289

14.1 HID设备概述289

14.2 USB键盘设计实例290

14.2.1 电路原理图290

14.2.2 建立USB项目291

14.2.3 主程序文件292

14.2.4 标准设备请求响应函数295

14.2.5 USB键盘功能实现.299

14.2.6 USB键盘描述符301

14.3 小结306

第15章 USB鼠标程序设计307

15.1 USB鼠标硬件概述307

15.2 电路原理图308

15.3 固件程序设计309

15.3.1 接口定义310

15.3.2 主函数310

15.3.3 初始化函数311

15.4 功能实现代码312

15.4.1 主循环函数usbmain312

15.4.2 鼠标事务函数MouseTask312

15.4.3 挂起函数Suspend313

15.4.4 数据包处理函数HandleSetup314

15.4.5 输入数据包处理函数HandleIn315

15.4.6 读数据函数USB_control_read315

15.4.7 装载FIFO函数LoadEPOFifo316

15.4.8 停止端点函数USB_Stall_In_Out316

15.4.9 总线空闲函数Buslnactive316

15.4.10 光学测量函数ProcessOptics317

15.4.11 读按键函数GetBuons318

15.4.12 鼠标移动函数MouseMoved318

15.5 HID设备请求处理318

15.5.1 设置配置请求SetConfiguration318

15.5.2 设置地址请求SetAddress319

15.5.3 清标志请求ClearFeature319

15.5.4 设置标志请求SetFeature320

15.5.5 读取描述符请求GetDescriptor321

15.5.6 读取状态请求GetStatus322

15.5.7 设置空闲请求SetIdle323

15.5.8 设置协议请求SetProtocol323

15.5.9 读取报告请求GetReport324

15.5.10 读取空闲请求GetIdle324

15.5.11 读取协议请求GetProtocol325

15.5.12 读取配置请求GetConfiguration325

15.6 USB鼠标描述符325

15.6.1 设备描述符325

15.6.2 配置描述符326

15.6.3 接口描述符326

15.6.4 端点描述符327

15.6.5 HID类描述符327

15.6.6 报告描述符327

15.6.7 字符串描述符328

15.7 小结329

第16章 USB控制D/A转换输出实例330

16.1 D/A转换概述330

16.1.1 D/A转换原理330

16.1.2 D/A转换器的类型331

16.1.3 D/A转换器的性能参数333

16.2 高速D/A转换芯片AD558334

16.2.1 AD558简介334

16.2.2 AD558输出模式335

16.2.3 AD558的数据锁存336

16.3 电路原理图337

16.4 固件程序设计338

16.4.1 建立USB项目338

16.4.2 主程序文件339

16.4.3 请求响应函数342

16.4.4 D/A转换子函数347

16.4.5 USB设备配置描述符347

16.5 主机程序设计351

16.5.1 建立工程351

16.5.2 用户界面设计353

16.5.3 程序代码设计354

16.6 小结358

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

17.1 A/D转换器概述359

17.1.1 A/D转换原理360

17.1.2 A/D转换器的技术参数362

17.1.3 A/D转换器的选择原则363

17.2 8通道电压型A/D转换器MAX197364

17.2.1 NLAX197的引脚接口364

17.2.2 NLAX197的控制字节365

17.2.3 MA-X197的控制时序367

17.3 USB模拟电压采集实例368

17.3.1 系统电路原理图368

17.3.2 稳压电路370

17.4 USB固件程序设计370

17.4.1 建立USB项目371

17.4.2 主函数程序设计371

17.4.3 设备请求处理374

17.4.4 A/D转换控制子函数379

17.4.5 USB描述符379

17.5 上位机程序设计383

17.5.1 建立项目384

17.5.2 程序设计385

17.6 小结389

第18章 USB的RAM测试实例390

18.1 EZ-USBFX2LP的存储器390

18.1.1 内部数据RAM390

18.1.2 外部程序和数据存储空间393

18.2 USB的RAM测试电路原理图397

18.3 固件程序设计398

18.3.1 建立USB项目398

18.3.2 主程序文件399

18.3.3 测试RAM区域函数testmem402

18.3.4 错误码分析函数status403

18.3.5 特定字符串输出函数statStng404

18.4 小结404

第19章 USB读写I2C总线EEPROM405

19.1 I2C总线概述405

19.1.1 12C总线的工作原理406

19.1.2 12C总线的负载能力406

19.1.3 12C总线的寻址方式406

19.1.4 12C总线数据传输协议407

19.2 电路原理图409

19.3 固件程序设计411

19.3.1 建立USB项目411

19.3.2 主程序文件412

19.3.3 请求响应处理414

19.3.4 EEPROM读写419

19.3.5 12C接口子函数420

19.3.6 USB设备配置描述符424

19.4 主程序设计429

19.4.1 建立工程429

19.4.2 用户界面设计430

19.4.3 程序代码设计431

19.5 小结433

第20章 USB读写Microware串行EEPROM434

20.1 Microware串行总线概述434

20.2 Microware串行总线接口的EEPROM存储器435

20.2.1 Microware串行总线接口EEPROM概述435

20.2.2 Microware串行总线接口EEPROM的指令436

20.2.3M icroware串行总线接口EEPROM的指令时序437

20.3 电路原理图440

20.4 固件程序设计441

20.4.1 建立USB项目442

20.4.2 主程序文件443

20.4.3 请求响应函数445

20.4.4 Microware读写子函数449

20.4.5 三线制Microware串行总线读写子函数450

20.4.6 USB设备配置描述符.453

20.5 主程序设计457

20.5.1 建立工程457

20.5.2 用户界面设计459

20.5.3 程序代码设计460

20.6 小结462

第21章 USB控制实时时钟芯片DS1302463

21.1 实时时钟芯片DS1302概述463

21.1.1 实时时钟芯片DS1302概述463

21.1.2 实时时钟芯片DS1302命令字节464

21.1.3 实时时钟芯片DS1302数据格式464

21.1.4 实时时钟芯片DS1302数据传输方式466

21.2 电路原理图467

21.3 固件程序设计469

21.3.1 建立USB项目469

21.3.2 主程序文件470

21.3.3 请求响应处理473

21.3.4 实时时钟操作477

21.3.5 DS1302控制子函数478

21.3.6 USB设备配置描述符482

21.4 上位机程序设计486

21.4.1 建立工程486

21.4.2 用户界面设计487

21.4.3 程序代码设计488

21.5 小结491

第22章 USB采集单总线温度传感器DS18S20492

22.1单 总线概述492

22.2单 总线温度传感器DS18S20.493

22.2.1 温度传感器DS18S20概述494

22.2.2 DS18S20的供电方式494

22.2.3 DS18S20的数据操作495

22.2.4 DS18S20的温度转换操作497

22.3 电路原理图498

22.4 固件程序设计499

22.4.1 建立USB项目499

22.4.2 主程序文件500

22.4.3 请求响应处理503

22.4.4 读取温度操作507

22.4.5 DS18S20控制子函数508

22.4.6 USB设备配置描述符510

22.5 上位机程序设计514

22.5.1 建立工程514

22.5.2 用户界面设计516

22.5.3 程序代码设计517

22.6 小结519

第23章 USB打印机控制实例520

23.1 CH375A接口芯片520

23.1.1 CH375A概述521

23.1.2 CH375A内部结构523

23.2 CH375A指令523

23.2.1 CH375A基本指令.524

23.2.2 USB存储设备类指令527

23.3 CH375A接口方式533

23.3.1 并行接口534

23.3.2 串行接口534

23.4 USB打印机控制实例535

23.4.1 电路原理图535

23.4.2 USB打印机控制方式538

23.5 程序设计539

23.5.1 项目建立539

23.5.2 头文件539

23.5.3 参数及结构定义543

23.5.4 主函数544

23.5.5 基本操作子函数545

23.5.6 数据同步及读写子函数547

23.5.7 CH375A主机操作子函数548

23.6 小结552

第24章 USB接口充电器实例553

24.1 锂电池及其充电概述553

24.1.1 锂电池概述553

24.1.2 锂电池充电概述554

24.2 智能充电管理芯片MAX1898554

24.2.1 智能充电管理芯片选型555

24.2.2 智能充电管理芯片MAX1898概述555

24.2.3 MAX1898充电工作原理556

24.3 USB接口充电器实例557

24.3.1 电路原理图557

24.3.2 USB接口充电器功能560

24.4 固件程序设计561

24.4.1 建立USB项目561

24.4.2 主程序文件562

24.4.3 请求响应处理565

24.4.4 智能充电管理569

24.4.5 USB设备配置描述符570

24.5 小结574

第25章 USB转RS-232串口实例.575

25.1 CH341简介575

25.2 CH341串口工作方式576

25.2.1 异步串口方式576

25.2.2 同步串口方式579

25.3 CH341打印口工作方式579

25.4 CH341并口工作方式581

25.4.1 EPP并口方式582

25.4.2 MEM并口方式583

25.5 CH341功能配置583

25.5.1 直接组合配置583

25.5.2 外部芯片配置583

25.6 USB转RS-232串口实例584

25.6.1 电路原理图584

25.6.2 硬件接口介绍585

25.6.3 连接使用586

25.7 小结587

第26章 U盘设计实例588

26.1 Nand-Flash存储器588

26.1.1 Nor-Flash和Nand-Flash588

26.1.2 Nand-Flash存储器K9F2GO8UOM589

26.1.3 Nand-Flash存储器的组织结构590

26.1.4 Nand-Flash存储器的指令集591

26.1.5 Nand-Flash存储器的操作591

26.2 基于Nand-Flash的文件系统592

26.2.1 分区格式简介592

26.2.2 基于Nand-Flash的文件系统593

26.2.3 Nand-Flash存储器上的FAT结构597

26.3 Nand-Flash控制器597

26.3.1 CY7C68023简介597

26.3.2 兼容Nand-Flash存储器599

26.4 U盘设计实例599

26.4.1 电路原理图600

26.4.2 PCB设计要求601

26.4.3 配置格式化601

26.5 小结602

第27章 LabVIEW下的USB数据采集实例603

27.1 SlaveFIFO模式简介603

27.1.1 SlaveFIFO模式的引脚及功能604

27.1.2 典型的数据传输608

27.2 SlaveFIFO的固件设计609

27.2.1 SlaveFIFO固件基础610

27.2.2 AutoIn/AutoOut模式610

27.2.3 AutoIn/AutoOut模式初始化610

27.2.4 CPU访问OUT数据包613

27.2.5 CPU访问IN数据包615

27.3 电路原理图617

27.4 固件程序设计618

27.4.1 建立USB项目618

27.4.2 主程序文件619

27.4.3 请求响应函数621

27.4.4 初始化子函数625

27.4.5 自定义请求子函数626

27.4.6 块传输处理626

27.4.7 USB设备配置描述符627

27.5 LabVIEW程序设计632

27.5.1 USB驱动程序632

27.5.2 前面板程序设计634

27.5.3 程序框图设计634

27.6 小结635

热门推荐