首页>参考读物>计算机科学与技术>软件与程序设计

Visual C++串口通信技术详解(第2版)
作者 : 李景峰 潘恒 杨丽娜 等编著
出版日期 : 2013-08-02
ISBN : 978-7-111-42837-4
定价 : 69.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 418
开本 : 16
原书名 :
原出版社:
属性分类: 店面
包含CD :
绝版 : 未绝版
图书简介

图书特色

本书特点

循序渐进,由浅入深:本书编写遵循“先基础、后技巧”的学习规律,在详细讲解串口通信相关理论、Visual C++使用方法、MSComm控件串口编程、Windows API串口编程以及TAPI 2.x串口编程等重要基础知识之后,在后续章节中结合具体项目,详细给出了在Visual C++中利用MSComm控件串口编程、Windows API串口编程以及TAPI 2.x串口编程实现串口通信功能的程序框架、实现流程以及特殊技巧。
技术全面,内容充实:本书在确保实用的前提下,详细讲解了在Windows环境下开发串口通信程序的多方面知识。无论是希望通过串口通信实现单机串口调试、双机互连、Modem设备控制、单片机控制、PLC控制、射频卡控制、GPS模块控制、云台摄像头控制,还是想在智能报警系统或者语音自动应答系统中采用串口通信方式的读者,都可从书中找到相关的翔实内容。
分析原理,步骤清晰:考虑到大部分希望从事串口通信项目研发的高校师生、企业人员都具备了一定的Visual C++使用经验和C++编程能力,本书在讲解具体项目开发实例时注重呈现各知识点的原理,归纳实现思路与实现步骤。读者可根据书中实例给出的具体步骤,结合下载源代码(www.hzbook.com),自行编写完成实例功能,以提高理解深度和学习效果。
代码完整,讲解详尽:除个别章节外,本书每个知识点都给出了较为完整的项目实例,同时详细注释了关键代码段。为方便学习,在给出代码段之前,多给出了代码段实现功能分析和流程图。读者可以参照运行结果阅读书中或者下载源程序,加深对项目实例的理解。

主要内容:
● 串口通信理论基础
● Visual C++集成开发环境简介
● MSComm控件串口编程
● Windows API串口编程
● TAPI串口编程
● 串口实现双机互连
● 串口调试精灵的编程实现
● 通过串口控制Modem
● 计算机和单片机的串口通信
● 计算机和PLC串口通信
● 计算机与射频卡通信
● 通过串口控制GPS模块
● 串口控制云台摄像头
● 智能报警系统
● 语音自动应答系统
● USB转RS-232串口实例

图书前言

《Visual C++串口通信技术详解》出版后,得到了广大读者的支持与肯定,在短短的两年时间内重印了3次。在此期间,本书作者收到了读者反馈的大量意见与建议,同时也在项目开发过程中积累了更多的工程实践经验。为更好地为读者服务,作者对《Visual C++串口通信技术详解》一书进行了修订,出版第2版。本书保持了第1版的写作风格,并对各章内容与文字进行了细致的修改,努力将读者反馈的问题转化为新内容,方便读者理解和掌握。
  串口通信作为基础而灵活的一种通信方式,广泛应用于计算机系统、自动化控制系统的数据通信方面。微软公司开发的Visual C++集成开发环境为程序员提供了一种宽松式、集成化的开发工具。在Visual C++环境中,程序员可以利用C++语言,方便地实现具有代码短、运行快、可移植等特点的串口通信程序。但是,Visual C++功能复杂,编程方式多样,往往导致初学者产生畏难情绪。此外,虽然很多读者希望本书以更高版本的Visual C++集成开发环境介绍串口通信编程技术,但是作者认为Visual C++ 6.0是目前最稳定的集成开发环境,所以本书继续以此软件为基础进行串口通信编程讲解。
  为此,作者依据多年项目研发积累的实践经验,从串口通信理论和应用实践的角度,系统讲解了在Visual C++中开发串口通信程序的理论基础和方法技巧,特别注重理论和实践相结合,兼具面向基础理论学习和面向实际项目开发的双重特点,可作为具有一定Visual C++使用基础的读者开发串口通信程序的参考书,也可作为科研单位、高等院校相关专业技术人员的参考书籍。
  本书所有实例代码均由作者在Windows XP+SP2操作系统以及Visual C++ 6.0集成开发环境中调试通过。读者只要领会本书给出的编程思路,按照编程步骤进行操作,即可顺利完成相关程序的编制与调试,从而掌握利用Visual C++环境开发串口通信程序的核心技术。
