毕业设计(论文)-基于LABview的串口通讯系统设计.doc

上传人:爱问知识人 文档编号:3946792 上传时间:2019-10-10 格式:DOC 页数:48 大小:2.28MB
返回 下载 相关 举报
毕业设计(论文)-基于LABview的串口通讯系统设计.doc_第1页
第1页 / 共48页
毕业设计(论文)-基于LABview的串口通讯系统设计.doc_第2页
第2页 / 共48页
毕业设计(论文)-基于LABview的串口通讯系统设计.doc_第3页
第3页 / 共48页
毕业设计(论文)-基于LABview的串口通讯系统设计.doc_第4页
第4页 / 共48页
毕业设计(论文)-基于LABview的串口通讯系统设计.doc_第5页
第5页 / 共48页
点击查看更多>>
资源描述

《毕业设计(论文)-基于LABview的串口通讯系统设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)-基于LABview的串口通讯系统设计.doc(48页珍藏版)》请在三一文库上搜索。

1、装订线安徽工业大学 毕业设计(论文)说明书摘要虚拟仪器是现代计算机技术同仪器技术深层次结合的全新概念仪器,实质是利用计算机显示器的显示功能模拟传统仪器的控制面板,以多种形式表达输出测量结果,利用计算机强大的软件功能实现信号数据的运算、分析和处理,完成各种测试功能的一种计算机仪器系统。本文介绍了利用LabVIEW语言来实现上、下位机之间通信的方法,并从软、硬件两个方面阐述了设计思想。从实现PC机PC机之间的串口通信出发,先实现双PC机之间的数据发送、返还和接收,进而设计了以PC机作为上位机,以飞思卡尔8位单片机作为下位机的基于labview软件的串口通信系统。经过实验调试,系统达到了预期的通信目

2、标。应用先进的虚拟仪器软件LABVIEW,大大降低了串口通讯复杂程度,减小了软件设计的工作量,能够大大降低投资成本。在实际应用中有巨大的使用价值。关键词: 虚拟仪器;Labview ;串口通信;单片机 Design of the serial communication system Based on LabVIEWAbstract Virtual instrument is the modern computer technology combined with the instrumentation of the new concept of deep-level instruments,

3、 in real terms is the use of analog computer monitors display control panel, traditional instruments, in various forms to express the output measurements, using computer software features to achieve a strong signal Operation data, analysis and processing, to complete a variety of testing capabilitie

4、s of a computer instrument system This article describes the use of LabVIEW to implement the language, the next method of communication between the crew and from the software and hardware are two aspects of the design. PC-PC, from the implementation of serial communication between the departure, the

5、 first to achieve double the data between the PC, send and return, receive, and then designed a PC, as the host computer to Freescale 8-bit microcontroller based on a lower machine LabVIEW software serial communication system. After experimental debugging, the system achieved the desired communicati

6、on goals. The application of advanced virtual instrument software LabVIEW, greatly reduces the complexity of serial communication, reduce the workload of the software design can greatly reduce the investment cost. In practice, there is tremendous value in use.Keywords: virtual instrument; Labview; s

7、erial communication; microcontroller 目录第1章 绪论11.1 课题的背景和意义11.2 虚拟仪器的概念11.2.1 虚拟仪器的特点11.2.2 虚拟仪器和传统仪器的区别21.3 虚拟仪器概述31.3.1 虚拟仪器方案的组成41.3.2 虚拟仪器方案的优势41.4 虚拟仪器的发展与现状51.5 虚拟仪器的应用61.6 课题实现内容6第2章 虚拟仪器与LabVIEW72.1 LabVIEW简介72.2 LabVIEW的基本特点72.3 LabVIEW创建虚拟仪器过程82.4 本章小结9第3章 串行通信103.1 串行通信的概念和特点103.2 串行通信的分类1

8、03.2.1 同步通信113.2.2 异步通信113.2.3 异步通信和同步通信的比较113.3 串行通信的工作模式123.3.1 单工形式:早期的电流环123.3.2 半双工形式:RS-485123.3.3 全双工形式:RS-232133.4 通信参数133.4.1 波特率14 3.4.2 数据位14 3.4.3 停止位14 3.4.4 奇偶校验位143.5 本章小结15第4章 PC与PC串口通信164.1 设计目的和实现方案164.1.1 设计目的164.1.2 实现方案164.2 系统硬件结构164.2.1 RS-232的功能特性描述164.2.2 硬件线路184.3 软件设计194.3

