当前位置:文档之家› labview与单片机串口通信

labview与单片机串口通信

labview与单片机串口通信
labview与单片机串口通信

串口,VISA和MSComm控件,与单片机通信

visa编写串口程序时是不是必须要安装MSComm控件?

首先是labview有自带的串口资源,即visa控件,不需要安装MSComm控件。MSComm控件也可以被labview调用来实现对串口的编程。

但是,visa控件的图标在安装labview之后虽然在控件库里可以显示但是不能用,必须安装visa 驱动,这个驱动可以在官网下载。

win7 winvista的系统和低版本的labview最好安装最新的visa驱动,不然可能会出现错误。

其次我用labview做的上位机,但是用的笔记本没有串口,这时候,用一条 usb转串口线(安装合适的驱动)直接虚拟串口,visa可以对这个虚拟串口操作。

最后,labview和单片机通信,由于labview的visa控件只可对字符写出或者读上来的显示为ascii字符,而单片机的通信协议的命令帧和数据帧可能是由十六进制定义的,

最开始的想法是,将输入数值型数据(十进制的)转成为十六进制数,再将此十六进制转为相对应的ascii码(网上也有相应的labview函数),最后将ascii码下传给单片机;

一个简单的办法:

---------------------字符型的数据(输入字符串,输出字符串,常量字符等等)的属性里有一个选项,将显示样式由正常改为十六进制显示即可,这时就可以直接输入十六进制了。

以下使用NI-VISA与USB设备eZ430-RF2500进行通信,是在使用LabVIEW2010和NI-VISA503full的开发环境通过的。

1、USB与VISA背景

VISA是一个高级API用来与仪器控制总线进行通信。它是平台独立、总线独立、环境独立的。USB是一个基于消息的通信总线。这意味着PC和USB设备通过在总线上以文本或二进制数据格式发送指令和数据进行通信。每个USB设备都有自己的指令集。可以使用NI-VISA读函数与写函数,将这些指令发送到仪器上,并从这些仪器上读取响应。

从NI-VISA 3.0版本开始支持USB通信。能够支持两个等级的VISA资源:USB INSTR和USB RAW。

遵守USB测试与测量类别(USBTMC)协议的USB设备使用USB INSTR资源类别。USBTMC设备遵守VISA USB INSTR资源类别能够理解的协议。如果要与USBTMC设备进行通信,则没有必要进行设置。要

与USBTMC设备进行通信、

USB RAW仪器是所有不能完全符合USBTMC规范的仪器。我们所使用的eZ430-RF2500开发套件就是属于这一类的,现在着重讲述配置NI-VISA以便控制eZ430-RF2500。

2、配置NI-VISA控制您的USB设备

在基于Win7的计算机上,将USB RAW设备配置为能够被NI-VISA所控制的设备所要进行的步骤如下。首先,要将NI-VISA安装在计算机上,此时USB设备尚未连接到计算机。此外,USB设备驱动程序还没有安装。配置USB设备使用NI-VISA有三个步骤:1使用驱动程序开发向导创建INF文件;2使用INF文件安装INF文件和USB设备;3使用NI-VISA交互式控制测试设备。

本文讲述了使用eZ430-RF2500作为USB设备实例,操作系统为Win7系统,上传的INF文件只适合在Win7下使用。

2.1. 使用驱动程序开发向导创建INF文件

要使用NI-VISA,您必须首先让Windows使用NI-VISA作为这个设备的默认驱动程序。在Windows环境中,您可以使用INF文件完成这点。NI-VISA 3.0或更高版本包含了VISA驱动程序开发向导(DDW),可以为您的USB设备创建INF文件。

1、打开DDW,选择开始》程序》National Instruments》VISA》VISA驱动程序开发员向导。图1显示了打开的屏幕。

图1:VISA DDW硬件总线窗口

选择USB并点击下一步。VISA DDW基本设备信息窗口打开,如图2所示。

图2:VISA DDW基本设备信息窗口

2、使用的VISA比较新的可以在这个步骤中直接自动得到eZ430-RF2500中USB仪器所使用的USB厂商ID(VID)和产品ID(PID)。这些数字在您安装的时候能够识别USB设备,在您希望进行通信的时候,可以对设备进行寻址。根据USB规范,所有数字必须是16位的十六进制数字。点击下一步。输出文件属性窗口如图3所示。

图3:VISA DDW输出文件属性窗口

3、USB仪器前缀只是用来识别这个设备所使用文件的描述符。输入USB仪器前缀,选择需要存放文件的目标文件夹,点击下一步。下一个窗口将提供您安装选项。默认的选择是为操作系统安装设置信息,也通常是最佳选项。在您选择了一个选项之后,点击完成退出向导。INF文件已经在您在前一个窗口中输入的输出文件位置中指定的文件夹中生成了。

2.2. 安装INF文件和USB设备

INF文件的安装对于每个版本的Windows而言都是不同的。在DDW创建了INF文件之后,安装指令就已经包括在INF文件的头部了。由于INF文件是ASCII文本文件,它们可以在记事本等任何文本编辑器中查看。要获得关于安装INF文件的具体信息,可以在文本编辑器中打开INF文件,按照文件头部的指令完成。本文使用的是Win7操作系统,在最后DDW的最后一步可以为你安装。

2.3. 使用VISA交互式控制测试通信

1、打开测量与自动化浏览器(MAX)。选择工具》刷新更新视图。您的USB设备应该已经作为USB设备列在如图4所示的设备与接口中。您的USB设备现在已经完成安装,并配置为用于NI-VISA使用。

如果您选择了USB设备,设备信息将被显示在USB设置窗口中。使用这个窗口,您可以访问例如制造商ID、型号代码和设备序列号的信息。

图4:在MAX中显示的USB设备