本书特点
  1.循序渐进,由浅入深
  本书编写遵循“先基础,后技巧”的学习规律,在详细讲解串口通信相关理论、Visual C++使用方法、MSComm控件串口编程、Windows API串口编程以及TAPI 2.x串口编程等重要基础知识之后,在后续章节中结合具体项目,详细给出了在Visual C++中利用MSComm控件、Windows API以及TAPI 2.x进行串口编程以实现串口通信功能的程序框架、实现流程及特殊技巧。
  2.技术全面,内容充实
  本书在确保实用的前提下,详细讲解了在Windows环境下开发串口通信程序的多方面知识。无论是希望通过串口通信实现单机串口调试、双机互连、Modem设备控制、单片机控制、PLC控制、射频卡控制、GPS模块控制、云台摄像头控制,还是想在智能报警系统或者语音自动应答系统中采用串口通信方式的读者,都可从书中找到相关的翔实内容。
  3.分析原理,步骤清晰
  考虑到大部分希望从事串口通信项目研发的高校师生、企业人员都具备了一定的Visual C++使用经验和C++编程能力,本书在讲解具体项目开发实例时注重呈现各知识点的原理,归纳实现思路与实现步骤。读者可根据书中实例给出的具体步骤,结合可下载的源代码,自行实现实例功能,以提高理解深度和学习效果。
  4.代码完整,讲解详尽
  除个别章节外,本书每个知识点都给出了较为完整的项目实例,同时详细注释了关键代码段。为方便学习,在给出代码段之前,均提供了代码段实现功能分析和流程图。读者可以参照运行结果查看书中或者下载的本书源程序,加深对项目实例的理解。