9、.1 VISA简介194.3.3 程序的实现224.4 本章小结25第5章 PC与单片机串口通信265.1 设计目的和实现方案265.1.1 设计目的265.1.2 实现方案265.2 系统硬件结构265.2.1 硬件线路265.2.2 MC9S08AW60 单片机介绍275.3 软件实现295.3.1 上位机PC机LabVIEW串口通讯的实现295.3.2 下位机串行通信程序设计355.4 本章小结37第6章 结论和展望38致谢39参考文献40附录41附录1 图表目录41附录2 单片机程序42共 页 第 43 页第1章 绪论1.1 课题的背景和意义 目前以计算机为上位机和以单片机为下位机的集

10、散式控制系统被广泛的应用于工业检测和控制系统中。由于PC机的分析处理能力强,处理速度快,而单片机价格低廉、体积小、使用灵活方便,所以主机一般采用PC机,而从机则采用单片机。串行通信是一种常用的数据传输方法,虽然它的传输速度慢,但它占用的通信线路少,成本低,在工程的通信方式上仍有重要地位。通过PC机的RS-232串行接口与单片机之间串行通信是主要的通信手段。本文从实现基于labview的PC机PC机之间的串口通信出发,先实现双PC机之间的数据发送和返还、接收,进而设计了以PC机作为上位机,以飞思卡尔8位单片机作为下位机的串口通信系统。1.2 虚拟仪器的概念1.2.1 虚拟仪器的特点虚拟仪器与传统

11、仪器技术不同,虚拟仪器在通用计算机平台上通过数据采集设备,然后根据用户的实际需求就可以构建起不同的系统。所以虚拟仪器实际上是一个按照用户的实际需求组成的数据采集系统1。虚拟仪器采用了通用的硬件,各种仪器的差异主要是软件,它主要使用计算机显示器的显示功能来显示模拟传统仪器的控制面板,这就可以用多种形式输出检测结果,即实用又美观。目前,计算机和仪器的密切结合并且结合的越来越紧密是仪器发展的一个重要方向2。虚拟仪器系统可以归纳为图1.1。图1.1 虚拟仪器系统 具体来说,虚拟仪器有以下特点:(1) 虚拟仪器利用了计算机丰富的软件资源。这样就可以使部分仪器的硬件软件化,增加了系统灵活性,并且节省了资源

12、。另外,计算机还能实时、直接地对测试数据进行各种分析与处理1。(2) 因为虚拟仪器融合了计算机的硬件资源,计算机来直接处理这些应用,这样就大大的增强了传统仪器的功能,突破了传统仪器在数据处理、显示、传输、存储等方面的限制。(3) 虚拟仪器基于计算机总线和模块化仪器的总线,这样就使仪器的硬件实现了模块化,就可以方便地构建模块化的虚拟仪器3。(4) 当今世界的计算机技术和相关的技术发展十分迅速,虚拟仪器也是建立在此基础上的,因此虚拟仪器随着计算机更新的速度快,功能越来与强大4。(5) 由于计算机的体系是开放式的,所以虚拟仪器的硬件和软件都具有开放性、可重复使用的特点。因此,用户可根据自己的需要,选

13、用不同厂家的产品,而且硬件还可以互换,这样就使虚拟仪器系统更为灵活4。1.2.2 虚拟仪器和传统仪器的区别 每一个虚拟仪器都是由软件和硬件两部分够成。但是由于虚拟仪器具很大的灵活性,功能可以通过不同的采集卡和程序改变。因此这种灵活的构建方式大大节约了成本5。传统厂商的仪器都是功能由厂商定义,并且已经预封装好软件和硬件,所以功能比较单一,使用上也没有任何的灵活性。而虚拟仪器系统的功能则完全由用户自己定义,所需要的也仅仅是通用的计算机平台和数据采集卡6。所以,利用虚拟仪器可以创造出高效且功能强大的仪器。通过表1.1我们可以更直观的看出虚拟仪器与传统仪器的区别。表1.1虚拟仪器与传统仪器的区别虚拟仪

