- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课程论文首页
院、系(部) 电子信息工程系 专业 通信工程 班级 091 学号 姓名 任课教师 课程名称 软件开发技术 论文题目 基于VC++串口通信的设计与实现 成绩 评
语
签字:
年 月 日 复
核
人
意
见
签字:
年 月 日
基于VC++串口通信的设计与实现
中文摘要:通过常用的串口通信进行分析,着重讨论了VC + + 6. 0环境下利用MSComm控件实现串口通信的方法,研究了利用MSComm控件实现串口通信的关键技术问题,给出了MSComm控件在VC + + 6. 0串口通信中的应用。
关键词:VC++ 串口通信 对话框
设计背景
随着当今信息技术的快速发展,通信已成为信息技术中的关键问题。尤其在控制领域,以何种方式实现计算机与外围设备间既简单又可靠的通信,就显得特别重要。由于串行通信具有实现简单、使用灵活方便、数据传输可靠等优点,因而广泛应用于工业控制系统中,是计算机与外部设备进行数据通信时经常使用的方式之一,所以针对计算机与外部设备通信的上位机关于串口通信的开发,在项目开发过程中具有重要地位。
设计原理
串口通信的基本概念
终端与其他设备(例如,其他终端、计算机和外部设备)通过数据传输进行通信。数据传输可以通过两种方式进行,即并行通信和串行通信。
并行通信
在计算机和终端之间的数据传输通常是靠电缆或信道上的电流或电压变化实现的。如果一组数据的各数据位在多条线上同时被传送,这种传输方式称为并行通信
串行通信
串行通信是指通信的发送方和接收方之间数据信息的传输是在单根数据线上,以每次一个二进制的0、1为最小单位逐位进行传输
二者比较:串行通信的速度慢,但使用的传输设备成本低,可利用现有的通信手段和通信设备,适合于计算机的远程通信;并行通信的速度快,但使用的传输设备成本高,适合于近距离的数据传送。
既可以使用一条数据线,也可以使用两条数据线。
全双工模式
全双工数据通信分别由两根可以在两个不同的站点同时发送和接收的传输线进行传送,通信双方都能在同一时刻进行发送和接收操作。
异步传输与同步传输
串行传输中,数据是一位一位按照到达的顺序依次传输的,每位数据的发送和接收都需要时钟来控制。发送端通过发送时钟确定数据位的开始和结束,接收端需要在适当的时间间隔对数据流进行采样来正确地识别数据。接收端和发送端必须保持步调一致,否则就会在传输中出现差错。串行传输可采用以下两种方法:异步传输和同步传输。
异步传输
在异步传输方式中,字符是数据传输单位。在通信的数据流中,字符间异步,字符内部各位间同步。字符可以是连续地、一个个地发送,也可以是不连续地、随机地进行单独发送。在一个字符格式的停止位之后,立即发送下一个字符的起始位,开始一个新的字符的传输,这叫做连续的串行数据发送,即帧与帧之间是连续的。
同步传输
在同步传输方式中,比特块以稳定的比特流的形式传输,数据被封装成更大的传输单位,称为帧。每个帧中含有多个字符代码,而且字符代码与字符代码之间没有间隙以及起始位和停止位。和异步传输相比,数据传输单位的加长容易引起时钟漂移。为了保证接收端能够正确地区分数据流中的每个数据位,收发双方必须通过某种方法建立起同步的时钟。
串口通信的参数介绍
波特率
波特率是一个衡量通信速度的参数。它表示每秒钟传送的“bit”的数目。
数据位
数据位是衡量通信中实际数据位的参数。当计算机发送一个信息包时,实际的数据不一定是8位,标准的值是5、7和8位。
停止位
停止位用于表示单个包的最后一位,典型的值为1、1.5和2,停止位不仅仅是表示传输的结束,也提供计算机校正时钟同步的机会。
奇偶校验位
奇偶校验位在串口通信中时一种简单的检错方式,其有四种检错方式:偶、奇、高和低。串口设置校验位用一个值确保传输的数据有偶数个或奇数个逻辑高位。
设计环境
VC++6.0是Microsoft公司推出的一个基于Windows系统平台、可视化的,它的源程序按C++语言的要求编写,并加入了提供的功能强大的MFC(Microsoft Foundation Class)类库。它提供了大量的代码,指导用户编程时实现某些技术和功能。因此,使用VC++提供的高度可视化的工具和MFC类库,可使应用程序开发变得简单。在VC++中有两种方法可以进行串口通讯。一种是利用Microsoft公司提供的ActiveX控件 Microsoft Communications Control。另一种是直接用VC++访问串口。打开VC++6.0建立基于对话框的MFC应用程序
图1 建立工程和对话框
插入MSComm控件
工程-增加到工程-Co
文档评论(0)