主要内容
  本书分为两篇,共16章,各章的主要内容如下。
  第一篇 基础知识篇
  第1章 介绍了计算机接口技术的基本内容。在此基础上,详细说明了RS-232C、RS-422、RS-485等串口通信标准,以及SPI、USB串行通信总线技术。最后,简要描述了应用串行通信方式工作的常见计算机外围设备。了解和掌握上述内容可以为读者进行串行接口编程工作打下坚实的理论基础。
  第2章 介绍了面向对象的基本概念,然后对C++语言的基础及要点进行简单介绍,最后介绍了微软公司出品的支持C++语言的Visual C++ 6.0集成开发环境。
  第3章 介绍了MSComm控件基础知识,详细描述了MSComm控件属性以及OnComm事件,给出了在Visual C++ 6.0集成开发环境中利用MSComm控件开发串口通信程序的具体步骤,并给出了Windows操作系统下基于MSComm控件实现虚拟终端接收程序的详细过程。
  第4章 介绍了Win32 API函数串口通信的基本概念,对串行通信编程使用的特殊数据结构和主要API函数进行了详细说明,在此基础上,给出了利用Windows API函数实现串口通信功能的具体流程。
  第5章 介绍了Windows TAPI的含义和体系框架,然后详细说明了Windows操作系统中常用的TAPI 2.x函数,给出了采用Windows TAPI编程的方法,在Windows操作系统下使用TAPI实现电话拨打程序的详细过程。
  第二篇 项目技巧篇
  第6章 介绍了利用串口实现双机互连的基本方法,给出其通信协议及实现方案,并具体分析了一个简单的双机互连例程。
  第7章 以串口调试精灵为例,详细说明了Windows操作系统下串口通信程序的研发过程,分析了该软件的主要设计思想,给出了该软件的详细实现代码,使读者初步了解从需求分析、设计实现到最终程序发布的项目开发流程。
  第8章 介绍了Modem的基础知识和用于控制调制解调器的AT指令集,然后分别从单片机和通用PC两个方面介绍了使用Modem实现远程通信的方法步骤,并以实例详细讲述了串口控制Modem的简单实现方法。
  第9章 介绍了单片机的串口结构、工作原理和目前常用的接口芯片,详细介绍了计算机通过串口控制单片机的硬件电路设计和通信协议设计,并且分别分析了计算机和单片机串行通信时两端的关键实现代码。
  第10章 介绍了PLC的基本概念和PLC串口通信流程相关知识,在此基础上,详细介绍了计算机通过串口控制PLC的程序设计方法,给出并详细分析了关键代码。
  第11章 介绍了射频卡的工作原理、分类方法及应用等概念,在此基础上,详细介绍了利用串口控制射频卡模块的通信程序的设计方法,给出并详细分析了关键代码。
  第12章 介绍了GPS的相关知识,展示了通过使用MSComm控件接收GPS报文的具体过程,主要包括报文解码以及GPS模块定位信息提取等步骤,给出并详细分析了关键代码。
  第13章 介绍了通过串口控制云台摄像头的方法。在介绍云台控制协议的基础上,针对串口控制云台摄像头程序,分别对添加控件、设计界面、初始化、配置按钮代码等进行详细分析。
  第14章 介绍了一个典型的智能报警系统的设计过程,重点分析了该系统采用的串行通信关键技术和具体实现代码。
  第15章 介绍了一种利用TAPI 3.0函数库实现语音自动应答的方法,通过界面说明及按钮功能实现过程,详细描述了语音自动应答系统的程序设计流程。
  第16章 介绍了USB总线技术和USB总线转换芯片CH341的基本工作原理,详细描述了采用CH341芯片设计简单三线RS-232串口的详细步骤,特别适合项目研发人员参考。
读者对象
  串口通信编程爱好者
  高校相关专业师生
  社会培训班学生
  嵌入式系统研发人员
  通信设备研发人员
本书代码
  下载源代码:原书实例和综合实例的完整代码文档,可在www.hzbook.com下载。
  本书由解放军信息工程大学的李景峰主编,全书的构思、选题确立、编写和最后的统稿均由解放军信息工程大学的李景峰和杨丽娜、中原工学院的潘恒共同完成。其中,第1章、第3章和第4章由李景峰编写,第2章和第5章由潘恒编写,第6章、第10章和第11章由赵俭编写,第7章、第12章和第15章由胡永进、潘恒编写,第8章和第13章由刘威编写,第9章、第14章和第16章由杨丽娜编写。在本书的编写过程中,张书钦、张新刚、宋一兵、张畅、房方、李杰、郭卫锋、杜度威、张轩、赵景伟、赵秋玲、张忠林、王献红、王臣业、张洪信等人参与了资料整理、文字录入、程序验证等工作,在此向他们表示衷心的感谢!同时,本书还参阅了国内外同行的大量文献,在此也向这些文献的作者们表示衷心的感谢!
  由于串口通信程序开发涉及内容广泛,限于篇幅,部分基础理论和技术方法未能在本书中全部展开,对此作者表示遗憾和歉意。另外,由于作者的学识和水平有限,书中难免存在错误或疏漏,敬请专家和读者批评指正。
  感谢您选择了本书,希望我们的努力对您的工作和学习有所帮助,也希望您把对本书的意见和建议告诉我们。
  零点工作室网站地址:www.zerobook.net
  零点工作室联系信箱:gdz_zero@126.com

零点工作室
2013年6月

上架指导

计算机\程序设计

封底文字