14、器传统仪器用户自己定义仪器功能厂家定义各种功能与各种仪器连接简单借口较少,只能与特定仪器连接仪器研发需要时间较短仪器研发需要时间较长仪器压法费用低仪器研发费用较大随着硬件、软件升级,简单容易升级困难重复利用简单重复利用困难存数空间几乎可以无限扩展存储空间有限研发主要是软件设计研发主要是硬件设计1.3 虚拟仪器概述 虚拟仪器(Virtual Insturment,简称VI),即是在以通用计算机(PC)为核心的硬件平台上,由用户设计定义、具有虚拟面板、测试功能由测试软件实现的一种计算机仪器系统。虚拟仪器技术就是利用性能高的模块化硬件,结合灵活高效的软件来完成各种测试、测量和自动化的应用。灵活高效的

15、软件能够开发出完全符合用户的自定义界面,模块化的硬件能方便灵活地提供全面的系统集成,标准的软硬件平台能满足对同步和定时应用的需求。因为同时拥有高效的软件、模块化I/O硬件和用于集成的软硬件平台这三大组成部分,虚拟仪器技术性能高、扩展性强、开发时间少,以及出色的集成这四大优势就能充分发挥出来7。 虚拟仪器是基于计算机的仪器。计算机和仪器的密切结合并且结合的越来越紧密是目前仪器发展的一个重要方向7。粗略地讲计算机与仪器的结合有两种方式:一种是将计算机装入仪器,其典型的例子就是所谓智能化的仪器,像目前的单片机设计。但是仪器的功能较为单一,不具有通用性;另外一种方式就是是将仪器装入计算机,以通用的计算

16、机(PC)硬件及操作系统为依托,实现各种仪器的功能8。虚拟仪器主要是指这种方式。常见的虚拟仪方案如图1.2所示。图1.2 虚拟仪器方案1.3.1 虚拟仪器方案的组成1、 高效的软件。 软件是虚拟仪器技术中最重要的部分。使用正确的软件工具并通过设计或调用特定的程序模块,工程师们可以高效地创建自己的应用以及友好的人机交互界面。NI公司提供的行业标准图形化编程软件LabVIEW,不仅能轻松方便地完成与各种软硬件的连接,更能提供强大的后续数据处理能力,设置数据处理、转换、存储的方式,并将结果显示给用户。此外,NI提供了更多交互式的测量工具和更高层的系统管理软件工具,满足客户对高性能应用的需求。2、 模

17、块化的I/O硬件。 面对如今日益复杂的测试测量应用,NI提供了全方位的软硬件的解决方案。无论用户是使用PCI、PXI、PCMCIA、USB或者是1394总线,NI都能提供相应的模块化的硬件产品,产品种类从数据采集、信号处理、声音和振动测量、视觉、运动、仪器控制、分布式I/O到CAN接口等工业通信,应有尽有。NI高性能的硬件产品结合灵活的开发软件,可以为负责测试和设计工作的工程师们创建完全自定义的测量系统,满足各种独特的应用要求。目前,NI已经达到了每两个工作日推出一款硬件产品的速度,大大拓宽了用户的选择面。3、 用于集成的软硬件平台。 NI首先提出的专为测试任务设计的PXI硬件平台,已经成为当

18、今测试、测量和自动化应用的标准平台,它的开放式构架、灵活性和PC技术的成本优势,为测量和自动化行业带来了一场翻天覆地的变革。由NI发起的PXI系统联盟现已吸引了68家厂商,联盟属下的产品数量也已激增至近千种。1.3.2 虚拟仪器方案的优势 虚拟仪器技术就是利用高性能的模块化硬件,结合高效灵活的软件来完成各种测试、测量和自动化的应用。只有同时拥有高效的软件、模块化I/O硬件和用于集成的软硬件平台这三大组成部分,才能充分发挥虚拟仪器技术性能高、扩展性强、开发时间少以及出色的集成这四大优势。1、性能高 虚拟仪器技术是在现代PC技术的基础上发展起来的,所以完全“继承”了现代PC技术的各种优点,包括高性

