机器人控制_申博亚洲

《Visual C++/Turbo C串口通信编程实践(第2版)》,发行定价65元/本,可以到当地新华书店购买。如果当地购买不方便,我也可以以优惠价格代为购买:

1.北京地区可以直接到北京理工大学求是楼411或418自已拿书。 (9:00-12:00,14:30-21:00点)一般都有人在,若411房间无人,可到418房间找其它人) 路线图:

2.邮购可通过电子工业出版社网上书店、当当网、 华储网、Dearbook第2书店等网站邮购

实例丰富:Windows、DOS及多种单片机串口及网络通信编程

强调编程的快捷省力,多个成熟类代码的详细应用

关注初学者的编程感受:步骤详尽;重视高层次技术人员的探讨精神:多种解决途经

龚建伟技术主页www.gjwtech.com支持及课程支持,应用广泛的串口调试助手V2.2源代码及详细编程步骤

内容简介

本书从编程实践角度详细介绍了PC计算机Windows环境下、DOS环境下以及单片机的串口通信的基本方法,并根据当前串口与网络结合的发展趋势,给出了串口与TCP/IP网络、远程监控相结合的解决方案与详细程序实例。内容丰富、步骤详尽,初学Visual C++/Turbo C的读者也能很快编写出实用的串口通信程序。第二版根据第一版的使用反馈,增加了许多基础内容与应用实例,更易于读者掌握和调试程序。配套光盘中包含了书中实例源程序和相关资料。本书是从事串口及网络通信的工程技术人员和学习者的极佳参考资料,也可以作为数据通信编程课程的辅助教材。

前 言

内容说明

本书从编程实践角度详细介绍了PC计算机Windows环境下、DOS环境下以及单片机的串口通信的基本方法,并根据当前串口与网络结合的发展趋势,给出了串口与TCP/IP网络、远程监控相结合的解决方案与详细程序实例。第二版根据第一版的使用反馈,增加了许多基础内容与应用实例,更易于读者掌握和调试程序。

本书从编程实践的角度详细介绍了Windows环境下和DOS环境下的串口通信的基本方法,并根据当前串口与网络结合发展的趋势,介绍了串口与网络TCP/IP、远程控制与监测相结合的一些解决方案和编程要点。

本书共分三部分,第一部分是编程实例,并在编程过程中介绍了相关基础知识,包括前十章和第13章,从体验轻松的串口编程开始,有了一定的感性知识后,由浅入深地介绍了各种编程方法,并将一些串口通信的基础知识融入其中,使读者不知不觉中掌握了许多基本概念。考虑到当前DOS环境下的串口编程还应用很广,也深入地介绍了DOS环境下Turbo C的编程以及单片机串口通信编程。串口与网络通信总是伴随着数据包的处理和存储,因此本书也介绍了各种协议的数据通信包处理实例。有不少编程知识在Windows和DOS环境下是通用的。串口通信与网络通信相结合是当前串口通信的发展趋势,本书中以具体产品实例介绍了串口网络化的解决方案。单片机串口通信

第二部分为第11章,汇集了常用串行通信的基本概念和规范,介绍了各种接线匹配方法,将第一部分中分散的基础知识进行了总结。

第三部分为第12章!对不占用串口资源的串口数据截获和虚拟串口的编程进行了讨论。

在附录里介绍了Turbo C3.0/2.0的用法,列出了常用的ASCII码表。

配套光盘中包含了书中实例源程序和相关资料。

本书特色

在本书写作中,作者有意识地重点介绍了一些应用简单但功能很强的类,如果读者不想花很多时间了解串口通信的底层,而急于在短时间内完成编程任务,不管在Windows、DOS环境下,还是利用单片机编程,您应用这些类来解决问题无疑是最佳的选择。

本书读者对象为从事串口及网络通信的技术人员和学习者,由于编程步骤详尽,初学VC/C的读者也能很快编写出VC的串口通信程序,同时,本书也可以作为数据通信课程的辅助教材。

最后作者强调一点,数据通信技术无论是串行通信还是网络通信,其本质内容都是类似的:数据处理及用户层的通信协议是一致的,学习过程中经常能做到触类旁通,这一点,我们在通信编程中要注意体会。

本书学习步骤建议

没有接触过Visual C++编程以及初学串口通信编程的读者可按如下步骤学习:

(1) 安装好Visual C++6.0编程环境后,找一本简单的Visual C++ 6.0入门,编写一个简单的对话框程序,理解VC中消息响应概念、类的概念;

(2) 阅读本书第1章,并练习编写第1.2节的例程;

(3) 简单翻阅本书第2.1节,然后练习编写2.2节和程序;

(4) 重点阅读第7章,反复阅读,理解该章所有内容,并仔细编写第7.4节的例程;

然后就可以翻翻第11章,再根据自己工程项目需要把本书当成参考书阅读有关章节。

致谢

除署名作者外,段玉林、齐建永、满益明、冯江辉、杨丽莉、吴双等参与了本书的编写,完成了部分实例程序的编程与测试;