本书特点:
循序渐进,由浅入深:本书编写遵循“先基础、后技巧”的学习规律,在详细讲解串口通信相关理论、Visual C++使用方法、MSComm控件串口编程、Windows API串口编程以及TAPI 2.x串口编程等重要基础知识之后,在后续章节中结合具体项目,详细给出了在Visual C++中利用MSComm控件串口编程、Windows API串口编程以及TAPI 2.x串口编程实现串口通信功能的程序框架、实现流程以及特殊技巧。
技术全面,内容充实:本书在确保实用的前提下,详细讲解了在Windows环境下开发串口通信程序的多方面知识。无论是希望通过串口通信实现单机串口调试、双机互连、MODEM设备控制、单片机控制、PLC控制、射频卡控制、GPS模块控制、云台摄像头控制、,还是想在智能报警系统或者语音自动应答系统中采用串口通信方式的读者,都可从书中找到相关的详实内容。
分析原理,步骤清晰:考虑到大部分希望从事串口通信项目研发的高校师生、企业人员都具备了一定的Visual C++使用经验和C++编程能力,本书在讲解具体项目开发实例时注意重点把握各知识点的原理,归纳实现思路与实现步骤。读者可根据书中实例给出的具体步骤,结合随书光盘给出的源代码,自行编写完成实例功能,以提高理解深度和学习效果。
代码完整,讲解详尽:除个别章节外,本书每个知识点都给出了较为完整的项目实例,同时详细注释了关键代码段。为方便学习,在给出代码段之前,多给出了代码段实现功能分析和流程图。读者可以参照运行结果阅读书中或者随书光盘给出的源程序,加深对项目实例的理解。

作者简介

李景峰 潘恒 杨丽娜 等编著:暂无简介

图书目录