19、能的微处理器和文件I/O,使得在数据导入硬盘的同时就能实时地对数据进行复杂的分析处理9。另外,目前最新的计算机技术(如多核、PCI Express等)也在不断的推动虚拟仪器技术的发展,使虚拟仪器的优势更大。2、扩展性强 虚拟仪器具有强大的灵活性,仅仅需更新计算机或者测量的硬件设备,就可以方便的改进整个现有系统。3、开发时间少 在驱动和应用两个层面上,虚拟仪器能把计算机、仪器仪表和通讯方面的最新技术结合在一起。这些新技术在方便用户操作的同时,也提供了高灵活性和强大的功能,轻松地配置、创建、发布、扩展、维护和修改高性能、低成本的测量和控制解决方案10。4、出色的集成度虚拟仪器技术从本质上说是一个集

20、成的软硬件概念。随着产品在功能上不断地趋于复杂,常常需要把多个测量设备集成到一起来满足完整的测试需求,但是连接和集成这些不同设备总是要耗费大量的时间10。NI公司的虚拟仪器软件提供了标准的接口,这样可以帮助用户轻松地将多个测量设备集成到一个系统之中,提高了效率,减少了任务的复杂性11。1.4 虚拟仪器的发展与现状 在虚拟仪器出现之前,传统仪器设备就是普通的模拟测量设备。每一种仪器就是一种完全封闭的专用系统12。如果想存储或者进一步处理数据,就需要人工继续操作。虚拟仪器从最初的概念提出到现在日趋成熟的技术,这些都离不开计算机技术的飞速。简单来说,随着计算机技术的发展,虚拟仪器的发展大致经历了以下

21、几个阶段。 第一阶段是使用计算机增强传统仪器的功能。由于计算机技术的长足发展和接口的统一,计算机和外界通信成为可能,只要把仪器和计算机通过特定的接口相连接,用户就可以通过计算机控制仪器的功能,这使得用计算机控制测控仪器成为一种趋势13。 第二阶段是开放式的通用接口和仪器硬件构成。随着时代的发展,仪器的硬件出现了技术进步:插入式的计算机数据采集卡和仪器总线标准的确立。这些新的技术使仪器的构成和接口得以统一和不断开放,这样就慢慢地消除了原来由用户定义和供应商定义的仪器功能的区别14。 第三阶段,虚拟仪器构架和结构得到了广泛认同和采用。在硬件和软件领域产生许多行业标准,有几个虚拟仪器平台已经得到广泛

22、的应用并有趋势逐渐成为虚拟仪器行业标准。然后用户可以把许多仪器的功能通过软件编写的方式封装起来用虚拟仪器实现14。第四阶段,虚拟仪器编程的行业标准产生了,接口、总线、传输等都有通过统一的标准,虚拟仪器的作者只要把大部分精力放在程序的开发和仪器功能的设计上就可以了,就不需要考虑这些问题15。在以上阶段中,可以看出在虚拟仪器技术发展中有两个特别突出的标志:一个是各种总线标准的建立和应用,它从硬件标准上为虚拟仪器铺平了道路;另一个是图形化编程语言的出现,用户不再面对枯燥的代码,这就使用户把更多的精力放在程序的流程和效率上面。1.5 虚拟仪器的应用1 监控方面用虚拟仪器系统可以随时采集和记录从传感去传

23、来的数据,并对之进行统计、数字滤波、频域分析等处理,从而实现监控功能。2 检测方面在实验室中,利用虚拟仪器开发工具开发专用虚拟仪器系统,可以把一台个人计算机编成一组检测仪器,用于数据/图像采集、控制与模拟。中国农业大学的研究人员利虚拟仪器开发平台开发了用于精密播种机性能检测的实验室自动化系统。3 教育方面现在,随着虚拟仪器系统的广泛应用,越来越多的教学部门也开始用它来建立教学系统,不仅大大节省了开支,而且由于虚拟仪器系统具有灵活、可重用性强等优点,是的教学方法也更加灵活。4 电信方面由于虚拟仪器具有灵活的图形用户接口和强大的检测功能,同时又能与GPIB和VXI一起兼容,因此很多工程师和研究人员