2、要使用VISA与您的设备通信,使用您设备的VISA仪器描述符。USB INSTR设备的仪器描述符格式是USB[board]::制造商ID::型号代码::序列号[::USB接口编号]::INSTR。USB RAW设备的仪器描述符格式是USB[board]::制造商ID::型号代码::序列号[::USB接口编号]::RAW。

要测试与这个设备的通信,打开MAX。选择工具》NI-VISA》VISA交互式控制。如图5所示的窗口将被

打开。

图5:VISA交互式控制

做了那么多准备后,就可以使用LabVIEW读取eZ430-RF2500中eZ430-RF2500 Wireless Sensor Monitor (IAR Source) v1.02例程中的数据了,结果如图6所示。

图6:LabVIEW USB RAW-块数据

LabVIEW与单片机通讯

LabVIEW单片机通讯 1.串口扩展的问题: 先说一下串口的扩展问题,一般的台式机或工控机上都至少有二个串口,一般都是够用的,但是现在市场上已经很难找到带串口的笔记本了,而有时候在外出调试时需要在笔记本中使用到串口的,这时一般是使用USB-RS232的转接线,价格从十几到一百多都有,很多朋友反应在使用价格低的转接线时会出现乱七八糟的问题,而贵一点的线就很少听说有其它问题的,所以大家在使用便宜的USB-RS232转接线时要特别注意线的质量,遇到一些奇怪的问题时先考虑换一根好一点的线。PCI-RS232扩展卡也同理,便宜的卡也容易出问题,尽量买好一点的,以免因小失大。PCI-RS232一般至少能扩展2个串口,有些BT一点的可以扩展到8-16个,一堆线和接头。转接线和扩展卡一般是要装驱动的。 2.串口功能的确认: 在使用串口之前,最好先确认一下串口是否正常,特别是使用转换接或扩展卡的。检查的方法很简单,就是将串口的2、3脚短接起来,3脚是发送数据,2脚接收数据,就是这个串口自发自收。电脑上的串口软件一般是用串口调试助手,很出名的,也好用。如下图所示:图1 串口调试助手 打开软件,选择已经短接好的串口号,点击“手动发送”,如果串口是好的,2、3脚又短接起来了,马上就可以在上面的接收框里看到接收的数据就是发送的数据。稍微要注意一下的是有些电脑的COM1和COM2的位置是反过来的,所以要确定好串口调试助手左上角的串口上择的是已经短接的那一个,如果COM1没接收到,可以再先COM2再发一次看一下。 3.串口线的检查: 检查好串口后,一般也要注意一下使用的串口线,标准的串口线是9根线都是用上的,但有一些是只使用了三根线的:2、3、5。第3个脚管是发送,第2个管脚接收,另一个5是地线,这里叫它简化的串口线,简化的串口线能用上的地方,标准的串口线也肯定能用上,因为标准线的9根线已经包括了简化串口线中的3根线,但标准串口线能用上的地方,简化串口线就不一定能用上,所以在使用串口线之间一定要确定好串口线的类型,一般买的串口线都是标准线,但自制的串口线因为应用场合不同就要先确定一下。 G串口线还有一个地方需要注意一下的,就是2、3脚的接法,标准接法中是2、3脚交叉的,即这边的2接另一边的3,这边的3接另一边的2,扭了一下,所以叫交叉线,因为正常使用时,这边第二脚是发送数据,另一边第三脚是接收数据,所以要将这二个管脚连接起来,这样才能正常使用。但是有些情况下,2、3是直连的,即这边的第2脚连接另一边的第2脚,第3脚连接第3脚,这种叫直连线,这种线一般是用于延长串口的,比如需要将工控机的串口接头引到机柜表面上时,就使用这种线,这样机柜表面的串口线的定义还是跟电脑接出来的一样,外面的那一根串口线再使用交叉线。从电脑主板上将串口引到主机后面板上的线就是这样的直连线。购买串口线的时候一般也会问你买直连的还是交叉的,要区别对待。 串口线还有一个要稍微注意一下的就是DB头,因为电脑上接出来的一般是公头(针),要跟电脑接的话要母头(孔),一般仪器的串口也是公头,所以二边都是母头的串口线比较常见。串口的接头一般是DB9的,也有DB25的,但比较少用,有些比较BT的仪器厂家居然用RJ11(水晶头那种)作为串口头,让人不爽! 总之,使用串口前一定要先确定好硬件没问题,不然很浪费时间的。 4.串口参数设置: 在LabVIEW中使用串口时,有几个参数比较重要,需要先说明一下的。一个是串口初始化这个节点的“终止符”和“禁用终止符?”这二个输入端,这二个输入端是相互作用的,“终止符”默认值为10,它的十六进制是“0x0A”,这是一个ASCII码,是一个换行符,可以从LabVIEW中的字符串的不同显示形式看出来,如下图:

基于LabVIEW的单片机脉冲发生器