第10.1节介绍的串口无线数据传输模块ZT-TR43得到了深圳市振通科技有限公司http://www.ztten.com.cn的产品与技术支持;

另外,得到了MOXA公司(http://www.moxa.com.cn)的串口联网产品信息和支持,还有Sick激光雷达产品技术支持。

技术问题支持

作者近几年在自己的个人技术主页(http://www.gjwtech.com)中收到很多朋友的问题,部分典型的问题可以在本书中找到答案。欢迎读者到作者个人主页上进行交流。本书作者龚建伟每年均在北京理工大学讲授《VC数据通信编程实践》课程2次,以本书作为参考教材,作者主页有具体时间与地点通知。

 

目 次

第1章轻松体验串口通信编程与调试

1.1初识串口

1.1.1从外观上了解串口

1.1.2 串口通信的发展前景

1.2 自己制作简单的串口线

1.2.1 三线制串口接线的规定

1.2.2 焊接制作自己的串口连接线

1.3 调试串口通信程序时的几种使用串口的技巧

1.3.1 查看计算机串口资源

1.3.2 常规调试-2个物理串口之间的通信

1.3.3 特殊调试-单个物理串口之间的通信

1.3.4 虚拟串口-为计算机添加取之不尽的串口资源

1.4 使用串口调试助手来体验串口通信

1.5体验Windows环境下Visual C++串口通信编程

1.6体验DOS环境下Turbo C串口通信编程

第2章 VC多线程串口编程工具CSerialPort类

2.1 类功能及成员函数介绍

2.2 应用CSerialPort类编制基于对话框的应用程序

2.3 应用CSerialPort类编制基于单文档的应用程序

2.4对CSerialPort类的改进

2.5 在Visual C++.NET中应用CSerialPort类

第3章 控件MSComm串口编程

3.1 MSComm控件详细介绍

3.1.1 VC中应用MSComm控件编程步骤

3.1.2 MSComm控件串行通信处理方式

3.1.3 MSComm 控件的属性说明

3.1.4 MSComm控件错误信息

3.2使用MSComm控件的几个疑难问题

3.2.1使用VARIANT 和SAFEARRAY 数据类型从串口读写数据

3.2.2 MSComm控件能离开对话框独立存在吗?

3.2.3 如何发送接收ASCII值为0和大于128的字符?

3.2.4 在同一程序中用MSComm控件控制多个串口的具体操作方法

3.2.5解决使用控件编程时程序占用的内存会不断增大的问题

3.2.6在没有安装Visual Studio的计算机上如何使用MSComm控件

3.2.7 在MSComm控件串口编程时遇到的其它问题说明

3.3在基于单文档(SDI)程序中应用MSComm控件

3.4应用MSComm控件控制多个串口实例

第4章 Windows API串口编程

4.1 Windows API串口编程概述

4.2 API串口编程中用到的结构及相关概念说明

4.2.1 DCB(Device Control Block)结构

4.2.2超时设置COMMTIMEOUTS结构

4.2.3 OVERLAPPED异步I/O重叠结构

4.2.4 通信错误与通信设备状态

4.2.5 串行通信事件

4.3 Windows API串行通信函数

4.4 Win32 API串口通信编程的一般流程和特殊实例

4.4.1 Win32 API串口通信编程的一般流程

4.4.2 用查询方式读串口

4.4.3同步I/O读写数据

4.4.4 关于流控制的设置问题

4.5 CSerialPort类中的API函数编程应用剖析

4.6 Win32 API串口编程TTY(虚拟终端)实例

4.7 Windows API串口精简例程

第5章 串口调试助手V2.2详细编程

5.1 建立SCOMM程序工程实现界面功能

5.2 串口的初始化及关闭

5.3串口数据的发送与接收及十六进制数据的处理

5.3.1 十六进数据发送处理

5.3.2 手动发送处理

5.3.3自动发送处理

5.3.4 接收处理及十六进制显示

5.4 其它辅助功能的实现

5.4.1 接收数据的文件保存

5.4.2 实现小文件发送

5.4.3 图钉按钮功能使程序能浮在最上层

5.4.4 对话框动画图标的实现

5.4.5 超链接功能的实现

5.4.6 如何打开帮助网页文件

第6章 DOS环境下的Turbo C串口编程及通用实例GSerial类

6.1 PC机异步通信适配器8250及其编程操作

6.1.1 INS8250内部寄存器及其选择方式

6.1.2 波特率设置

6.1.3数据位、奇偶校验、停止位等数据格式设置

6.1.4 查询I/O方式相关设置

6.1.5 中断I/O通信方式相关设置

6.1.6 Modem寄存器

6.2 COMRXTX程序实例

6.3 通用实例程序GSerial类

6.4 用GSerial类控制多串口

6.5 多串口编程PC机高号中断8259A可编程中断控制器的控制

第7章 数据处理方法与串口通信用户层协议的编制

7.1 通信协议的编制

7.1.1 为什么要编制用户通信协议?

7.1.2 串口通信中用户层协议编制原则

7.1.3 在串口通信中几种常用的用户层协议说明

7.2 数制、数据的表示及逻辑运算

7.2.1串口通信编程常用的数制

7.2.2 ASCII文本及其表示方法

7.2.3 逻辑运算与位运算

7.3 数据包校验与常用校验算法

7.3.1 数据校验过程

7.3.2奇偶校验

7.3.3 异或校验

7.3.4 CRC循环冗余码校验

7.4 串口通信数据包处理方法编程实例第8章 单片机串口通信

第8章 单片机串口通信

8.1 单片机串口硬件系统及C51程序开发

8.1.1较典型的单片机硬件系统实例

8.1.2 C51语言及程序简介

8.1.3 开发C51程序的利器Keil C51 uVISION2及串口程序仿真

8.2 C51单片机串口通信程序实例

8.3 AVR单片机串口通信

8.3.1 AVR 单片机简介

8.3.2 CodeVisionAVR编译环境及程序下载

8.3.3 AVR单片机串口通信

8.4 Freescal(Motorola)单片机开发及串口通信实例

8.4.1 Freescal(Motorola)单片机软件集成开发环境和程序下载

8.4.2 Freescal(Motorola) 8位单片机程序烧写专用软件:PROG08SZ-FLASH PROGRAMMER

8.4.3 Freescal(Motorola)单片机串口通信程序实例

第9章 串口与网络结合的解决方案及编程

9.1串口与网络结合的硬件解决方案

9.2典型串口与网络联接的设备介绍

9.2.1 NPort5400系列产品特点说明

9.2.2 NPort5400系列产品的典型应用介绍

9.2.3 NPort5400系列产品的设置与编程测试

9.3与ACCESS数据库结合的串口通信实例

9.3.1电子罗盘数据处理

9.3.2创建ODBC数据源

9.3.3创建工程

9.3.4编写程序

9.4与WinSock结合的串口通信实例

9.4.1 客户端Client应用程序

9.4.2 服务器Server应用程序

9.5 在已经编好的串口通信程序中加入网络通信功能

9.5.1参照MFC AppWizard创建WinSockets程序

9.5.2 利用Windows Sockets API和第三方提供的类进行编程

9.6串口通信用于遥控操作简例

第10章 计算机串口与其它通信协议设备的联接

10.1 串口与其它通信协议模块的调试与设备

10.1.1 Windows超级终端

10.1.2串口通信中的无线数据传输

10.2 计算机与Rabbit 2000嵌入式系统通信编程实例

10.2.1 Rabbit2000微处理器介绍

10.2.2 动态C(Dynamic C)语言介绍

10.2.3某车载无线调度系统实例介绍

10.3 计算机与PLC通信程序实例

10.4 MATLAB环境串口编程通信实例

10.4.1 MATLAB串口类Serial应用

10.4.2通过串口使MATLAB simulink与下位机通讯进行控制

10.4.3 xPC目标环境下串口通信实现

第11章 串口通信基本概念及标准

11.1 串口通信基本概念

11.1.1 串行通信概述

11.1.2 单工、半双工和全双工的定义

11.1.3 同步传送与异步传送

11.1.4串行通信协议

11.2 RS-232-C串口标准

11.2.1  RS-232-C标准

11.2.2 RS-232-C串行通信接线实例

11.3 RS-422/485串口标准

11.3.1 RS-422/485串口通信特点

11.3.2 RS-422与RS-485串行接口标准

11.3.3 RS-422与RS-485的网络安装注意要点

11.3.4  RS-232、RS422、RS485电气参数对比

11.4 串口调试注意事项

11.5 常用数据校验法

11.5.1奇偶校验

11.5.2 循环冗余码校验

11.6 串口连接和TCP/IP连接对比

11.7 现场总线与RS232、RS485的本质区别

11.8 Modem通信技术

11.8.1 Modem的基本工作原理

11.8.2 Modem的功能

11.8.3 Modem的分类

11.8.4 Modem的安装

11.8.5 Modem V.92标准介绍

11.8.6 Modem的速度

11.8.7 modem优化方法

11.8.8 Modem命令/AT命令

第12章 不占用串口的串口数据捕捉

12.1驱动程序的基本概念:VxD与WDM

12.2 VxD示例程序介绍-VToolsD中的CommHook

12.3 串口数据捕捉实例程序

12.4 虚拟串口简介

第13章 串口通信综合应用实例

13.1七自由度机械臂远程控制系统

13.1.1 基于串口通信的单片机系统设计

13.1.2 基于串口与TCP/IP网络的远程控制

13.1.3基于视频网络服务器的远程控制

13.2 基于串口通信的LMS-200激光雷达数据处理

13.2.1 LMS-200激光雷达工作原理

13.2.2激光雷达数据处理软件的开发

13.2.3 软件开发详细步骤

13.2.4 实验测试

13.3 串口通信在PC/104系统中的应用

13.3.1 PC/104简介

13.3.2 基于PC/104的机器人控制系统

13.3.4 下位机程序

13.4 串口在先锋机器人P3-AT中的应用

13.4.1 P3-AT简介

13.4.2 串口通信协议

13.4.3 发送控制代码的简单示例程序

13.4.4 ARIA中串口类的使用