24、都把它用于电信检测和场测试。1.6 课题实现内容 本课题研究基于LabVIEW的串口通信系统。包括PC与PC之间串口通信和PC与单片机之间串口通信两个部分。下文从设计思想及软、硬件设计方面予以介绍。第2章 虚拟仪器与LabVIEW2.1 LabVIEW简介 LabVIEW是实验室虚拟仪器集成环境(Laboratory Virtual Instrument Engineering Workbench)的简称,它是美国国家仪器公司(NATIONAI INSTRUMENTS,简称NI)的创新软件产品。 LabVIEW为用户构造自己的仪器系统提供了完美的解决途径。虚拟仪器通过软件将计算机硬件资源与仪器

25、硬件有机地融合为一个整体,这就把计算机中含有的强大的计算处理能力和仪器硬件的测量、控制能力结合在一起,大大缩小了仪器硬件的成本和体积和开发时间。虚拟仪器随着与计算机的发展而发展,它还与网络及其他周边设备进行互联,我们只需改变软件程序就就可以不断扩展增强虚拟仪器的测量功能,并且这十分简单16。LabVIEW也是一种通用的编程系统,它具有各种各样、功能强大、简单易用的函数库,这些函数库里包含着包括数据采集、网络传输、串行仪器控制、数据分析、数据显示及数据存储等功能。LabVIEW也有完善的仿真、调试工具,如设置断点、单步等,十分方便用户调试。此外LabVIEW有动态连续的跟踪方式,利用此功能可以动

26、态、连续地观察程序中的数据及其变化情况,这比其它语言的开发环境更加方便、更加有效。LabVIEW采用图形化编程语言G语言,它所产生的程序是框图的形式,这种形式易学易用,因为G语言可在很短的时间内掌握并应用到实践中去。图形化的程序设计编程比传统的编程语言简单直观,并且开发效率高。随着虚拟仪器技术的不断发展,这种图形化的编程语言一定会通行的标准17。2.2 LabVIEW的基本特点1 具有良好的图形用户界面。用LabVIEW可以在计算机屏幕上产生出类似于传统仪器的面板,包括按钮、旋钮、开关、图形显示组件、控制组件等等。这些组件都具有高仿真度18。2 比起其它的语言来说编程简单、由于采用图形化的语言

27、G语言,用图形化的方式编写程序。3 具有良好的模块化和层次结构的特点。用LabVIEW编写的VI即可以作为顶层程序使用,还可以作为其它大型程序的子程序进行调用。4 LabVIEW软件中提供功能强大程序调试工具。程序调试工具可以在源代码中可以设置断点,可以单步执行,也可以启动。2.3 LabVIEW创建虚拟仪器过程LabVIEW里包含很多函数库和开发库,其中就有专门用于设计数据采集程序和仪器控制程序的。用LabVIEW进行的程序设计本质上就是设计一个又一个的小“虚拟仪器”,即“vis”。编程时在计算机显示屏幕上能看到各种控件的前面版(Front Panel),十分简洁和传统仪器没有什么区别;但是

28、在后台就是程序框图,这些框图都是利用G语言来编写出来的。由于程序的前面板具有与传统仪器的界面相类似,前面板可以接受鼠标和键盘命令。程序里每一个Vl都可以被其他VI调用,也可以单独使用,不受任何限制。在LabVIEW中创建虚拟仪器的过程主要分为四步:1 建立新VI 启动LabVIEW程序,单机VI按钮,建立一个新VI程序。这是将同时打开LabVIEW的前面板和后面板(框图程序面板)。在前面板中显示控件选板,在后面板中显示函数选板。在两个面板中都显示工具选板。2 创建虚拟仪器的前面板。虚拟仪器的前面板类似于普通仪器的面板,它是图形化的用户界面,用于设置输入数值和观察输出量,是人、机交互的窗口。它有

29、着各种控件:按钮、旋钮、开关、图形显示组件和其它显示显示组件等等。前面板对象按照功能可以分为控制、指示和修饰3种。控制是用户设置和修改VI程序中输入量的接口:指示则用于显示VI程序产生或输出的数据。如果将一个VI程序比作一台仪器的话,那么控制就是仪器的数据输入端口和控制开关,而指示则是仪器的显示窗口,用于显示测量结果。我们通过鼠标和键盘输入数据、点击按钮,就可以在计算机显示器上直接观看结果,十分方便快捷。若想要在数字控制中输入或修改数值,只需要用工具模板的操作工具点击控制部件和增减按钮,或者用操作工具或标签工具双击数值栏进行输入数值修改。3 创建框图程序。在软件前面板窗口的主菜单windows