基于LabVIEW的单片机脉冲发生器 类别:单片机/DSP 阅读:1583 1 引言 由于各种人群的皮肤阻抗的动态范围不一样,甚至同个人在不同的时间、不同的环境下皮肤阻抗的动态范围也不一样。因此,在皮肤阻抗检测系统中,刺激器需要根据不同的人群以及不同的环境,产生不同频率、不同脉宽的刺激信号,才能保证检测系统可以测量到人体皮肤的真实阻抗。 MCS-51单片机系统有3个定时器可以产生方波,而且方波的脉冲频率及宽度可以由软件设定,这种产生脉冲的方式具有很大的灵活性。上位机软件LabVI EW同下位机通信时,将下位机所要产生的脉冲的参数通过串口传给下位机,以便实现利用LabVIEW控制单片机产生所需脉冲的目的。 2 下位机系统的设计 2.1 硬件部分 MCS-51单片机内部有一个功能很强的全双工串行口,该串行口有4种工作方式。片内的定时器/计数器可以产生波特率,大小可用软件设置。有2个物理上独立的接收、发送缓冲器SBUF,接收、发送均可触发中断系统,使用十分方便。对外也有两条独立的收、发信号线RXD(P3.0)和TXD(P3.1)。 本文采用RS 232串行接口标准,在电气特性上,RS232采用负逻辑,要求高低两信号间有较大的幅度,标准为:逻辑“1”在-5~-15 V之间,逻辑“0”在+5~+15 V之间。 2.2 软件部分 MCS-51的定时器0进行两次计数。设P1.0为脉冲发生端,当定时器0的第一次计数结束后,将P1.0取反,赋新的初值,再进行第二次计数。当第二次计数结束后,再一次将P1.0取反,又赋原来的初值,进行新一轮的计数,如此反复即可产生方波。这样通过两次计数值的不同就可以实现产生不同脉宽及频率的方波了。 图1,图2和图3给出了单片机程序的详细流程图。其中定时器1工作在方式2,这是一种自动重装方式,禁止中断,用于产生波特率(该波特率设置为9 6 00)。串口工作在方式1,发送或接受一帧信息为10位,1位起始位(0),8位数据位和1位停止位(1),无奇偶校验位。程序还设定串口中断优先级高于定时器0的中断优先级。 在通信前,上下位机一般会约定一个协议,例如在发送的数据前加一个标识段,一般为一个字节。当该字节传输正确后,下位机才可以认为上位机准备发送数据段。这样可以避免串口偶尔产生的误发信号。 程序设定4个字节为一个数据段,是因为上位机一次性要发完包括高低电平在内的两次定时器的初始值,而每一个初始值都有两个字节。因此下位机判断一

Labview串口通信开发实例(值得拥有)

串口通信的基本概念 串口通信的基本概念 1,什么是串口? 2,什么是RS-232? 3,什么是RS-422? 4,什么是RS-485? 5,什么是握手? 1,什么是串口? 串口是计算机上一种非常通用设备通信的协议(不要与通用串行总线Universal Serial Bus或者USB混淆)。大多数计算机包含两个基于RS232的串口。串口同时也是仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带有RS-232口。同时,串口通信协议也可以用于获取远程采集设备的数据。 串口通信的概念非常简单,串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。比如IEEE488定义并行通行状态时,规定设备线总常不得超过20米,并且任意两个设备间的长度不得超过2米; 而对于串口而言,长度可达1200米。

典型地,串口用于ASCII码字符的传输。通信使用3根线完成:(1)地线,(2)发送,(3)接收。由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据。其他线用于握手,但是不是必须的。串口通信最重要的参数是波特率、数据位、停止位和奇偶校验。对于两个进行通行的端口,这些参 数必须匹配: a,波特率:这是一个衡量通信速度的参数。它表示每秒钟传送的bit的个数。例如300波特表示每秒钟发送300个bit。当我们提到时钟周期时,我们就是指波特率例如如果协议需要4800波特率,那么时钟是4800Hz。这意味着串口通信在数据线上的采样率为4800Hz。通常电话线的波特率为14400,28800和36600。波特率可以远远大于这些值,但是波特率和距离成反比。高波特率常常用于放置的很近的仪器间的通信,典型的例子就是GPIB 设备的通信。 b,数据位:这是衡量通信中实际数据位的参数。当计算机发送一个信息包,实际的数据不会是8位的,标准的值是5、7和8位。如何设置取决于你想传送的信息。比如,标准的ASCII码是0~127(7位)。扩展的ASCII码是0~255(8位)。如果数据使用简单的文本(标准 ASCII码),那么每个数据包使用7位数据。每个包是指一个字节,包括开始/停止位,数据位和奇偶校验位。由于实际数据位取决于通信协议的选取,术语“包”指任何通信 的情况。

基于LabVIEW和单片机的串行无线遥控系统设计_高顺凯

总第206期2011年第8期 舰船电子工程 Ship Electr onic Engineering V o l.31No.8 187 基于LabVIEW和单片机的串行无线遥控系统设计* 高顺凯1)杨国志2) (海装武汉局1)武汉430064)(海军工程大学2)武汉430033) 摘要文章基于L abV IEW与单片机的串口通讯,进而通过单片机实时控制无线电发射系统,设计了无线遥控系统。介绍了虚拟仪器技术在串口通讯中的应用,提出了具体方案并给出了串口硬件连接图和发射系统原理图,最后使用G语言LabV IEW和C语言分别开发了相应的上位机和下位机程序进行实验。实验结果表明,该系统具有良好的人机界面,而且便于进行维护和功能扩充,具有很强的实用性。 关键词无线遥控;L abVI EW;单片机 中图分类号T P274 Wire less Rem o te Contr ol System Design B ase d on Lab VI E W an d SCM G a o Shunkai1)Y ang G uozhi2) (Wuhan M ilitary Representative Bur eau of Nav y Equipment Depar tment1),W uhan430064) (N aval U niversity o f Eng ineer ing2),W uhan430033) A bstract A wireless remo te contro l system w as desig ned based o n the ser ial communicat ion of L abV IEW and Supply Chain M anagement(SCM),then t hr ough SCM contro l radio tr ansmitt er sy st em rea-l time.V ir tual inst rument technolog y ap-plication in serial communication w as intro duced,the specific pro gr am w as put forw ard and the diag ram of ser ial hardw are co nnectio n and launch system schematics w as g iv en,and finally using the G language L abVI EW and C lang uage dev elo p the co rr esponding upper and lo wer machine to make ex periment.T he results show that the sy stem has a go od inter face,and ease of maintenance and function expansion,w ith stro ng practical. Key Words w ir eless r emote contr ol,L abV IEW,SCM Class Nu mber T P274 1引言 虚拟仪器软件LabVIEW是美国NI公司(N a-tional Instruments Co.Ld.)研制的一种叫G语言的图形化程序设计语言[1]。它基于高效率图形化应用开发环境,将简单易用的图形化开发方式和灵活强大的编程语言优势结合起来。LabVIEW的程序称为VI,它包括三个部分:程序前面板、框图程序和图标/连接器[2]。 程序前面板用于设置输入数值和观察输出量,用于模拟真实仪表的前面板。每一个程序前面板都对应着一段框图程序。框图程序用LabVIEW 图形编程语言编写,可以把它理解成传统程序的源代码。框图程序由端口、节点、图框和连线构成。其中端口被用来同程序前面板的控制和显示传递数据,节点被用来实现函数和功能调用,图框被用来实现结构化程序控制命令,而连线代表程序执行过程中的数据流,定义了框图内的数据流动方向。图标/连接器是子V I被其它VI调用的接口。图标是子VI在其他程序框图中被调用的节点表现形式;而连接器则表示节点数据的输入/输出口,就像函数的参数。用户必须指定连接器端口与前面板的控制和显示相互对应。LabVIEW的VI是层次化和模块化的,可以作为其他程序的子程序,被其 *收稿日期:2011年2月21日,修回日期:2011年3月23日作者简介:高顺凯,男,工程师,研究方向:舰船总体设计研究。

