图书介绍
EZ-USB FX系列单片机USB外围设备设计与应用pdf电子书版本下载
- 许永和编著 著
- 出版社: 北京:北京航空航天大学出版社
- ISBN:7810772201
- 出版时间:2002
- 标注页数:584页
- 文件大小:109MB
- 文件页数:606页
- 主题词:单片计算机
PDF下载
下载说明
EZ-USB FX系列单片机USB外围设备设计与应用PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
PART1 USB的基本概念 2
第1章 USB的基本特性 2
1.1 USB简介 2
1.2 USB的发展历程 3
1.2.1 USB 1.1 3
1.2.2 USB 2.0 4
1.2.3 USB与IEEE 1394的比较 4
1.3 USB基本架构与总线架构 6
1.4 USB的总线结构 8
1.5 USB数据流的模式与管线的概念 9
1.6 USB硬件规范 10
1.6.1 USB的硬件特性 11
1.6.2 USB接口的电气特性 12
1.6.3 USB的电源管理 14
1.7 USB的编码方式 14
1.8 结论 16
1.9 问题与讨论 16
第2章 USB通信协议 17
2.1 USB通信协议 17
2.2 USB封包中的数据域类型 18
2.2.1 数据域位的格式 18
2.3 封包格式 19
2.4 USB传输的类型 23
2.4.1 控制传输 24
2.4.2 中断传输 29
2.4.3 批量传输 29
2.4.4 等时传输 29
2.5 USB数据交换格式 30
2.6 USB描述符 34
2.7 USB设备请求 42
2.8 USB设备群组 44
2.9 结论 46
2.10 问题与讨论 46
第3章 设备列举 47
3.1 注册表编辑器 47
3.2 设备列举的步骤 49
3.3 设备列举步骤的实现——使用CATC分析工具 51
3.4 结论 61
3.5 问题与讨论 61
第4章 USB芯片与EZ-USB 62
4.1 USB芯片的简介 62
4.2 USB接口芯片 64
4.2.1 Philips接口芯片 64
4.2.2 National Semiconductor接口芯片 66
4.3 内含USB单元的微处理器 68
4.3.1 Motorola 69
4.3.2 Microchip 69
4.3.3 SIEMENS 70
4.3.4 Cypress 71
4.4 USB芯片总揽介绍 73
4.5 USB芯片的选择与评估 74
4.6 问题与讨论 80
第5章 设备与驱动程序 81
5.1 阶层式的驱动程序 81
5.2 主机的驱动程序 83
5.3 驱动程序的选择 86
5.4 结论 86
5.5 问题与讨论 87
第6章 HID群组 88
6.1 HID简介 88
6.2 HID群组的传输速率 88
6.3 HID描述符 90
6.3.1 报告描述符 93
6.3.2 主要(main)项目类型 96
6.3.3 整体(global)项目卷标 97
6.3.4 区域(local)项目卷标 98
6.3.5 简易的报告描述符 99
6.3.6 Descriptor Tool(描述符工具) 100
6.3.7 兼容测试程序 101
6.4 HID设备的基本请求 102
6.5 Windows通信程序 103
6.6 问题与讨论 106
PART2 硬件技术篇 109
第7章 EZ-USB FX简介 109
7.1 简介 109
7.2 EZ-USB FX硬件框图 109
7.3 封包与PID码 111
7.4 主机是个主控者 113
7.4.1 从主机接收数据 113
7.4.2 传送数据至主机 113
7.5 USB方向 113
7.6 帧 114
7.7 EZ-USB FX传输类型 114
7.7.1 批量传输 114
7.7.2 中断传输 114
7.7.3 等时传输 115
7.7.4 控制传输 115
7.8 设备列举 116
7.9 USB核心 116
7.10 EZ-USB FX单片机 117
7.11 重新设备列举 117
7.12 EZ-USB FX端点 118
7.12.1 EZ-USB FX批量端点 118
7.12.2 EZ-USB FX控制端点0 118
7.12.3 EZ-USB FX中断端点 119
7.12.4 EZ-USB FX等时端点 119
7.13 快速传送模式 119
7.14 中断 120
7.15 重置与电源管理 120
7.16 EZ-USB 2100系列 120
7.17 FX系列——“从”FIFO 122
7.18 FX系列——GPIF(通用型可程序化的接口) 122
7.19 AN2122/26各种特性的摘要 122
7.20 修订ID 123
7.21 引脚描述 123
第8章 EZ-USB FX CPU 130
8.1 简介 130
8.2 8051增强模式 130
8.3 EZ-USB FX所增强的部分 131
8.4 EZ-USB FX寄存器接口 131
8.5 EZ-USB FX内部RAM 131
8.6 I/O端口 132
8.7 中断 132
8.8 电源控制 133
8.9 特殊功能寄存器(SFR) 134
8.10 内部总线 135
8.11 重置 136
第9章 EZ-USB FX内存 137
9.1 简介 137
9.2 8051内存 138
9.3 扩充的EZ-USB FX内存 139
9.4 CX#与OE#信号 140
9.5 EZ-USB FX ROM版本 141
第10章 EZ-USB FX输入/输出端口 143
10.1 简介 143
10.2 I/O端口 143
10.3 EZ-USB输入/输出端口寄存器 146
10.3.1 端口配置寄存器 147
10.3.2 I/O端口寄存器 147
10.4 EZ-USB FX输入/输出端口寄存器 149
10.5 EZ-USB FX端口配置表 151
10.6 I2C控制器 156
10.7 8051 I2C控制器 156
10.8 控制位 158
10.8.1 START位 158
10.8.2 STOP位 158
10.8.3 LASTRD位 158
10.9 状态位 159
10.9.1 DONE位 159
10.9.2 ACK位 159
10.9.3 BERR位 159
10.9.4 ID1,ID0 159
10.10 送出(WRITE)I2C数据 160
10.11 接收(READ)I2C)数据 160
10.12 I2C激活加载器 160
10.13 SFR寻址(FX) 162
10.14 端口A~E的SFR控制 165
第11章 EZ-USB FX设备列举与重新设备列举 167
11.1 简介 167
11.2 预设的USB设备 169
11.3 USB核心对于EP0设备请求的响应 170
11.4 固件下载 171
11.5 设备列举模式 172
11.6 没有存在EEPROM 173
11.7 存在着EEPROM,第一个字节是0xB0(0xB4,FX系列) 174
11.8 存在着EEPROM,第一个字节是0xB2(0xB6,FX列系) 175
11.9 配置字节0,FX系列 177
11.10 重新设备列举(ReNumerationTM) 178
11.11 多重-重新设备列举(ReNumerationTM) 179
11.12 预设描述符 179
第12章 EZ-USB FX批量传输 188
12.1 简介 188
12.2 批量输入传输 189
12.3 中断传输 191
12.4 EZ-USB FX批量IN的例子 191
12.5 批量OUT传输 192
12.6 端点对 194
12.7 IN端点对的状态 194
12.8 OUT端点对的状态 195
12.9 使用批量缓冲区内存 195
12.10 Data Toggle控制 196
12.11 轮询的批量传输的范例 197
12.12 设备列举说明 199
12.13 批量端点中断 199
12.14 中断批量传输的范例 201
12.15 设备列举说明 205
12.16 自动指针器 205
第13章 EZ-USB控制端点0 209
13.1 简介 209
13.2 控制端点EP0 210
13.3 USB请求 212
13.3.1 取得状态(Get_Status) 214
13.3.2 设置特性(Set_Feature) 217
13.3.3 清除特性(Clear_Feature) 218
13.3.4 取得描述符(Get_Descriptor) 219
13.3.5 设置描述符(Set Descriptor) 223
13.3.6 设置配置(Set_Configuration) 225
13.3.7 取得配置(Get_Configuration) 225
13.3.8 设置接口(Set_Interface) 225
13.3.9 取得接口(Get_Interface) 226
13.3.10 设置地址(Set_Address) 227
13.3.11 同步帧 227
13.3.12 固件加载 228
第14章 EZ-USB FX等时传输 229
14.1 简介 229
14.2 等时IN传输 230
14.2.1 初始化设置 230
14.2.2 IN数据传输 230
14.3 等时OUT传输 231
14.3.1 初始化设置 231
14.3.2 数据传输 232
14.4 设置等时FIFO的大小 232
14.5 等时传输速度 234
14.5.1 EZ-USB 2100系列 234
14.5.2 EZ-USB FX系列 235
14.6 快速传输(仅存于2100系列) 236
14.6.1 快速写入 236
14.6.2 快速读取 237
14.7 快速传输的时序(仅存于2100系列) 237
14.7.1 快速写入波形 238
14.7.2 快速读取波形 239
14.8 快速传输速度(仅存于2100系列) 239
14.9 其余的等时寄存器 240
14.9.1 除能等时寄存器 240
14.9.2 0字节计数位 241
14.10 以无数据来响应等时IN令牌 242
14.11 使用等时FIFO 242
第15章 EZ-USB FX中断 243
15.1 简介 243
15.2 USB核心中断 244
15.3 唤醒中断 244
15.4 USB中断信号源 245
15.5 SUTOK与SUDAV中断 248
15.6 SOF中断 249
15.7 中止(suspend)中断 249
15.8 USB重置中断 249
15.9 批量端点中断 250
15.10 USB自动向量 250
15.11 USB自动向量译码 251
15.12 I2C中断 252
15.13 IN批量NAK中断(仅存于AN2122/26与FX系列) 253
15.14 I2C STOP反相中断(仅存于AN2122/26与FX系列) 254
15.15 “从”FIFO中断(INT4) 255
第16章 EZ-USB FX重置 257
16.1 简介 257
16.2 EZ-USB FX打开电源重置(POR) 257
16.3 8051重置的释放 259
16.3.1 RAM的下载 260
16.3.2 下载EEPROM 260
16.3.3 外部ROM 260
16.4 8051重置所产生的影响 260
16.5 USB总线重置 261
16.6 EZ-USB脱离 262
16.7 各种重置状态的总结 263
第17章 EZ-USB FX电源管理 265
17.1 简介 265
17.2 中止(suspend) 266
17.3 回复(resume) 267
17.4 远程唤醒(remote wakeup) 269
第18章 EZ-USB FX系统 271
18.1 简介 271
18.2 DMA寄存器描述 272
18.2.1 来源、目的、传输长度地址寄存器 272
18.2.2 DMA起始与状态寄存器 275
18.2.3 DMA同步突发使能寄存器 275
18.2.4 虚拟寄存器 278
18.3 RD/FRD与WR/FWR DMA闪控的选择 278
18.4 DMA闪控波形与延伸位的交互影响 279
18.4.1 DMA外部写入 279
18.4.2 DMA外部读取 280
第19章 EZ-USB FX寄存器 282
19.1 简介 282
19.2 批量数据缓冲区寄存器 283
19.3 等时数据FIFO寄存器 284
19.4 等时字节计数寄存器 285
19.5 CPU寄存器 287
19.6 I/O端口配置寄存器 288
19.7 I/O端口A~C输入/输出寄存器 289
19.8 230 Kbaud UART操作——AN2122/26寄存器 291
19.9 等时控制/状态寄存器 291
19.10 I2C寄存器 292
19.11 中断 294
19.12 端点0控制与状态寄存器 299
19.13 端点1~7的控制与状态寄存器 300
19.14 整体USB寄存器 305
19.15 快速传输 309
19.16 SETUP数据 311
19.17 等时FIFO的容量大小 311
19.18 通用I/F中断使能 312
19.19 通用中断请求 312
19.20 输入/输出端口寄存器D与E 313
19.20.1 端口D输出 313
19.20.2 输入端口D脚位 313
19.20.3 端口D输出使能 313
19.20.4 端口E输出 313
19.20.5 输入端口E脚位 314
19.20.6 端口E输出使能 314
19.21 端口设置 314
19.22 接口配置 314
19.23 端口A与端口C切换配置 316
19.23.1 端口A切换配置#2 316
19.23.2 端口C切换配置#2 317
19.24 DMA寄存器 319
19.24.1 来源、目的、传输长度地址寄存器 319
19.24.2 DMA起始与状态寄存器 320
19.24.3 DMA同步突发使能寄存器 320
19.24.4 选择8051 A/D总线作为外部FIFO 321
PART3 固件技术篇 323
第20章 EZ-USB FX固件架构与函数库 323
20.1 固件架构总览 323
20.2 固件架构的建立 325
20.3 固件架构的副函数钩子 325
20.3.1 工作分配器 326
20.3.2 设备请求(device request) 326
20.3.3 USB中断服务例程 329
20.4 固件架构整体变量 332
20.5 描述符表 333
20.5.1 设备描述符 333
20.5.2 配置描述符 334
20.5.3 接口描述符 334
20.5.4 端点描述符 335
20.5.5 字符串描述符 335
20.5.6 群组描述符 335
20.6 EZ-USB FX固件的函数库 336
20.6.1 包含文件(?.H) 336
20.6.2 子程序 336
20.6.3 整体变量 338
20.7 固件架构的原始程序代码 338
第21章 EZ-USB FX固件范例程序 346
21.1 范例程序的简介 346
21.2 外围I/O测试程序 347
21.3 端点对,EP_PAIR范例 352
21.4 批量测试,BulkTest范例 362
21.5 等时传输,ISOstrm范例 368
21.6 问题与讨论 373
PART4 实验篇 375
第22章 EZ-USB FX仿真器 375
22.1 简介 375
22.2 所需的工具 376
22.3 EZ-USB FX框图 377
22.4 EZ-USB最终版本的系统框图 378
22.5 第一次下载程序 378
22.6 EZ-USB FX开发系统框图 379
22.7 设置开发环境 380
22.8 EZ-USB FX开发工具组的内容 381
22.9 EZ-USB FX开发工具组软件 382
22.9.1 初步安装程序 382
22.9.2 确认主机(个人计算机)是否支持USB 382
22.10 安装EZ-USB控制平台、驱动程序以及文件 383
22.11 EZ-USB FX开发电路板 385
22.11.1 简介 385
22.11.2 开发电路板的浏览 385
22.11.3 所使用的8051资源 386
22.11.4 详细电路 386
22.11.5 LED的显示 387
22.11.6 Jumper 387
22.11.7 连接器 391
22.11.8 内存映象图 392
22.11.9 PLD信号 394
22.11.10 PLD源文件文件 395
22.11.11 雏形板的扩充连接器P1~P6 397
22.11.12 Philips PCF8574 I/O扩充IC 400
22.12 DMA USB FX I/O LAB开发工具介绍 401
22.12.1 USB-FX简介 401
22.12.2 USB-FX及外围整体环境介绍 403
22.12.3 USB-FX与PC连接软件介绍 404
22.12.4 USB-FX硬件功能介绍 404
第23章 LED显示器输出实验 409
23.1 硬件设计与基本概念 409
23.2 固件设计 410
23.3.1 固件架构文件FW.C 411
23.3.2 描述符文件DESCR.A51 412
23.3.3 外围接口文件PERIPH.C 417
23.4 固件程序代码的编译与链接 421
23.5 Windows程序.VB设计 423
23.6 INF文件的编写设计 424
23.7 结论 426
23.8 问题与讨论 427
第24章 七段显示器与键盘的输入/输出实验) 428
24.1 硬件设计与基本概念 428
24.2 固件设计 431
24.2.1 七段显示器 431
24.2.2 4×4键盘扫描 433
24.3 固件程序代码的编译与链接 434
24.4 Windows程序,VB设计 436
24.5 问题与讨论 437
第25章 LCD文字型液晶显示器输出实验 438
25.1 硬件设计与基本概念 438
25.1.1 液晶显示器LCD 438
25.2 固件设计 452
25.3 固件程序代码的编译与链接 456
25.4 Windows程序,VB设计 457
25.5 问题与讨论 458
第26章 LED点阵输出实验 459
26.1 硬件设计与基本概念 459
26.2 固件设计 463
26.3 固件程序代码的编译与链接 463
26.4 Windows程序,VB设计 465
26.5 问题与讨论 465
第27章 步进电机输出实验 466
27.1 硬件设计与基本概念 466
27.1.1 1相激磁 467
27.1.2 2相激磁 467
27.1.3 1-2相激磁 468
27.1.4 PMM8713介绍 469
27.2 固件设计 473
27.3 固件程序代码的编译与链接 474
27.4 Windows程序,VB设计 476
27.5 问题与讨论 477
第28章 I2C接口输入/输出实验 478
28.1 硬件设计与基本概念 478
28.2 固件设计 481
28.3 固件程序代码的编译与链接 483
28.4 Windows程序,VB设计 484
28.5 问题与讨论 485
第29章 A/D转换器与D/A转换器的输入/输出实验 486
29.1 硬件设计与基本概念 486
29.1.1 A/D转换器 486
29.1.2 D/A转换器 490
29.2 固件设计 493
29.2.1 A/D转换器的固件设计 493
29.2.2 D/A转换器的固件设计 496
29.3 固件程序代码的编译与链接 497
29.4 Windows程序,VB设计 498
29.5 问题与讨论 499
第30章 LCG绘图型液晶显示器输出实验 500
30.1 硬件设计与基本概念 500
30.1.1 绘图型LCD 500
30.1.2 绘图型LCD控制指令集 503
30.1.3 绘图型LCD读取与写入时序图 505
30.2 固件设计 506
30.2.1 LCG驱动程序 506
30.2.2 USB固件码 513
30.3 固件程序代码的编译与链接 516
30.4 Windows程序,VB设计 517
30.5 问题与讨论 518
附录A Cypress控制平台的操作 519
A.1 EZ-USB控制平台总览 519
A.2 主画面 520
A.3 热插拔新的USB设备 521
A.4 各种工具栏的使用 524
A.5 故障排除 526
A.6 控制平台的进阶操作 527
A.7 测试“Unary Op”工具栏上的按钮功能 528
A.8 测试制造商请求的工具栏(2100系列的开发电路板) 529
A.9 测试等时传输工具栏 532
A.10 测试批量传输工具栏 533
A.11 测试重置管线工具栏 535
A.12 测试设置接口工具栏 537
A.13 测试制造商请求工具栏(FX系列开发电路板) 538
A.14 执行“Get Device Descriptor”操作来验证开发板的功能是否正确 539
A.15 从EZ-USB控制平台中,加载dev_io的范例并且加以执行 540
A.16 从Keil侦错应用程序中,加载dev_io范例程序代码,然后再加以执行 542
A.17 将dev_io目标文件移开,且使用KeilIDE(集成开发环境)来重建 545
A.18 在侦错器下执行dev_io目标文件,并且使用具有侦错能力的IDE 547
A.19 在EZ-USB控制平台下,执行ep_pair目标文件 548
A.20 如何修改fw范例,并在开发电路板上产生等时传输 550
附录B EZ-USB 2100系列及EZ-USB FX系列引脚表 555
B.1 EZ-USB 2100系列引脚表 555
B.2 EZ-USB FX系列引脚图表 561