30、窗口中选择Show Diagram就可以将前面板窗口切换到框图程序窗口,这时我们就会看到与前面板对应的端口和框图。框图程序由节点、端口和连线组成。节点是VI程序中的执行元素,类似于文本编程语言程序中的语句、函数或者子程序。端口是数据在框图程序部分和前面板之间传输的通道接口,以及数据在框图程序的节点之间传输的接口。端口类似于文本程序中的参数和常数。连线是端口间的数据通道,类似于文本程序中的复制语句。数据时单向流动的,从源端口向一个或多个目的端口流动。不同的线型代表不同的数据类型,每种数据类型还以不同的颜色予以强调。根据需要在功能模板中找到所需的节点,并将节点图标放置到框图程序窗口。用数据连线将这

31、些端口和节点的图标连接起来,就形成了一个完整的框图程序。4 运行和调试程序。在LabVIEW中,我们可以通过运行和连续运行这两种方法来运行程序。如果运行时候一个VI程序存在语法错误,那么在面板工具条上的运行按钮将会变成一个折断的箭头,这就表示程序不能被执行需要修改。这时这个按钮就被称作错误列表。点击此按钮,在LabVIEW中就会弹出错误清单的窗口,里面罗列的就是程序中的错误,选用Find功能,那么出错的对象或端口就会变成高亮显示出来。在调试程序时可以利用单步执行、设置断点、设置探针等方法来显示数据流动方向。2.4 本章小结本章对LabVIEW软件进行了介绍,包括软件的发展历程,软件的特点。对L

32、abVIEW创建虚拟仪器过程做了大致的描述。第3章 串行通信3.1 串行通信的概念和特点串行通信是指使用一条数据线(另外需要地线,可能还需要控制线),将数据一位一位地依次传输,每一位数据占据一个固定的时间长度。其只需要少数几条线就可以在系统间交换信息,特别使用于计算机与计算机、计算机与外设之间的远距离通信。使用串口通信时,发送和接收到的每一个字符实际上都是一次一位的传送的,每一位为1或者为0。如图3.1所示。图3.1串行通信串行通信的特点是:数据传送按位顺序进行,最少值只需要一根传输线即可完成,节省传输线。与并行通信相比还有较为显著的优点,传输距离长,可以几米到几千米。在长距离内串行数据传送速

33、率比并行数据传送速率快,串行通信的通信时钟频率容易提高,串行通信的干扰能力十分强,其信号间的互相干扰完全可以忽略。但是串行通信传送速率比并行通信慢很多,并行通信时间为T,则串行时间为NT。 正是由于串行通信的接线少、成本低,因此它在数据采集和控制系统中得到了广泛的应用,产品也多种多样。RS-232的通信距离一般为15米,波仕电子的RS-232可以达到500米以上。3.2 串行通信的分类串行传输中,数据时一位一位按照到达的顺序依次传输的,每位数据的发送的接受都需要时钟来控制,发送端通过发送时钟确定数据位的开始和结束,接受端需要在适当的时间间隔对数据流进行采样来正确的识别数据。接收端和发送端必须保

34、持步调一致,否则数据传输就会出现差错。为了解决以上问题,串行通信可采用以下两种方法:同步通信和异步通信。3.2.1 同步通信同步通信是一种连续串行传送数据的通信方式,一次通信只传送一帧信息。这里的信息帧与异步通信中的字符帧不同,通常含有若干个数据字符。它们均由同步字符、数据字符和校验字符(CRC)组成。其中同步字符位于帧开头,用于确认数据字符的开始。数据字符在同步字符之后,个数没有限制,由所需传输的数据块长度来决定;校验字符有1到2个,用于接收端对接收到的字符序列进行正确性的校验。同步通信的缺点是要求发送时钟和接收时钟保持严格的同步。3.2.2 异步通信串行异步通信即RS232通信,是主机与外