labview串口属性节点帮助

长名称 说明 Serial Settings:Parity 指定传输或接收每一帧所使用的奇偶校验。有效值 为:(0)无校验(1)奇校验(2)偶校验(3)标记校验(4)空校验。标记表示存在奇偶位且为1。空表示存在奇 偶位且为0。 详细信息 Serial Settings:Number of Bytes at Serial Port 返回会话句柄使用的串口上当前可用的字节数。 详细信息 Serial Settings:Data Bits 指定每一帧使用的数据位数。有效值为5-8。 详细信息 Serial Settings:Modem Line Settings:Line DCD State 指定数据载波检测(DCD)输入信号的当前状态。调制 解调器使用该属性表明在电话线上检测到载波(调制解调器)。也被称为接收线信号检测(RLSD)。该属性为只读,除非Wire Mode 属性为RS232/DCE 或 RS232/AUTO ,且硬件的当前状态为DCE 。 详细信息 Serial Settings:Modem Line Settings:Break State 设置串口中断状态的手动控制。如属性被置有效, 它将挂起字符传输并将传输线置于中断状态,直至 属性被置无效。 如需VISA 在每个写操作后自动发送中断信号,可用Break Length(Break Len)和End Mode for Writes(ASRL End Out) 属性。默认值为 Unasserted 。 详细信息 Serial Settings:Error Replacement Character 指定字符,用于替换带有错误(例如,奇偶校验错误)的输入字符。默认值为0。 详细信息 Serial Settings:Wire Mode 指定当前的连线/转发器模式。对于RS485硬件,该 属性仅对NI 开发的RS485串行驱动程序有效。对于 RS232硬件,值RS232/DCE 和RS232/AUTO 仅对NI 开发的RS232串行驱动程序有效,相应的NI 硬件中 也支持该功能。不支持该功能 时,RS232/DTE 是唯 一有效的值。 详细信息 Serial Settings:Discard NUL Characters 指定是否忽略值为0的数据字节。如属性为TRUE , 读取操作将忽略NUL 字符。如该属性为FALSE ,读取操作将NUL 字符视为正常字符。对于二进制传递,应将该属性设置为FALSE 。默认值为FALSE 。 详细信息 Serial Settings:Stop Bits 指定用于表示帧结束的停止位的数量。有效值为:(10)停止1,(15)停止1.5,(20)停止2。 详细信息 Serial Settings:Flow Control 指定传输和接收数据使用的流控制方法。有效值是: (0)无流控制,(1)XON/XOFF 流控制, (2)RTS/CTS 流控制,(3)XON/XOFF 和RTS/CTS 流控制, (4)DTR/DSR 流控制,(5)XON/XOFF 和DTR/DSR 流控 制。某些值或组合值只适用于特定的串行端口和/或 操作系统。 详细信息 Message Based 指定是否在出现END 条件时终止读取操作。属性仅

Labview串口

先是英文资料,后面有详细的中文资料。 https://www.doczj.com/doc/ef5305775.html,/devzone/cda/tut/p/id/2897 Serial Instrument Control Tutorial 目录 1.Overview of Serial Bus 2.Connecting and Setting up a Serial Instrument Control System 3.How to Create a VISA Resource for the Instrument in MAX 4.Instrument Control Software Articles and Related Links Overview of Serial Bus Serial is a common device communication protocol for instrument control because most computers and many remote instruments include at least one serial port. Single applications can be used across a variety of instruments with few modifications, reducing programming and test time. For more information on the serial protocol, including information on transfer speeds and important parameters, please refer to Serial Communication Overview. Connecting and Setting up a Serial Instrument Control System

LabVIEW串口通信详解

目录 1.串口扩展的问题: (2) 2.串口功能的确认: (2) 3.串口线的检查: (3) 4.串口参数设置: (4) 5.在LabVIEW中使用串口 (5) 5.2被动接收类型 (6) 6.串口数据类型的转换 (9) 6.1LabVIEW从串口接收数据 (9) ① (9) ② (10) 6.2使用LabVIEW发送数据 (10) ① (10) ② (10) 7.串口问题汇总: (11) 7.1串口资源被占用: (11)

