基于Labview的串口通信软件设计_第1页
基于Labview的串口通信软件设计_第2页
基于Labview的串口通信软件设计_第3页
基于Labview的串口通信软件设计_第4页
基于Labview的串口通信软件设计_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、编号:虚拟仪器课程考核论文基于labview的串口通信软件设计论文作者姓名: XXX 作 者 学 号: 所 在 学 院: 物理与电子学院 所 学 专 业: 测控技术与仪器 导师姓名职称: 高伟 论文完成时间: 基于labview的串口通信软件设计金鹏举(河南大学2011级测控专业)摘要:串口通信因为其简单,灵活易用,在许多领域有着广阔的应用前景。本文在深入介绍串口通信技术的基础上,结合自身的工程实践经验,阐述了 labview 串口编程的技术要点,设计一个适用范围较广、实用性较强的串口通信助手。关键词:串行通信,RS-232,labview,串口Abstract: a serial port

2、communication because of its simple, flexible and easy to use, has a broad application prospect in many fields.In this paper, based on in-depth introduction of serial port communication technology, combined with its own engineering practice experience, this paper expounds the main technical points o

3、f the labview serial port programming, design a wide application scope, practical serial port communication assistant.Keywords: serial communications, RS - 232, labview, serial port1.课题研究背景随着计算机系统的应用和微机网络的发展,通信功能越来越显得重要。这里所说的通信是只计算机与外界的信息交换。因此,通信既包括计算机与计算机之间,也包括计算机和外部设备之间、计算机与单片机之间的信息交换。由于串行通信是在一根传输

4、线上一位一位的传送信息,所用的传输线少,尤其是在数据量比较大的场合下,利用一个主机向各个从机发送控制指令是一个很好的解决方案,在这个过程中,串口通信是实现计算机和外部设备之间、单片机与单片机、计算机与单片机之间通信的关键。2.串口通信的原理 串口通信的硬件投资少,软件编程简单 ,在低速少量数据传输方面的应用极其广泛的应用。尤其使用较多的是RS-485通信协议,因为RS-485的差分电压传输方式能有效的抑制共模干扰,传输距离能达到几百米。串口通信的本质就是两个CPU以规定的通信协议进行数据交换。目前常用的串口协议有RS232通信协议和RS485通信协议。RS232和RS485规定的通信

5、协议是相同的,只是物理层规定的电平不一样。而RS232属于全双工串行异步通信协议,RS485属于半双工串行异步通信协议。在异步通行中有两个比较重要的指标:数据帧格式和波特率。所以串口通信最重要的参数是波特率、起始位、数据位、停止位和奇偶校验。波特率:是一个衡量通信速度的参数,表示每秒钟传送的bit的个数。 RS232规定的数据帧格式为:1位起始位 + 5 8位的数据位 + 可选奇偶校验位 + 1 2位的停止位。起始位:当通信线上没有数据被传送时处于逻辑“1”状态,当发送设备要发送一个数据时,先发送一个逻辑“0”信号,这个低电平就是起始位,起始位通过通信线传向接收设备,接收端检测到这个

6、低电平后,就确认开始接收数据了。起始位的作用是使通信双方在传送数据前协调同步。 数据位:是衡量通信中实际数据位的参数,当计算机发送一个信息包,实际的数据不会是8位的,标准的值是5、7或8位,如何设置取决于要传送的信息。每个包是指一个字节,包括开始/停止位、数据位和奇偶校验位,由于实际数据位取决于通信协议的选取,术语“包”指任何通信的情况。 停止位:用于表示单个包的最后一位。典型的值为1、1.5和2位,它是一个数据的结束标志,接收端接收到停止位后,通信线路上会回复逻辑“1”的状态,知道下一个起始位的到来。 奇偶校验位:在串行通信中一种简单的检错方式,可以选择不采用。

7、常用的有两种校验方式:奇校验和偶校验。对于奇校验,串口会自动设置校验位的高低电平,从而使数据帧中逻辑1出现的个数为奇数。相应的,对于偶校验,串口会自动设置校验位的高低电平,从而使数据帧中逻辑1出现的个数位偶数。3软件设计3.1 软件平台labviewLabVIEW ( Laboratory Virtual Instrument Engineering)是一种基于图形开发、 调试和运行程序的集成化环境, 实现了虚拟仪器的概念,LabVIEW程序称为虚拟仪器程序. 采用图形化的程序语言 ( G语言 )。这种语言不必写程序代码, 看到的是直观明了的流程图语言, 所以编程非常方便。该语言提供了大量的常