35、部硬件设备的常用通讯方式。可以双向传输。如卫星信号接收版收到的数据传导到计算机处理,主要使用串行异步通信处理。异步通信中,有两个比较重要的指标:字符帧格式和波特率。数据通常以字符或者字节为单位组成字符帧传送。字符帧由发送端逐帧发送,通过传输线被接收设备逐帧接收。发送端和接收端可以由各自的时钟来控制数据的发送和接收,这两个时钟源彼此独立,互不同步。接收端检测到传输线上发送过来的低电平逻辑0(即字符帧起始位)时,确定发送端已开始发送数据,每当接收端收到字符帧中的停止位时,就知道一帧字符已经发送完毕。异步通信中典型的帧格式是:1位起始位,7位(或8位)数据位,1位奇偶校验位,2位停止位。3.2.3

36、异步通信和同步通信的比较(1)异步通信简单,双方时钟可允许一定误差。同步通信较复杂,双方时钟的允许误差较小。(2)异步通信只适用于点对点通信,同步通信可用于点对多通信。(3)通信效率:异步通信低,同步通信高。由于本实验只是完成点对点的通信,异步通信即可满足要求,而且传输的数据量很小,不需要很高的通信效率,异步通信亦可满足,考虑到异步通信的方式线路简单,容易实现,因此本次设计采用异步通信的工作方式。3.3 串行通信的工作模式通过单线传输信息是串行数据通信的基础。数据通常是在两个站(点对点)之间进行传送,按照数据流方向可分成三种传送模式:单工、半双工、全双工。3.3.1 单工形式:早期的电流环单工

37、形式的数据传送是单向的。通信双方中,一方固定是发送端,另一方则固定是接收端,使用一根传输线,如图3.2所示。图3.2单工形式3.3.2 半双工形式:RS-485半双工通信使用同一根传输线,即可发送数据又可接受数据,但不能同时发送和接受。在任何时刻只能由其中的一方发送数据,另一方接受数据。因此半双工形式既可以使用一条数据线,也可以使用两条数据线。如图3.3所示。图3.3半双工形式半双工通信中每个端口都需要有一个收/发切换电子开关,通过切换来决定数据向哪个方向传输。因为有切换,所以会产生时间延迟,信息传输效率较低。但是对于像打印机这样单方向传输的外围设备,用半双工方式就能满足要求了,不用采用全双工

38、方式,可节省一根传输线。波仕电子的RS-232/RS-485转换器使用了独特的零延时自动收发转换技术,直接从RS-485信号中用硬件提取收发转换控制信号,并具备零延时的性能。其中零延时指收发切换过程转变时间为0。在使用时与RS-232通信一样。3.3.3 全双工形式:RS-232全双工数据通信分别由两根可以在两个不同的端点同时发送和接收的传输线进行传送,通信双方都能在同一时刻进行发送和接收操作。如图3.4所示。图3.4全双工形式在全双工形式中,每一端都有发送器和接收器,有两条传送线,可在交互式应用和远程监控系统中使用,信息传输效率较高。鉴于全双工工作模式可以通信双方同时同时发送数据的优势,本次

39、设计采用全双工的工作模式。 3.4 通信参数串行端口的通信方式是将字节拆分成一个接着一个的位再传送出去。接到此信号的一方在将此一个一个的位组合成原来的字节,如此形成一个字节的完整传送。在传输进行的过程中,双方明确传送的具体方式,否则双方就没有一套共同的译码方式,从而无法了解对方所传过来的信息的意义。因此双方为了进行通信,必须遵守一定的通信规则,这个共同的规则就是通信端口的初始化。通信端口的初始化必须对以下参数进行设置。3.4.1 波特率这是一个衡量通信速度的参数。它表示每秒钟传送的bit的个数。例如300波特表示每秒钟发送300个bit。当我们提到时钟周期时,我们就是指波特率例如如果协议需要4