LabVIEW串口通信详解 LabVIEW串口通信详解 串口可以说是我们最容易见到,也最容易接触到的一种总线,台式机上一般都有二个,而现在很多下位机、仪器等很多都还是使用串口通信的。论坛上很多朋友都经常会使用到串口,并遇到一些问题,这里有必要做一个详细的说明,以方便广大会员朋友,文章请勿转载到其它地方,谢谢。 论坛上早先发布过一个贴子,叫《串口WORD资料》,里面有一些中英文的串口的资料,这个文章是对那个资料的补充,如果是初接触串口的朋友建议先看一下上一个贴子先。上一个贴子中提到过的内容这里不再进行补充。 首先补充一个比较重要的问题,就是在LabVIEW中使用串口的话一定要先安装VISA 这个驱动,然后生成的EXE运行时也需要在目标机上安装VISA Runtime Engine,可以在打包时一起打包。 VISA的驱动可以在NI网站上下载到: https://www.doczj.com/doc/ef5305775.html,/nidu/cds/view/p/id/1605/lang/zhs 1.串口扩展的问题: 先说一下串口的扩展问题,一般的台式机或工控机上都至少有二个串口,一般都是够用的,但是现在市场上已经很难找到带串口的笔记本了,而有时候在外出调试时需要在笔记本中使用到串口的,这时一般是使用USB-RS232的转接线,价格从十几到一百多都有,很多朋友反应在使用价格低的转接线时会出现乱七八糟的问题,而贵一点的线就很少听说有其它问题的,所以大家在使用便宜的USB-RS232转接线时要特别注意线的质量,遇到一些奇怪的问题时先考虑换一根好一点的线。PCI-RS232扩展卡也同理,便宜的卡也容易出问题,尽量买好一点的,以免因小失大。PCI-RS232一般至少能扩展2个串口,有些BT一点的可以扩展到8-16个,一堆线和接头。转接线和扩展卡一般是要装驱动的。 2.串口功能的确认: 在使用串口之前,最好先确认一下串口是否正常,特别是使用转换接或扩展卡的。检查的方法很简单,就是将串口的2、3脚短接起来,3脚是发送数据,2脚接收数据,就是这个串口自发自收。电脑上的串口软件一般是用串口调试助手,很出名的,也好用。如下图所示:

基于LabVIEW与单片机的数据测量显示系统 (1)

计算机工程应用技术 Computer Knowledge and Technology 电脑知识 与技术本栏目责任编辑:梁书 第6卷第15期(2010年5月)基于LabVIEW 与单片机的数据测量显示系统 汤艳坤,李井泉,杨坤 (空军航空大学飞行基础训练基地基础部,吉林长春130022) 摘要:介绍了基于89S52单片机的速度位移测量系统的构成及程序框图,并且详述了LabVIEW 环境下串口通讯的方法,从而设计了一种用单片机实现数据测量,并通过串口由LabVIEW 实现采集显示的系统。 关键词:89S52单片机;LabVIEW ;串行通讯 中图分类号:TP751文献标识码:A 文章编号:1009-3044(2010)15-4164-02 Data Measure and DisplaySystem Based on LabVIEW and Singlechip TANG Yan-kun,LI Jing-quan,YANG Kun (Aviation University of Air Force,Changchun 130022,China) Abstract:This paper introduces structure and software block of velocity and displacement system based on 89S52singlechip and introduces serial port communication between computer and singlechip under the environment of LabVIEW;Therefore a system that sue singlechip acqure data and conveyed data to PC and displayed under LabVIEW. Key words:89S52singlechip;LabVIEW;serial port communication 虚拟仪器,是以通用计算机为核心,根据用户对仪器的设计定义,用软件实现虚拟控制面板设计和测试功能的一种计算机仪器系统。用户可以通过鼠标、键盘或触摸屏来操作虚拟面板,实现需要的测试测量目的。LabVIEW 是由美国国家仪器公司推出的面向计算机测控领域的虚拟仪器软件开发平台,它是一种真正意义上的图形化编程语言,采用工程技术人员所熟悉的术语和图形化的符号代替常规的文本编程语言,具有界面友好、操作方便、开发周期短的特点。 在本设计中通过单片机测量出来的速度、位移信号都转换成了数字的形式,通过串口 通讯传输给了计算机,通过LabVIEW 采集这些数据,通过处理以图形的方式显示出来。 1单片机系统的设计 系统的硬件电路主要由:数据采集、串行通讯、存储电路、显示电路、电源电压输入输出 电路、按键等几个模块组成。系统结构框图如图1所示。 通过单片机实现了对位移和速度的测量,这些数据通过串口通讯传到了计算机。在传 输的过程中,以0x00开头代表接下来所传的数据为位移,0xff 开头代表接下来多传得数据 为速度。系统软件框图如图2所示。2LabVIEW 下的串口通讯实现及数据显示 在LabVIEW 环境下使用串口与在其它开发环境中的开发过程类似,只不过在Lab - VIEW 下使用的是图形化的编程语言,基本的流程图如图3所示。 首先调用VISA Configure Serial Port 完成串口参数的设置,包括串口资源分配、波特 率、数据位、停止位、校验位等。配制完后就可以用这个串口进行数据收发。发送数据使用 VISA Write ,接收数据使用VISA Read 。在LzbVIEW 中,将采集到的位移和数据波形通过 图形的形式表示出来,这样就能更直观的观测到位移和速度的变化。图4为上位机上采集 数据后绘出的波形。收稿日期:2010-03-10 作者简介:汤艳坤(1982-),女,河北人,助教,研究方向为智能仪器。 图1硬件原理框图 图2软件流程 图3串口操作数据流图4位移和速度波形 ISSN 1009-3044Computer Knowledge and Technology 电脑知识与技术Vol.6,No.15,May 2010,pp.4164-4165E-mail:kfyj@https://www.doczj.com/doc/ef5305775.html, https://www.doczj.com/doc/ef5305775.html, Tel:+86-551-569096356909644164

非常好--LabVIEW串口通信详解