前言
第一篇 基础知识篇
第1章 串口通信理论基础1
1.1 接口技术2
1.1.1 接口的定义2
1.1.2 接口的基本功能2
1.1.3 接口的基本控制方式3
1.1.4 并行接口技术4
1.1.5 串行接口技术5
1.2 RS-232C标准5
1.2.1 RS-232C电气特性6
1.2.2 RS-232C连接器机械特性6
1.2.3 RS-232C的接口信号8
1.2.4 RS-232C的通信方式9
1.3 RS-422/RS-485标准10
1.3.1 RS-422简介10
1.3.2 RS-485简介10
1.3.3 RS-422/485网络安装注意事项11
1.4 SPI总线标准11
1.4.1 SPI总线原理11
1.4.2 SPI总线特点12
1.5 USB总线标准12
1.5.1 USB总线总体结构13
1.5.2 USB数据传输逻辑结构13
1.5.3 传输类型14
1.6 使用串口通信的典型外设14
1.6.1 Modem15
1.6.2 传真机15
1.6.3 GPS接收机17
1.7 实践知识拓展19
1.8 思考与练习22
第2章 Visual C++集成开发环境简介23
2.1 面向对象程序设计与C++ 语言23
2.1.1 面向对象程序设计概述23
2.1.2 C++语言基础25
2.1.3 C++的面向对象特性31
2.2 Visual C++ 6.0集成开发环境37
2.2.1 Visual C++ 6.0开发环境37
2.2.2 项目与项目工作区38
2.2.3 应用程序向导AppWizard40
2.2.4 集成开发基本操作42
2.2.5 联机帮助文件49
2.3 MFC应用程序的创建50
2.4 实践知识拓展56
2.5 思考与练习58
第3章 MSComm控件串口编程59
3.1 MSComm控件简介59
3.1.1 MSComm控件描述59
3.1.2 MSComm控件的常用属性59
3.1.3 MSComm控件的其他属性61
3.1.4 MSComm控件的事件65
3.2 MSComm控件编程步骤66
3.2.1 加载MSComm控件到项目66
3.2.2 初始化并打开串行端口68
3.2.3 捕获串行端口事件69
3.2.4 串行端口数据读写70
3.2.5 关闭串行端口71
3.2.6 程序发布问题71
3.3 使用MSComm控件实现串口通信接收71
3.4 实践知识拓展78
3.5 思考与练习85
第4章 Windows API串口编程86
4.1 Windows API串行编程概述86
4.1.1 串行编程的数据结构87
4.1.2 串行编程的Win32 API函数90
4.2 Win32 API串口通信编程方式102
4.2.1 打开串行端口102
4.2.2 配置串行端口103
4.2.3 读/写串行端口104
4.2.4 关闭串行端口108
4.3 基于Win32 API函数实现串口通信发送程序108
4.4 实践知识拓展116
4.5 思考与练习120
第5章 TAPI串口编程121
5.1 TAPI概述121
5.1.1 TAPI的含义121
5.1.2 TAPI的体系结构122
5.1.3 TAPI的服务类型122
5.2 Windows TAPI 2.x函数集123
5.2.1 Windows TAPI编程流程123
5.2.2 TAPI 2.x常用函数123
5.3 使用TAPI实现电话拨打程序130
5.4 实践知识拓展155
5.5 思考与练习158
第二篇 项目技巧篇
第6章 串口实现双机互连159
6.1 概述160
6.2 通信协议及实现方案161
6.2.1 异步串行通信161
6.2.2 同步串行通信163
6.3 实现代码分析166
6.3.1 程序主体设计及关键模块分析166
6.3.2 使用API通信170
6.4 实践知识拓展180
6.5 思考与练习182
第7章 串口调试精灵183
7.1 串口调试精灵设计要求183
7.2 串口调试精灵的编程实现184
7.2.1 软件功能及流程设计185
7.2.2 具体编程实现186
7.2.3 串口调试精灵的测试201
7.2.4 串口调试精灵的发布203
7.3 实践知识拓展205
7.4 思考与练习206
第8章 串口控制Modem设备207
8.1 Modem接口207
8.1.1 Modem简介207
8.1.2 Modem工作流程209
8.1.3 Modem通信方案209
8.2 AT指令简介210
8.2.1 Modem工作状态210
8.2.2 AT指令集211
8.3 使用Modem实现远程通信214
8.3.1 使用单片机和Modem通信214
8.3.2 使用PC和Modem通信215
8.3.3 MSComm控件的属性和事件216
8.4 实践知识拓展234
8.5 思考与练习235
第9章 计算机和单片机的串口通信236
9.1 串口通信硬件设计236
9.1.1 MCS-51系列单片机的串口原理237
9.1.2 常用的接口芯片介绍238
9.1.3 接口电路设计240
9.2 串口通信参数设置240
9.2.1 波特率设置240
9.2.2 奇偶校验位的使用方法241
9.2.3 通信协议约定242
9.3 系统总体设计242
9.4 单片机的串口编程方法242
9.5 计算机端通信界面设计245
9.6 计算机端程序设计246
9.6.1 头文件引用及变量声明247
9.6.2 控件加载及控件属性设置248
9.6.3 发出读数据请求249
9.6.4 接收数据的处理250
9.6.5 关闭串口258
9.7 实践知识拓展258
9.8 思考与练习259
第10章 计算机和PLC串口通信260
10.1 PLC概述260
10.1.1 PLC的基本结构260
10.1.2 PLC串行接口规范262
10.1.3 通信协议263
10.2 PLC串口通信264
10.2.1 计算机与PLC通信流程264
10.2.2 PLC通信编程264
10.3 实现代码分析269
10.3.1 界面设计270
10.3.2 程序设计核心代码270
10.4 实践知识拓展271
10.5 思考与练习274
第11章 计算机与射频卡通信275
11.1 射频卡概述275
11.1.1 射频卡的工作原理276
11.1.2 射频卡的分类及应用277
11.1.3 典型的射频卡模块277
11.2 射频卡应用设计280
11.2.1 读写器设计280
11.2.2 基于射频卡模块的设计281
11.3 实现代码分析281
11.3.1 界面设计281
11.3.2 程序设计核心代码282
11.4 实践知识拓展284
11.5 思考与练习287
第12章 通过串口控制GPS模块288
12.1 GPS系统的基础知识288
12.1.1 GPS定位原理289
12.1.2 GPS系统290
12.2 GPS模块的性能及使用291
12.2.1 市场主流GPS接收机模块291
12.2.2 U-Blox公司LEA-4H型GPS接收模块292
12.3 NMEA-0183协议295
12.3.1 NMEA-0183协议的定义295
12.3.2 NMEA-0183数据信息295
12.4 串口控制GPS模块的实验296
12.4.1 MSComm控件属性296
12.4.2 添加MSComm控件299
12.4.3 添加串口事件消息处理函数OnComm()299
12.4.4 数据的接收与提取301
12.4.5 实验结果及数据的显示304
12.5 实践知识拓展305
12.6 思考与练习306
第13章 串口控制云台摄像头307
13.1 云台摄像头307
13.1.1 云台简介307
13.1.2 摄像头及控制电路309
13.2 云台控制协议310
13.3 控制程序分析312
13.3.1 添加控件313
13.3.2 设置界面313
13.3.3 主控程序315
13.3.4 初始化320
13.3.5 配置按钮325
13.3.6 通信参数的设置332
13.3.7 云台控制命令336
13.3.8 旋转控制按钮和镜头控制按钮341
13.4 实践知识拓展345
13.5 思考与练习346
第14章 智能报警系统347
14.1 系统描述347
14.2 系统分析与设计348
14.3 关键技术348
14.3.1 建立安防信息数据库348
14.3.2 端口设置和定时读取I/O端口数据348
14.3.3 判断是否有触发事件349
14.3.4 启动并口控制的报警设备350
14.3.5 根据设置拨打报警电话351
14.3.6 安防日志管理351
14.3.7 I/O端口通信352
14.4 实现代码分析353
14.4.1 创建项目353
14.4.2 界面设计与实现354
14.4.3 加入数据库支持360
14.4.4 关键程序类的实现361
14.5 实践知识拓展374
14.6 思考与练习375
第15章 语音自动应答系统376
15.1 功能介绍376
15.1.1 TAPI介绍376
15.1.2 系统功能介绍378
15.2 设计流程实现379
15.2.1 程序设计流程图379
15.2.2 TAPI 3.0方法介绍380
15.2.3 串处理分析介绍381
15.3 具体功能实现382
15.3.1 程序主界面382
15.3.2 参数配置385
15.3.3 选择语音界面387
15.4 实践知识拓展387
15.5 思考与练习390
第16章 USB转RS-232串口实例391
16.1 USB总线技术简介391
16.1.1 USB的特点391
16.1.2 USB的体系结构392
16.1.3 USB的电气特性393
16.1.4 USB的数据通信协议394
16.2 功能描述399
16.3 USB总线转换芯片CH341简介399
16.3.1 CH341异步串口工作方式400
16.3.2 CH341功能配置403
16.4 USB转RS-232桥接器硬件设计404
16.5 驱动程序安装406
16.6 实践知识拓展406
16.7 思考与练习407

教学资源推荐
作者: 王珊珊 臧洌 张志航 编著
作者: Brian W.Kernighan,Dennis M.Ritchie
参考读物推荐
作者: (英)Ayers,D.
作者: [加]丹尼尔·兹布里夫斯基(Danil Zburivsky),[加]琳达·帕特纳(Lynda Partner) 著
作者: [美]埃里克·珍兆科(Eric Jendrock) 里卡多·塞维拉-纳瓦罗(Ricardo Cervera-Navarro) 伊恩·埃文斯(Ian Evans) 金姆·哈泽(Kim Haase) 威廉·马基特(William Markito) 著
作者: Dino Esposito