图书介绍
USB接口技术PDF|Epub|txt|kindle电子书版本网盘下载
![USB接口技术](https://www.shukui.net/cover/27/30857744.jpg)
- 李肇庆等编著 著
- 出版社: 北京:国防工业出版社
- ISBN:7118034525
- 出版时间:2004
- 标注页数:406页
- 文件大小:25MB
- 文件页数:422页
- 主题词:电子计算机-接口
PDF下载
下载说明
USB接口技术PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章USB简介1
1.1 问题的产生1
目录1
23.3 HID特定要求 351
3.2信息包 51
1.2问题的解决3
1.3 USB的发展4
1.3.1 USB规范的版本4
1.3.2 USB 2.05
1.3.3 IEEE-13945
1.4 USB的优点6
1.4.1容易使用6
1.4.5稳定性7
14.7.1 USB设备列举的过程 197
1.4.3低价位7
1.4.2传输速度快7
1.4.4低能耗7
1.4.6操作系统的支持8
1.4.8有弹性8
1.4.7外围设备的支持8
1.5 USB的缺点9
1.6与其他接口的比较10
1.7.1主机控制器11
1.7 USB对PC的软硬件要求11
1.7.2操作系统11
1.7.3组件11
1.7.4信道12
1.7.5连接端口13
1.8主机的功能14
1.9外围设备的功能15
1.10传输速度17
1.11开发的流程17
1.11.1所需组件18
1.11.2开发工具18
2.1传输的基础19
2.1.1 配置19
2.1.2应用程序19
第2章USB传输19
2.1.3数据的管理20
2.1.4总线速度20
2.2传输的要件21
2.2.1设备的端点21
2.2.2管道22
2.2.3传输类型23
2.3事务24
2.2.5传输的初始化24
2.2.4消息管道与流管道24
2.3.1事务相让26
2.3.2信息包的串行化27
2.3.4分割事务28
2.3.3时间的限制28
2.4联络信号30
2.4.1 ACK31
2.4.2 NAK31
2.4.3 STALL31
2.4.5 ERR32
2.4.6没有响应32
2.4.7控制传输的状态32
2.4.4 NYET32
2.5错误的检验33
2.5.1错误校验位33
2.5.2数据交替位33
2.6控制传输35
2.6.1 结构35
2.6.2信息包大小37
2.6.3传输速度38
2.6.4检测错误40
2.7批量传输40
2.7.1结构40
2.7.2信息包大小41
2.7.3传输速度41
2.7.4检测错误42
2.8中断传输42
2.8.2信息包大小43
2.8.3传输速度43
2.8.1 结构43
2.8.4检验错误45
2.9实时传输45
2.9.1结构46
2.9.2信息包大小46
2.9.3传输速度47
2.10传输的关键48
2.10.1总线的带宽48
2.10.2设备的能力49
2.10.3主机软件的能力49
2.10.4 Windows的延迟49
第3章USB事务处理50
3.1概述50
3.2.1 同步序列51
3.2.2信息包的标识符52
3.2.5信息包的结束(EOP)53
3.2.4循环冗余校验(CRC)53
3.2.3信息包的特定信息53
3.3令牌包54
3.3.1 SOF包54
3.3.2 IN包55
3.3.3 OUT包55
3.3.4 SETUP包55
3.3.5数据包56
3.3.6握手包57
3.3.7前导包58
3.4事务处理58
3.4.1IN事务处理58
3.4.2 OUT事务处理60
3.4.3 SETUP事务处理/控制传输62
4.1.1令牌信息包65
4.1 设置阶段65
第4章控制传输65
4.1.2数据信息包66
4.1.3联络信息包69
4.2数据阶段69
4.2.1令牌信息包70
4.2.2数据信息包70
4.2.3联络信息包70
4.3.3联络信息包71
4.3状态阶段71
4.3.1令牌信息包71
4.3.2数据信息包71
4.4检测错误72
4.5要求72
4.5.1 Clear_Feature73
4.5.2 Get_Configuration74
4.5.3 Get_Descriptor74
4.5.4 Get_Interface75
4.5.5 Get_Status76
4.5.6 Set_Address77
4.5.7 Set_Configuration77
4.5.8 Set_Descriptor78
4.5.9 Set_Feature79
4.5.10 Set_Interface79
4.5.1 1 Synch_Frame80
4.5.12类别特定的要求与厂商的要求80
5.1概述82
5.2信息包错误82
5.2.1 PID检查82
第5章错误恢复82
5.2.2 CRC错误83
5.2.3位填充错误83
5.2.4信息包相关错误处理83
5.3总线超时85
5.5数据触发出错86
5.4错误的EOP86
5.6特殊情况93
5.7.1时间片计时器94
5.7串扰/LOA检测和恢复94
5.7.2主机到集线器的时滞95
5.7.3集线器中继器状态机制95
第6章检测设备97
6.1检测设备的过程97
6.1.1检测的步骤98
6.1.3移除设备101
6.2.1类型101
6.2描述符101
6.1.2检测集线器101
6.2.2设备描述符103
6.2.3 Device_Qualifier描述符105
6.2.4配置描述符106
6.2.5 Other_Speed_Configuration描述符107
6.2.6接口描述符108
6.2.7端点描述符110
6.2.8字符串描述符111
6.3 USB 2.0兼容设备的描述符112
7.1 USB的供电114
7.2.1 电流预算114
第7章USB供电分配114
7.2集线器114
7.2.2过流保护115
7.2.3压降预算115
7.2.4电源开关115
7.3总线供电的集线器116
7.3.1在集线器配置过程中的电源116
7.3.2连接到500mA端口的总线供电的集线器116
7.3.3与100mA端口相连的总线供电的集线器117
7.3.4与大于100mA而小于500mA端口相连的总线供电的集线器117
7.3.5外电流限制117
7.4.1低功率设备118
7.4.2高功率设备118
7.4总线供电的集线器设备118
7.5 自供电的集线器119
7.5.1在配置过程中的供电120
7.5.2电流限制121
7.6 自供电设备121
第8章USB电源管理123
8.1供电保持123
8.1.1设备对挂起的响应123
8.1.2集线器对挂起的响应123
8.2.1启动全局挂起124
8.2.1从全局挂起状态恢复124
8.2全局挂起124
8.3选择性挂起126
8.3.1启动选择挂起126
8.3.2 从选择性挂起状态恢复126
8.3.3 当集线器被连接时的选择性挂起127
8.4在全局挂起之后的选择性挂起129
8.5通过复位恢复130
第9章USB配置处理131
9.1概述131
9.2配置模型132
9.3根集线器的配置132
9.3.2复位操作强迫设备被分配为默认的地址133
9.3.3主机分配惟一的设备地址133
9.3.1 设备为了配置而隔离133
10.1集线器的配置135
10.1.1默认管道135
第10章集线器配置135
10.1.2状态变化管道136
10.2读取集线器的端点描述符136
10.2.1 集线器设备描述符136
10.2.2集线器配置描述符138
10.2.3 集线器接口描述符139
10.2.4状态端点描述符140
10.2.5集线器类的描述符141
10.3给集线器供电143
10.4检查集线器的状态144
10.5集线器端口状态概述145
11.1概述147
11.2集线器请求类型147
第11章集线器请求147
11.3集线器类的请求149
11.4获得/设置位描述符149
11.5获取集线器状态的请求150
11.5.1 集线器的状态字段150
11.5.2集线器状态变化字段150
11.6设置/清除集线器的特征请求151
11.7获取端口状态请求152
11.7.1 端口状态字段152
11.7.2端口变化字段153
11.8设置/清除端口特征154
11.9获取总线状态155
12.1概述156
12.2 USB的描述符156
第12章USB设备配置156
12.4设备描述符157
12.3设备类157
12.5配置描述符160
12.6接口描述符161
12.7端点描述符163
12.8设备状态164
第13章USB微控制器166
13.1主要特性与功能168
13.2 CY7C63411/12/13与CY7C63511/12/13170
13.3 CY7C63612与CY7C63613172
13.4 CY7C64011/12/13~CY7C64111/12/13173
13.5 CY7C64213与CY7C64313175
13.6 CY7C65013与CY7C65113177
13.7 CY7C660XX~CY7C661XX179
第14章USB微控制器的硬件与结构182
14.1 I/O端口184
14.1.1一般目的(GPIO)I/O端口184
14.1.2输入185
14.1.3输出186
14.1.4 XTALIN/XTALOUT187
14.2内存的规划188
14.3重置190
14.3.2重置191
14.3.1打开电源重置191
14.3.3 USB总线重置192
14.4内建的定时器192
14.5立即唤醒的功能192
14.6中断193
14.6.1 中断的迟滞时间195
14.6.2 GPIO中断195
14.7 USB引擎197
14.6.5唤醒中断197
14.6.4定时器中断197
14.6.3 USB中断197
14.7.2端点0198
14.7.3 端点1201
14.7.4 USB状态与控制202
15.1如何执行CYASM204
第15章CYASM汇编语言204
15.2 USB微处理器205
15.3地址的空间规划206
15.3.1指令的格式206
15.3.2寻址的模式207
15.3.3指令执行后的目的地208
15.4汇编语言的语法208
15.5列表文件的格式209
15.6组译器指令210
15.7指令集215
第16章以固件实现USB接口通信238
16.1固件技术238
16.1.1 CPU版本的差异238
16.1.2程序内存结构240
16.2 USB通信243
16.3如何使用CY7C630/1/2XX执行端点的通信工作252
16.3.1端点0252
16.3.2端点1253
16.4 USB通信程序253
17.1如何运用Cypress USB MCU工具进行设计263
第17章Cypress USB微控制器的开发系统263
17.1.1概要设计264
17.1.2以Simulator/Emulator来实现264
17.1.4验证265
17.2 CY3640265
17.2.1功能与特性265
17.1.3用ICE来调试265
17.3低速的CY3650267
17.3.1 USB的开发环境267
17.3.2安装硬件268
17.3.3调试/监控软件270
17.3.4操作方法270
17.3.5扩充接脚的描述274
17.3.6测试276
17.4低速CY365 1277
18.1系统需要与安装281
18.2 USB开发系统软件281
第18章程序的仿真、调试与刻录281
18.2.1操作软件的结构282
18.2.2内部程序内存282
18.2.3 内部主菜单栏284
18.3 Cypress USB MCU的刻录286
第19章USB微控制器的实践入门287
19.1读取按钮的输入值287
19.2键盘扫描288
19.3调整LED亮度与光敏晶体管感度290
19.4读取电位计的电阻值291
19.5实现RS-232串行通信的接口293
19.5.1异步通信所传送数据的结构293
19.5.2执行RS-232的通信协议294
20.1 鼠标的基本结构310
第20章USB应用实例(一)310
20.2硬件设计311
20.3固件设计313
20.3.1 USB的接口313
20.3.2 USB鼠标描述符315
20.3.3 电源管理319
20.3.4位移的计算319
第21章USB应用实例(二)321
21.1模拟摇杆的基本结构321
21.2硬件的设计322
21.3固件的设计322
21.3.1 USB摇杆描述符323
21.3.2校准327
21.3.3 移偏移量的计算328
第22章USB应用实例(三)329
22.1 PS/2键盘的基本结构329
22.2硬件的设计330
22.3固件设计332
22.4功能与特性335
22.4.1主循环335
22.4.2扫描的工作335
22.4.3弹跳338
22.4.4按键码的表格339
23.1 HID简介340
第23章HID设备340
23.1.1硬件要求341
23.1.2固件要求342
23.2 HID的描述符342
23.4传输数据354
23.4.1传送数据给主机354
23.4.2 从主机接收数据355
23.5报表的结构358
23.5.1短项目 .358
23.5.2 长项目359
23.6 Main项目类型360
23.7 Global项目类型363
23.8 Local项目类型367
23.9填充369
23.10实体描述符369
第24章HID程序设计370
24.1主机的通信370
24.2调用API函数372
24.2.1使用VisualC++372
24.2.2使用VisualBasic373
24.3取得HID类别的GUID375
24.3.1使用VisualC++375
24.3.2使用Visual Basic375
24.4.1使用VisualC++376
24.4取得HID信息的结构数组376
24.4.3 详解377
24.4.2 使用Visual Basic377
24.5识别HID接口378
24.5.1使用VisualC++378
24.5.2使用Visual Basic379
24.5.3 羊解380
24.6取得设备的路径380
24.6.1使用VisualC++380
24.6.2使用Visual Basic381
24.7取得设备的代号383
24.7.1使用VisualC++383
24.7.2使用Visual Basic384
24.8.1使用Visual C++385
24.8取得厂商与产品ID385
24.8.2使用Visual Basic386
24.8.3 详解386
24.9取得包含设备能力的缓冲区指针386
24.9.1使用Visual C++387
24.9.2使用Visual Basic387
24.9.3详解387
24.10取得设备的能力388
24.10.1使用VisualC++388
24.10.2使用Visual Basic389
24.10.3详解389
24.12.1使用Visual C++390
24.11取得数值的能力390
24.12传送输出报表给设备390
24.12.2使用Visual Basic391
24.12.3详解392
24.13从设备该项输入报表392
24.13.1使用Visual C++392
24.13.2使用Visual Basic392
24.13.3详解393
24.14使用重叠ReadFile读取报表394
24.14.1使用Visual C++394
24.14.2使用Visual Basic395
24.15使用多线程的ReadFile读取报表397
24.15.1使用Visual C++398
24.15.2使用Visual Basic399
24.16传递特征报表给设备399
24.16.1使用Visual C++400
24.16.2使用Visual Basic400
24.17从设备读取特征报表400
24.17.1使用Visual C++401
24.17.2使用Visual Basic401
24.18关闭通信401
24.18.1使用Visual C++402
24.18.2使用Visual Basic402
附录USB参考资料404
参考文献406