第1章 绪论 1
1.1概述 1
1.2设备的概念 3
1.2.1设备的定义 3
1.2.2设备多样性 4
1.2.3计算机和设备主要接口 5
1.2.4设备的参数 6
1.2.5虚拟设备 8
1.3设备的监控 9
1.3.1设备监控的目的 10
1.3.2设备接口的监控通用性 10
1.3.3对通信设备的监控 11
1.3.4对计算机的监控 13
1.4设备监控的编程层次 13
1.4.1有线无线网络接口的协议层次 13
1.4.2串口Modem接口的协议层次 14
1.4.3 USB1394接口的协议层次 15
1.4.4 SCSI卡多功能1O卡接口的协议层次 16
1.5设备监控通信协议的差异 16
1.5.1从设备通信方式上看差别 17
1.5.2从协议格式上看差别 19
1.5.3从命令间的关系上看差别 22
1.5.4从对外展示方式上看差别 23
1.6计算机和通信之间的有趣争论 24
1.6.1传输层要不要建立连接之争 24
1.6.2计数方法之争 25
1.6.3计量单位之争 27
1.6.4数据的存储顺序之争 27
1.7硬件设计中的Bug 29
1.7.1协议冲突而导致的Bug 29
1.7.2特殊操作而导致的Bug 30
1.7.3设计而导致的Bug 30
第2章 通用算法和例程 31
2.1进制转换 32
2.1.1数值的表示形式 32
2.1.2数据的加权表达式 33
2.1.3数值与字符串之间的转换 33
2.1.4任意进制之间的互换 34
2.1.5各进制小数的表示 36
2.2位的操作 37
2.2.1移位操作 38
2.2.2读取指定位 38
2.2.3写入指定位 39
2.3设备文件 40
2.4“校验和”算法 42
2.4.1“异或”算法 43
2.4.2 CRC算法 44
2.4.3“求和”算法 47
2.4.4“补码求和”算法 48
2.4.5可视字符算法 48
2.5编程实例1:通用校验和计算程序 49
2.5.1程序主界面 49
2.5.2程序代码 50
2.6编程实例2:仿真设备 55
2.6.1程序主界面 56
2.6.2设备的《用户操作手册》 57
2.6.3程序分析 58
2.6.4程序代码 58
第3章 串口设备监控 62
3.1串口概念 63
3.1.1串行通信的概念 63
3.1.2串口的标准 63
3.1.3串口的名称 64
3.1.4串口分类 65
3.1.5串口参数 69
3.1.6串口的优缺点 72
3.2串口设备接口 73
3.2.1标准串口模块外形实物图 73
3.2.2主机机箱上带的串口 75
3.2.3主板上引接的串口 75
3.2.4主板总线转换的串口 77
3.2.5主机其他接口转换的串口 81
3.2.6串口交换机 83
3.3串口线的制作和转换 92
3.3.1串口引脚定义 92
3.3.2串口的转换与连接线制作 99
3.3.3连接实例:几种典型连接线制作 107
3.4串口组网方式 109
3.4.1串口直连 109
3.4.2 USB-HUB方式组网 110
3.4.3串口交换机组网 111
3.4.4并联方式 112
3.4.5串口连接线的检测与保护 113
3.5串口应用程序 115
3.5.1查看系统中的串口 115
3.5.2超级终端 119
3.5.3命令行的串口操作命令 121
3.5.4串口交换机的WWW配置 124
3.6串口设备通信协议 128
3.6.1自定义的串口协议 128
3.6.2串口工业事实标准:MODBUS协议 129
3.6.3音视频领域的标准:VDCP协议 141
3.6.4通信类设备的串口协议 145
3.6.5通用串口协议分析机 147
3.7编程接口 149
3.7.1以设备文件的API方式进行读写 150
3.7.2基于COM组件的串口控件MSComm 174
3.7.3 PComm控件 189
3.7.4 IPSerial控件 209
3.7.5 nMODBUS编程接口简介 220
3.8串口通信调试和编程技巧 221
3.8.1调试技巧 221
3.8.2编程技巧 222
3.9编程实例1:串口仿真设备 223
3.10编程实例2:基于设备文件的本地串口通用调试工具 227
3.10.1程序主界面 227
3.10.2程序分析 228
3.10.3程序代码 229
3.11编程实例3:基于MSComm控件的本地串口通用调试工具 235
3.11.1程序主界面 235
3.11.2程序分析 236
3.11.3程序代码 237
3.12编程实例4:基于PComm控件的本地串口通用调试工具 240
3.12.1程序主界面 240
3.12.2程序分析 240
3.12.3程序代码 241
3.13编程实例5:基于IPSerial控件的网络串口通用调试工具 244
3.13.1程序主界面 244
3.13.2程序分析 245
3.13.3程序代码 246
3.14编程实例6:串口的监听 249
3.14.1程序主界面 250
3.14.2程序代码 251
第4章 网口设备监控 259
4.1网口概念 260
4.1.1网线实物图 260
4.1.2网口外形实物图 261
4.1.3网口交换机实物图 261
4.1.4引脚定义 262
4.1.5网口接头的连接 263
4.1.6 BNC网口简介 265
4.1.7基于TCPIP的光口网络简介 267
4.1.8基于TCPIP的无线网络简介 267
4.2 TCPIP协议编程 268
4.2.1 Socket中几个重要的概念 269
4.2.2 Windows socket结构 271
4.2.3 Windows socket转换类函数 273
4.2.4 Windows socket通信类函数返回值 277
4.2.5 Windows socket通信类函数 279
4.2.6 Windows socket的IO模式 289
4.2.7轻量级TCPIP协议栈概述 290
4.3网口设备工业标准协议: 291
SNMP协议 291
4.3.1 SNMP协议 291
4.3.2 SNMP的API 299
4.4网口设备标准协议:MODBUS over TCP 311
4.4.1 MODBUS over TCP协议层次 311
4.4.2 MODBUS over TCPIP协议与SNMP协议的对比 313
4.5网口设备的协议实例 314
4.5.1通过网口监控设备与通过网口与计算机通信的不同 314
4.5.2支持TCPUDP的设备协议实例 314
4.5.3支持SNMP的设备协议实例 318
4.5.4高层应用的设备协议实例 325
4.6编程实例1:网口仿真设备 327
4.7编程实例2:SNMP通用读设工具 330
4.7.1程序主界面 331
4.7.2程序代码 332
4.8编程实例3:串口和网口的通信网关 336
4.8.1程序主界面 336
4.8.2程序代码 337
4.9编程实例分析:微软命令行SnmpUtil工具源码分析 340
第5章 SCSI接口设备监控 348
5.1 SCSI概念 348
5.1.1 SCSI简介 348
5.1.2 SCSI的类型 349
5.1.3 SCSI设备的连网 351
5.1.4 SCSI外形实物图 352
5.1.5 iSCSI简介 354
5.2操作系统下的SCSI设备 354
5.3基于SCSI适配器的ASPI编程技术 356
5.3.1 ASPI编程的初始工作 357
5.3.2 ASPI的命令详解 358
5.3.3 ASPI的命令返回值的判断 369
5.4 SCSI协议格式 373
5.4.1 SCSI协议规定的外围设备 374
5.4.2 SCSI协议的命令结构 374
5.4.3 SCSI协议的最小强制命令集 375
5.4.4 SCSI协议的部分设备强制命令集 376
5.4.5 SCSI协议的可选命令集 377
5.5 SCSI硬盘的编程技术简介 378
5.6 SCSI磁带机磁带库的编程技术 379
5.6.1磁带与磁带驱动器 379
5.6.2磁带库的结构 380
5.6.3磁带库检测命令行工具 382
5.6.4磁带库的SCSI命令 383
5.6.5 SCSI的返回值 390
5.6.6操作同步的处理机制 391
5.7编程实例1:SCSI接口设备通用检测程序 394
5.7.1程序主界面 394
5.7.2程序代码 395
5.8编程实例2:SCSI磁带机磁带库监控程序 405
5.8.1程序主界面 405
5.8.2程序代码 406
第6章 电话线接口设备的监控 415
6.1电话线接口概念 416
6.1.1 Modem实物图 417
6.1.2电话线接口引脚和接线 418
6.2 Modem的AT指令集监控设备 419
6.3电话线应用程序 426
6.3.1通过超级终端拨号 426
6.3.2命令行的电话拨号 434
6.3.3电话线的双机互联 436
6.4通过TAPI的API监控设备 436
6.4.1 TAPI概述 437
6.4.2 TAPI的主要返回值 437
6.4.3 TAPI的主要结构 440
6.4.4 TAPI的主要API 452
6.5编程实例:通过AT指令集的 461
电话拨号程序 461
6.5.1程序主界面 461
6.5.2程序代码 462
第7章 其他类型接口设备的监控 464
7.1并口设备的监控 465
7.1.1并口实物图和引脚定义 465
7.1.2查看并口 467
7.1.3基于控制台的并口编程 469
7.1.4基于WinIO的并口编程 475
7.2基于高层API的设备监控 481
7.3基于Web应用的设备监控 494
7.3.1基于Web应用设备的监控原理 495
7.3.2 Win Inet编程接口 495
7.4基于数据采集卡的监控 513
7.4.1数据采集卡的作用 513
7.4.2数据采集卡实物图 514
7.4.3数据采集卡主要参数 515
7.4.4数据采集系统的构成 516
7.4.5基于数据采集卡的监控 517
7.5编程实例:基于Web的设备监控 517
7.5.1简易Web服务器的构建 518
7.5.2原理分析 520
7.5.3程序主界面 522
7.5.4程序代码 522
第8章 物联网设备的监控 526
8.1物联网概念 526
8.1.1物联网的定义 527
8.1.2物联网的层次 528
8.1.3物联网的发展和现状 528
8.1.4层次体系 529
8.1.5核心技术 530
8.2物联网的技术 531
8.2.1条形码识别技术 532
8.2.2射频识别技术 536
8.2.3传感器技术 536
8.2.4 GPS技术 540
8.2.5 Zigbee无线网络 542
8.2.6无线传感器网络 543
8.2.7 Ad Hoc网络 544
8.2.8云计算技术 545
8.3物联网与互联网的关系 547
8.3.1物联网内部的问题 547
8.3.2互联网接入技术 551
8.3.3物联网对互联网的接入 557
8.4物联网设备监控的实例 558
后记 567
附录A本书容易混淆概念说明 568
附录B详解ASCII码 573
参考文献 580