LabVIEW串口通信详解 串口可以说是我们最容易见到,也最容易接触到的一种总线,台式机上一般都有二个,而现在很多下位机、仪器等很多都还是使用串口通信的。论坛上很多朋友都经常会使用到串口,并遇到一些问题,这里有必要做一个详细的说明,以方便广大会员朋友,文章请勿转载到其它地方,谢谢。 论坛上早先发布过一个贴子,叫《串口WORD资料》,里面有一些中英文的串口的资料,这个文章是对那个资料的补充,如果是初接触串口的朋友建议先看一下上一个贴子先。上一个贴子中提到过的内容这里不再进行补充。 首先补充一个比较重要的问题,就是在LabVIEW中使用串口的话一定要先安装VISA这个驱动,然后生成的EXE运行时也需要在目标机上安装VISA Runtime Engine,可以在打包时一起打包。 VISA的驱动可以在NI网站上下载到:https://www.doczj.com/doc/ef5305775.html,/nidu/cds/view/p/id/1605/lang/zhs 1.串口扩展的问题: 先说一下串口的扩展问题,一般的台式机或工控机上都至少有二个串口,一般都是够用的,但是现在市场上已经很难找到带串口的笔记本了,而有时候在外出调试时需要在笔记本中使用到串口的,这时一般是使用USB-RS232的转接线,价格从十几到一百多都有,很多朋友反应在使用价格低的转接线时会出现乱七八糟的问题,而贵一点的线就很少听说有其它问题的,所以大家在使用便宜的USB-RS232转接线时要特别注意线的质量,遇到一些奇怪的问题时先考虑换一根好一点的线。PCI-RS232扩展卡也同理,便宜的卡也容易出问题,尽量买好一点的,以免因小失大。PCI-RS232一般至少能扩展2个串口,有些BT一点的可以扩展到8-16个,一堆线和接头。转接线和扩展卡一般是要装驱动的。 2.串口功能的确认: 在使用串口之前,最好先确认一下串口是否正常,特别是使用转换接或扩展卡的。检查的方法很简单,就是将串口的2、3脚短接起来,3脚是发送数据,2脚接收数据,就是这个串口自发自收。电脑上的串口软件一般是用串口调试助手,很出名的,也好用。如下图所示:图1 串口调试助手 打开软件,选择已经短接好的串口号,点击“手动发送”,如果串口是好的,2、3脚又短接起来了,马上就可以在上面的接收框里看到接收的数据就是发送的数据。稍微要注意一下的是有些电脑的COM1和COM2的位置是反过来的,所以要确定好串口调试助手左上角的串口上择的是已经短接的那一个,如果COM1没接收到,可以再先COM2再发一次看一下。 3.串口线的检查: 检查好串口后,一般也要注意一下使用的串口线,标准的串口线是9根线都是用上的,但有一些是只使用了三根线的:2、3、5。第3个脚管是发送,第2个管脚接收,另一个5是地线,这里叫它简化的串口线,简化的串口线能用上的地方,标准的串口线也肯定能用上,因为标准线的9根线已经包括了简化串口线中的3根线,但标准串口线能用上的地方,简化串口线就不一定能用上,所以在使用串口线之间一定要确定好串口线的类型,一般买的串口线都是标准线,但自制的串口线因为应用场合不同就要先确定一下。 G串口线还有一个地方需要注意一下的,就是2、3脚的接法,标准接法中是2、3脚交叉的,即这边的2接另一边的3,这边的3接另一边的2,扭了一下,所以叫交叉线,因为正常使用时,这边第二脚是发送数据,另一边第三脚是接收数据,所以要将这二个管脚连接起来,这样才能正常使用。但是有些情况下,2、3是直连的,即这边的第2脚连接另一边的第2脚,第3脚连接第3脚,这种叫直连线,这种线一般是用于延长串口的,比如需要将工控机的串口接头引到机柜表面上时,就使用这种线,这样机柜表面的串口线的定义还是跟电脑接出来的一样,外面的那一根串口线再使用交叉线。从电脑主板上将串口引到主机后面板上的线就是这样的直连线。购买串口线的时候一般也会问你买直连的还是交叉的,要区别对待。 串口线还有一个要稍微注意一下的就是DB头,因为电脑上接出来的一般是公头(针),要跟电脑接的话要母头(孔),一般仪器的串口也是公头,所以二边都是母头的串口线比较常见。串口的接头一般是DB9的,也有DB25的,但比较少用,有些比较BT的仪器厂家居然用RJ11(水晶头那种)作为串口头,让人不爽! 总之,使用串口前一定要先确定好硬件没问题,不然很浪费时间的。 4.串口参数设置: 在LabVIEW中使用串口时,有几个参数比较重要,需要先说明一下的。一个是串口初始化这个节点的“终

基于LabVIEW与单片机串口的数据采集系统

罗光坤,杨昊,黄惟公 (四川工业学院机械工程与自动化系,四川成都 610039) 摘要:介绍一种利用单片机采集数据,LabVIEW作为开发平台,二者之间通过串口实现数据通讯的数据采集系统,详细介绍了软、硬件设计方案。 关键词:LabVIEW;虚拟仪器;单片机;串口;数据采集 1LabVIEW部分设计 1.1VISA简介 LabVIEW提供了功能强大的VISA库。VISA(Virtual Instrument Software Architecture)——虚拟仪器软件规范,是用于仪器编程的标准I/O 函数库及其相关规范的总称。VISA库驻留于计算机系统中,完成计算机与仪器之间的连接,用以实现对仪器的程序控制,其实质是用于虚拟仪器系统的标准的API。VISA本身不具备编程能力,它是一个高层API,通过调用底层驱动程序来实现对仪器的编程,其层次如图1所示。VISA是采用VPP标准的I/O接口软件,其软件结构包含三部分,如图2所示。 与其他现存的I/O接口软件相比,VISA的I/O控制功能具有如下几个特点:适用于各种仪器类型(如VXI仪器、GPIB仪器、RS-232串行仪器、消息基器件、寄存器器件、存储器器件等仪器);适用于各种硬件接口类型;适用于单、多处理器结构或分布式网络结构;适用于多种网络机制。 VISA的I/O软件库的源程序是唯一的,其与操作系统及编程语言无关,只是提供了标准形式的API文件作为系统的输出。 1.2VISA库中的串口通讯函数 本文用到的主要的串口通讯函数调用路径为:Functions Instrument I/O VISA VISA Advanced Interface Specific Serial中。 (1)VISA Configure Serial Port节点(图3所示)