40、800波特率,那么时钟是4800Hz。这意味着串口通信在数据线上的采样率为4800Hz。通常电话线的波特率为14400,28800和36600。波特率可以远远大于这些值,但是波特率和距离成反比。高波特率常常用于放置的很近的仪器间的通信,典型的例子就是GPIB设备的通信。3.4.2 数据位这是衡量通信中实际数据位的参数。当计算机发送一个信息包,实际的数据不会是8位的,标准的值是5、7和8位。如何设置取决于你想传送的信息。比如,标准的ASCII码是0127(7位)。扩展的ASCII码是0255(8位)。如果数据使用简单的文本(标准 ASCII码),那么每个数据包使用7位数据。每个包是指一个字节,包

41、括开始/停止位,数据位和奇偶校验位。由于实际数据位取决于通信协议的选取,术语“包”指任何通信的情况。3.4.3 停止位用于表示单个包的最后一位。典型的值为1,1.5和2位。由于数据是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中两台设备间出现了小小的不同步。因此停止位不仅仅是表示传输的结束,并且提供计算机校正时钟同步的机会。适用于停止位的位数越多,不同时钟同步的容忍程度越大,但是数据传输率同时也越慢。 3.4.4 奇偶校验位在串口通信中一种简单的检错方式。有四种检错方式:偶、奇、高和低。当然没有校验位也是可以的。对于偶和奇校验的情况,串口会设置校验位(数据位后面的一位),用一个

42、值确保传输的数据有偶个或者奇个逻辑高位。例如,如果数据是011,那么对于偶校验,校验位为0,保证逻辑高的位数是偶数个。如果是奇校验,校验位位1,这样就有3个逻辑高位。高位和低位不真正的检查数据,简单置位逻辑高或者逻辑低校验。这样使得接收设备能够知道一个位的状态,有机会判断是否有噪声干扰了通信或者是否传输和接收数据是否不同步。3.5 本章小结 本章介绍了串行通信传输距离长,接线少,成本低的特点。串行通信分为同步通信、异步通信两种方式。工作模式分为单工、半双工和全双工。考虑到本次设计的要求,这里选择全双工异步通信的工作方式来实现。最后,介绍了串口初始化需要设置的通信参数。第4章 PC与PC串口通信

43、4.1 设计目的和实现方案4.1.1 设计目的利用PC的串口进行数据通讯在当今的通信领域中占有着重要的地位,用RS-232串行口直接对接两台机器,以此来实现通信、数据和文件传输。采用串行端口连接双机进行数据传输,是通信和数据传输的一种简单易行的好方法。而采用图形化界面的Labview软件编写通信程序,可以大大的简化编程的复杂程度,在生产和生活中具有使用重大的应用价值。4.1.2 实现方案 两台计算机进行通信,一台通过串口发送数据,另一台计算机接收发送来的数据,并返还数据。两台计算机之间利用一条串口数据线连接起来。当两台串口设备通信距离较近时,可以直接连接,最简单的情况,在通信中只需要三根线(发

44、送线、接收线、信号地线)便可实现双全工异步串行通信。4.2 系统硬件结构4.2.1 RS-232的功能特性描述 通常RS-232接口以9个引脚(DB-9)或是25个引脚(DB-25)的型态出现,一般个人计算机上会有两组RS-232接口,分别称为COM1和COM2。RS-232标准规定的数据传输速率为每秒150、300、600、1200、2400、4800、9600、19200波特。 RS-232标准规定,驱动器允许有2500pF的电容负载,通信距离将受此电容限制,例如,采用150pF/m的通信电缆时,最大通信距离为15m;若每米电缆的电容量减小,通信距离可以增加。传输距离短的另一原因是RS-2

45、32属单端信号传送,存在共地噪声和不能抑制共模干扰等问题,因此一般用于20m以内的通信。 EIA-RS-232C对电器特性、逻辑电平和各种信号线功能都作了规定。(1)在TxD和RxD上: 逻辑1(MARK)=-3V-15V 逻辑0(SPACE)=+3+15V(2)在RTS、CTS、DSR、DTR和DCD等控制线上: 信号有效(接通,ON状态,正电压)=+3V+15V 信号无效(断开,OFF状态,负电压) =-3V-15V 以上规定说明了RS-323C标准对逻辑电平的定义。对于数据(信息码):逻辑“1”(传号)的电平低于-3V,逻辑“0”(空号)的电平高于+3V;对于控制信号;接通状态(ON)即信

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1