8、用控件, 如旋钮、 开关、 按钮、 图形显示等, 可直接使用, 不像 Delphi等高级语言实现一个旋钮需要几十行代码, 因此, Lab VIEW 大大地缩短了软件的研发周期。LabVIEW 能与多种语言通用, 如Matlab , C等, 例如将 Matlab脚本嵌入到 LabVIEW程序, 保证了一些 LabVIEW 所不具备的功能得以实现, 如小波分析、 神经网络等。此外, 通过加亮执行、 单步、 断点和探针帮助用户跟踪经过 VI的数据流, 使 Lab VIEW 的调试直观方便.3.2 软件设计思路在LabVIEW中实现串行通信的方式主要有利用VISA和使用ActiveX控件两种。3.2.

9、1 利用VISA实现串口通信虚拟仪器的软件系统框架包括三个部分:VISA库、仪器驱动程序、应用软件。VISA作为测试程序和数据传输总线的中间层,为应用程序和仪器总线的通信建立了通道2。VISAI/O库为应用程序的建立提供了一致的接口,因而应用程序不需要关心实际的数据传输介质是GPIB电缆还是串口线,可以认为在VISA库中包含了与各种接口进行连接所需的程序。VISA是应用于仪器编程的标准I/O应用程序接口(API),VISA本身并不具有仪器编程能力,VISA是调用低层驱动器的高层API3。使用时需要安装VISA驱动程序。 使用ActiveX控件实现串行通信ActiveX通常翻译为“微软倡导的网络

10、化多媒体对象技术”,实际上它是一整套跨越编程语言的软件开发方法与规范。利用LabVIEW的ActiveX控件容器,可以调用第三方提供的ActiveX控件,从而使程序功能更加强大,节省程序开发时间6。3.3 软件设计过程本次设计利用VISA实现串口通信。首先需要调用VISAConfigureSerialPort完成串口参数的设置,包括串口资源分配、波特率、数据位、停止位、校验位和流控等,如果初始化没有问题,就可以使用这个串口进行数据收发。发送数据使用VISAWrite,如图3所示。接收数据使用VISARead,如图4所示。在接收数据之前需要使用VISABytesatSerialPort查询当前串

11、口接收缓冲区中的数据字节数,如果VISARead要读取的字节数大于缓冲区中的数据字节数,VISARead操作将一直等待,直至Timeout或者缓冲区中的数据字节数达到要求的字节数。当然也可以分批读取接收缓冲区或者只从中读取一定字节的数据。串行通信系统可分为以下 3个模块: ( 1) 端口配置模块: 负责串口的开关、 端口的选择、 波特率、 数据位、 停止位、 校验位的选择等。( 2) 数据发送模块: 负责实现发送数据的处理与数据的多种发送方式, 具有选择手动发送或自动发送、 选择发送数据的类型、 设置自动发送时间间隔、 读取要发送的文本、 清空发送区域等功能。(3) 接收显示模块: 负责实现接

12、收数据的处理与数据的多种显示方式, 具有自动接收和结束接收的功能, 能够保存接收的数据和清空显示区域。程序框图如下:图1:串口通信程序框图程序前面板设计如下:3.4 程序调试由于条件限制,手中没有单片机,所以软件调试使用虚拟串口软件和之前用MFC写的串口调试助手。1. 首先打开虚拟串口,添加虚拟的串口COM1和COM2(虚拟串口添加的端口是相连的)2. 打开串口调试助手和VI程序分别设置为COM1(9600-N-8-1),COM2(9600-N-8-1)4设计总结本次串口通信软件设计首先按照规定的要求实现了如下功能:1. 能与单片机进行RS-232串口通信,能发送和接收。2. 显示通信过程中发

13、送和接收的数据。3. 波特率、数据位、校验位和停止位可调。4. 串口号可选择。利用LabVIEW进行产品开发可以极大地提高开发效率,本文介绍的LabVIEW串口编程,就是一个很好的证明。将LabVIEW软件开发与串口通信结合设计开发数据采集系统和控制硬件设备,不仅能节约大量开发时间和减少硬件成本,还可以为今后的系统升级留有很大空间,同时还使得系统具有很好的可移植性。参考文献:1 李宇华.虚拟仪器开放平台LabVIEW介绍 J.计算机自动测量与控制, 1996, ( 3): 32- 45.2KALKMANCJ.LabVIEW:A soft ware system for data scquisition,data analysis,and instrument control J.Journal of Clinical Monitoring and Computing.2005,11(1):1387-1397. & analog communication systems (7thEd.) M.Macmillan : New York,2007,327-333. 4 杨乐平, 李海涛, 肖相少, 等. LabVIEW 程序设计与应用 M. 北京:电子工业出版社, 2001 . 5 畅国忠. 基于VISA的事件处理方法与实现 J. 测控技术,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论