在LabVIEW中应用串口使用LabVIEW系统VI串口VI介绍

在LabVIEW中应用串口 第一部分使用LabVIEW系统VI 一、串口VI介绍 LabVIEW的串口通讯VI位于Instrument I/O Platte的Serial中,包括: 二、使用说明 在LabVIEW环境中使用串口与在其它开发环境中开发过程类似,基本的流程框图如下。 图1、串口操作数据流图 首先需要调用VISA Configure Serial Port完成串口参数的设置,包括串口资源分配、波特率、数据位、停止位、校验位和流控等等。

图2、初始化串口 如果初始化没有问题,就可以使用这个串口进行数据收发。发送数据使用VISA Write,接收数据使用VISA Read。在接收数据之前需要使用VISA Bytes at Serial Port查询当前串口接收缓冲区中的数据字节数,如果VISA Read要读取的字节数大于缓冲区中的数据字节数,VISA Read操作将一直等待,直至Timeout或者缓冲区中的数据字节数达到要求的字节数。当然也可以分批读取接收缓冲区或者只从中读取一定字节的数据。 图3、从串口发送数据图4、从串口接收数据 在某些特殊情况下,需要设置串口接收/发送缓冲区的大小,此时可以使用VISA Set I/O Buffer Size;而使用VISA Flush I/O Buffer则可以清空接收与发送缓冲区。在串口使用结束后,使用VISA Close结束与VISA resource name指定的串口之间的会话。 图5、设置缓冲区大小图6、清空缓冲区图7、结束会话/线程 具体的例子可以参考:examples\instr\smplserl.llb。 第二部分使用MSCOMM控件 在LabVIEW中使用MSCOMM控件,与在VC、VB中使用一样。同样可以使用中断方式进行 接收。具体的例子可以发索取。

LabVIEW串口通信入门教程

串口可以说是我们最容易见到,也最容易接触到的一种总线,台式机上一般都有二个,而现在很多下位机、仪器等很多都还是使用串口通信的。论坛上很多朋友都经常会使用到串口,并遇到一些问题,这里有必要做一个详细的说明,以方便广大会员朋友方便使用。 首先补充一个比较重要的问题,就是在LabVIEW中使用串口的话一定要先安装VISA这个驱动,然后生成的EXE运行时也需要在目标机上安装VISA Runtime Engine,可以在打包时一起打包。 1.串口扩展的问题: 先说一下串口的扩展问题,一般的台式机或工控机上都至少有二个串口,一般都是够用的,但是现在市场上已经很难找到带串口的笔记本了,而有时候在外出调试时需要在笔记本中使用到串口的,这时一般是使用USB-RS232的转接线,价格从十几到一百多都有,很多朋友反应在使用价格低的转接线时会出现乱七八糟的问题,而贵一点的线就很少听说有其它问题的,所以大家在使用便宜的USB-RS232转接线时要特别注意线的质量,遇到一些奇怪的问题时先考虑换一根好一点的线。PCI-RS232扩展卡也同理,便宜的卡也容易出问题,尽量买好一点的,以免因小失大。PCI-RS232一般至少能扩展2个串口,有些BT一点的可以扩展到8-16个,一堆线和接头。转接线和扩展卡一般是要装驱动的。 2.串口功能的确认: 在使用串口之前,最好先确认一下串口是否正常,特别是使用转换接或扩展卡的。检查的方法很简单,就是将串口的2、3脚短接起来,3脚是发送数据,2脚接收数据,就是这个串口自发自收。电脑上的串口软件一般是用串口调试助手,很出名的,也好用。如下图所示:

图1串口调试助手 打开软件,选择已经短接好的串口号,点击“手动发送”,如果串口是好的,2、3脚又短接起来了,马上就可以在上面的接收框里看到接收的数据就是发送的数据。稍微要注意一下的是有些电脑的COM1和COM2的位置是反过来的,所以要确定好串口调试助手左上角的串口上择的是已经短接的那一个,如果COM1没接收到,可以再先COM2再发一次看一下。 3.串口线的检查: 检查好串口后,一般也要注意一下使用的串口线,标准的串口线是9根线都是用上的,但有一些是只使用了三根线的:2、3、5。第3个脚管是发送,第2个管脚接收,另一个5是地线,这里叫它简化的串口线,简化的串口线能用上的地方,标准的串口线也肯定能用上,因为标准线的9根线已经包括了简化串口线中的3根线,但标准串口线能用上的地方,简化串口线就不一定能用上,所以在使用串口线之间一定要确定好串口线的类型,一般买的串口线都是标准线,但自制的串口线因为应用场合不同就要先确定一下。 G串口线还有一个地方需要注意一下的,就是2、3脚的接法,标准接法中是2、3脚交叉的,即这边的2接另一边的3,这边的3接另一边的2,扭了一下,所以叫交叉线,因为正常使用时,这边第二脚是发送数据,另一边第三脚是接收数据,所以要将这二个管脚连接起来,这样才能正常使用。但是有些情况下,2、3是直连的,即这边的第2脚连接另一边的第2脚,第3脚连接第3脚,这种叫直连线,这种线一般是用于延长串口的,比如需要将工控机的串口接头引到机柜表

labview中 我现在在做一个上位机对串口发送 ASCII码和十六

