传统仪器与虚拟仪器中串行通信的实现new

传统仪器与虚拟仪器中串行通信的实现new

ID:34456844

大小:146.60 KB

页数:3页

时间:2019-03-06

传统仪器与虚拟仪器中串行通信的实现new_第1页
传统仪器与虚拟仪器中串行通信的实现new_第2页
传统仪器与虚拟仪器中串行通信的实现new_第3页
资源描述:

《传统仪器与虚拟仪器中串行通信的实现new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、2005年仪表技术与传感器2005第2期InstrumentTechniqueandSensorNo12传统仪器与虚拟仪器中串行通信的实现李诗晗,黄绵华(武汉大学,湖北武汉430072)摘要:调用Win32API函数和使用ActiveX控件MSComm是实现传统仪器与计算机之间的串行通信的常用方法,文中叙述了这两种方法并讨论了在虚拟仪器系统开发中,如何借助其软件平台LabWin2dows/CVI可靠地实现串行通信。关键词:串行通信;Win32API函数;MSComm;虚拟仪器;LabWindows/CVI中图分类号:TP393文献标识码:A文章编号:1

2、002-1841(2005)02-0023-03RealizationofSerialCommunicationinTraditionalInstrumentandVirtualInstrumentLIShi2han,HUANGMian2hua(WuhanUniversity,Wuhan430072,China)Abstract:DescribedtwomethodsthatcallingWin32APIfunctionandusingMSComm.Theywerefrequentlyusedtorealizethese2rialcommunicati

3、onbetweentraditionalinstrumentsandcomputers.ItalsodiscussedhowtouseLabWindows/CVI,avirtualinstrumentsoftwaredevelopmentplatformtorealizetheserialcommunicationreliably.KeyWords:SerialCommunication;Win32APIFunction;MSComm;VirtualInstrument;LabWindows/CVI1引言Windows系统将串口看成和文件一样操作,使用

4、[1]串行通信端口由于其简便、灵活和可靠而被广泛相同的读、写函数。用CreatFile函数打开串口,例地应用于工业控制和自动化仪器仪表中。串行通信如打开端口COM1:方式仍然是虚拟仪器系统中连接采集硬件和上位机Handle=CreateFile“(COM1”,GENERICËREAD1之间的最易实现和最经济的方式,虚拟仪器常用的软GENERICËWRITE,0,NULL,OPENËEXISTING,0,0);件开发平台LabWindows/CVI中提供了专门的函数库各参数意义如下:实现这种串行通信。“COM1”:文件名指针,对串口通讯来说就是2调用Wi

5、n32API函数COM1、COM2等Windows操作系统是通过Win32API函数为应用GENERICËREAD

6、GENERICËWRITE:读写模式常数程序提供编程接口和执行环境的。API函数使用的定0:dwShareMode,设为0表示不共享串口义都是基于C和C++语言的定义方式,但是可以被NULL:设为NULL表示返回的HANDLE不可继承不同语言编写的程序调用,其中与串行通信相关的函POENEXISTING:文件打开方式数大概有20个。利用API函数实现串口通信的软件0:文件属性及相关标志,设置为0表示使用同步流程图如图1所示。的方式实现串行

7、数据传输打开成功后得到一个Handle值,在程序中使用此Handle值进行相关的串口操作。串口通信参数有很多,但是经常会修改的只有几个,如波特率、数据位数、校验位种类、停止位等。所以通常先用GetComm2State函数得到串口的参数结构,修改参数后再用Set2CommState函数设置端口状态。/3取得端口的状态参数并存放在DCB结构类型的变量control中3/GetCommState(Handle,&control);/3修改参数3/control.BaudRate=CBRË9600;control.ByteSize=8;control.Pari

8、ty=NOPARITY;收稿日期:2004-03-23收修改稿日期:2004-10-23control.StopBits=0;©1994-2010ChinaAcademicJournalElectronicPublishingHouse.Allrightsreserved.http://www.cnki.net24InstrumentTechniqueandSensorFeb12005/3设置通信参数3/if(!MSComm1->PortOpen)SetCommState(Handle,&control);{用WriteFile函数向串行端口写入数据,

9、ReadFileMSComm12>CommPort=2;//指定要使用的串函数读取串口中的数据

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。