在LabVIEW中使用串口 第一部分使用LabVIEW系统VI 一、串口VI介绍 LabVIEW的串口通讯VI位于Instrument I/O Platte的Serial中,包括: VI名称 VI功能 VISA Configure Serial Port 初始化VISA resource name指定的串口通讯参数 VISA Write 将输出缓冲区中的数据发送到VISA resource name指定的串口 VISA Read 将VISA resource name指定的串口接收缓冲区中的数据读取指定字节数的数据到 计算机内存中 VISA Serial Break 向VISA resource name指定的串口发送一个暂停信号 VISA Bytes at Serial Port 查询VISA resource name指定的串口接收缓冲区中的数据字节数 VISA Close 结束与VISA resource name指定的串口资源之间的会话 VISA Set I/O Buffer Size 设置VISA resource name指定的串口的输入输出缓冲区大小 VISA Flush I/O Buffer 清空VISA resource name指定的串口的输入输出缓冲区 二、使用说明 在LabVIEW环境中使用串口与在其它开发环境中开发过程类似,基本的流程框图如下。 图1、串口操作数据流图 首先需要调用VISA Configure Serial Port完成串口参数的设置,包括串口资源分配、波特率、数据位、停止位、校验位和流控等等。

图2、初始化串口 如果初始化没有问题,就可以使用这个串口进行数据收发。发送数据使用VISA Write,接收数据使用VISA Read。在接收数据之前需要使用VISA Bytes at Serial Port查询当前串口接收缓冲区中的数据字节数,如果VISA Read要读取的字节数大于缓冲区中的数据字节数,VISA Read操作将一直等待,直至Timeout或者缓冲区中的数据字节数达到要求的字节数。当然也可以分批读取接收缓冲区或者只从中读取一定字节的数据。 图3、从串口发送数据图4、从串口接收数据 在某些特殊情况下,需要设置串口接收/发送缓冲区的大小,此时可以使用VISA Set I/O Buffer Size;而使用VISA Flush I/O Buffer则可以清空接收与发送缓冲区。在串口使用结束后,使用VISA Close结束与VISA resource name指定的串口之间的会话。 图5、设置缓冲区大小图6、清空缓冲区图7、结束会话/线程 具体的例子可以参考:examples\instr\smplserl.llb。 第二部分使用MSCOMM控件 在LabVIEW中使用MSCOMM控件,与在VC、VB中使用一样。同样可以使用中断方式进行接收。

基于labview单片机串口通信课程设计

基于labview单片机串口通信课程设 计

辽宁工业大学 开放性实验课程设计 题目:基于LabVIEW的单片机之间串口通信设计 院(系):电气工程学院 专业班级:自动班 122 学号: 学生姓名:刘权 指导教师:(签字) 起止时间:.12.17- .01.06

摘要 虚拟仪器是现代计算机技术同仪器技术深层次结合的全新概念仪器,实质是利用计算机显示器的显示功能模拟传统仪器的控制面板,以多种形式表示输出测量结果,利用计算机强大的软件功能实现信号数据的运算、分析和处理,完成各种测试功能的一种计算机仪器系统。 本文介绍了利用 LabView语言来实现上、下位机之间通信的方法,并从软、硬件两个方面阐述了设计思想。在简要介绍图形化虚拟仪器平台LabView的基础上,分析STC12C5A60S2单片机与 LabView之间的串口通信模式,并结合该设计中设计的温度检测系统给出串口通信的软、硬件设计。 应用先进的虚拟仪器软件LabView,大大降低了串口通讯复杂程度,减小了软件设计的工作量,能够大大降低投资成本。在实际应用中有巨大的使用价值。 关键词:MCS51单片机,LabView,串口通信

目录 前言 (5) 第一章绪论 (6) 1.1 研究的背景及意义 (6) 1.2 课题发展状况 (7) 1.3 设计任务 (7) 第二章系统总体设计 (8) 2.1 系统方案设计 (8) 2.2 系统硬件选择 (8) 第三章系统硬件设计 (9) 3.1 元器件的介绍 (9) 3.1.1 主控制器 (9) 3.1.2单片机 (10) 3.2 硬件电路图设计 (10) 3.2.1mcu及复位电路 (10) 3.2.2串口电路 (11) 3.2.3晶振电路 (12) 3.2.4led输出电路 (13) 3.2.5PCB版 (13) 第4章系统软件设计 (15) 4.1 单片机接口程序设计 (15) 4.2 单片机串口通讯协议 (17)

基于LabVIEW的PC机与单片机串口通信

课程设计任务书 学生姓名:李晓宁郁金华彭亚斌吴冰 专业班级 0882022 0882021 指导教师:杨谊华 工作单位:南昌航空大学 题目:基于LabVIEW的PC机与单片机串口通信 初始条件:要求对单片机课程知识有所了解,同时熟悉labview软件的运用,同时了解基本的串口通信原理。 指导教师签名:________________年月日 系主任(或责任教师)签名:______________ 年月日

摘要 介绍一种基于LabVIEW 7.0语言的A VR AT90系列单片机与PC 机的串口通信技术,在体温检测中得到应用,并取得良好效果。 关键词: LabVIEW 7.0语言;A VR AT90系列中一片机;PC机;串口通信技术 Abstract:We introduce the application of serial port communication technology based on PC machine with LabVIEW 7.0 language and A VR AT90 series SCM in body temperature examination.And it has good effect. Key words:LabVIEw 7.0 language;A VR AT90 series SCM;PC machine;Serial port communication technology

目录 第一章绪论 (1) 第二章软件实现 (2) 2.1 LabVIEW应用软件概述 (2) 2.2 LabVIEW串口通信模块 (2) 2.3 LabVIEW通信模块的属性 (3) 2.4 串口通信程序结构 (3) 第三章程序设计 (4) 3.1 单片机通信的设计 (4) 3.2 PC机通信的设计 (4) 3.3 输入显示程序设计 (4) 3.3.1 LED 显示流程图 (6) 3.4 单片机收发程序 (7) 3.5 PC机收发程序 (8) 3.6 硬件连接 (9) 第四章利用LabVIEW实现PC与单片机串口通信任务 (12) 4.1 建立新VI程序 (12) 4.2.程序前面板设计 (12) 4.3.框图程序设计——添加函数与连线 (12) 4.4.运行程序 (15) 致谢 (16) 参考文献 (17)

相关主题
文本预览
相关文档 最新文档