精华内容
下载资源
问答
  • labview接收串口数据
    2022-01-22 20:53:00

    LabVIEW编程LabVIEW开发 串口接收数据不完整 例程与相关资料
    LabVIEW进行串口通讯时,如果采用默认配置,这时候如果发送的命令中含有0A,则接收的命令就会以0A为结束符分为两部分,也就是说接收的数据不完整了。这时候需要再串口配置中,将令Enable Termination Char=False。这样有发送命令中有0A字符串,不会从中间停止。因为默认termination char就是0A。
    改为如下设置即可。

     

    LabVIEW、LabVIEW开发、LabVIEW编程、LabVIEW程序
    文字内容均在附件Word中,同时上文中提到的例子和资料,均在word中的附件里,可点击下载。登录www.bjcyck.com可以查看更多详细信息。这里只是简略的介绍,有任何关于LabVIEW、LabVIEW开发、LabVIEW编程、LabVIEW程序相关问题,请与我们联系。
    链接地址为:http://www.bjcyck.com/nd.jsp?id=353#_np=2_358
     
     

    更多相关内容
  • Labview串口接收数据

    2020-07-07 16:59:48
    用NI Labview实现串口接收数据,可供大家参考,可以作为子程序来开发。本程序有数据接收数据处理两部分构成,PC通过RS232接收下位机的数据通过校验和检验后和软件滤波后,最终显示。
  • labview程序,实现从串口读取数据并保存为tdms文件
  • 自己编写的串口接收数据显示程序,密码925845,可以给大家作为参考
  • LabVIEW串口编程】03 串口接收

    千次阅读 2020-10-28 21:14:28
    参照串口发送的思路,串口接收一次数据的步骤为:打开串口-->接收数据-->关闭串口。但是这里有一个问题,数据接收方是不知道数据会在什么时刻发送过来的,这是一个被动接收的过程。对应的有两种情况: 1...

    上一篇说到,串口发送一次数据的步骤为:打开串口-->发送数据-->关闭串口。

     

    参照串口发送的思路,串口接收一次数据的步骤为:打开串口-->接收数据-->关闭串口。但是这里有一个问题,数据的接收方是不知道数据会在什么时刻发送过来的,这是一个被动接收的过程。对应的有两种情况:

    1、接收方提前知道将接收多少数量的数据

    对于这种情况,处理起来比较简单,直接在读取函数处进行设置即可。图中所示为接收5字节数据的情况。

    注意在进行测试的时候,要提前让数据发送端保持持续发送,然后运行接收程序才可以收到数据。

    2、接收方不知道将接收多少数量的数据

    既然不知道有多少数据,那创建一个while循环一直读取就好了。但是数据可能是断断续续传来的,而我们在进行读取的时候又必须得告诉读取函数需要接收数据的数量,这时候可以利用属性节点的方式获取串口缓冲区的数据数量,缓冲区有多少数据就读多少。读取函数的输出端显示的是本次读取的结果,所以当断续的数据传来,显示的结果每次都会刷新,而我们想看到的应该是每一次的结果累计,这里可以使用连接字符串的方式将字符串上一次的值与这一次的值累加起来并作为新的值进行显示。

    在获取到串口缓冲区的字节数之后,还进行了一个判断,当缓冲区不为空的时候再进行数据读取。

    上面这个程序,可以说是一个最简单的串口接收程序了,里面用到的函数组件都是必不可少的。

    需要程序请戳下方链接:

    https://wwa.lanzoui.com/i9lwzwj

    下面都是废话

    但是很多时候,用LabVIEW编写串口程序是拿来跟下位机进行交互的,下位机有可能是单片机,也有可能是别的什么设备。在调试这些下位机串口设备的时候,用的最多的调试工具就是串口助手了。作为一个调试工具,XCOM已经做的很好了,没有必要重复造轮子。但从另一个方面来说,XCOM是拥有很多个性化的功能的,比如自动发送、多条发送等,这些功能可以为调试带来极大的便捷。当我们想要更多,当现有的工具无法满足我们的需求,最快的方式就是自己去编写一些调试工具,或者说根据自己当前的需求快速定制化一个调试工具。那么LabVIEW就提供了这样一个平台,借助它可以快速构建出可以使用的程序。当掌握了LabVIEW之后,就可以造出自己想要的轮子,花里胡哨的轮子。当然打造轮子的平台有很多,不一定是LabVIEW,比如说QT也可以编写上位机程序。说到底这些都是工具,当把一个工具用到极致,就可以变成属于自己的独一无二的神器。

    刚才提到没有必要重复造轮子,但是造轮子的过程还是有必要学习的,没必要花时间再造一个出来,因为费了时间也不一定造的比已有的好。但是得知道轮子是怎么做出来的,掌握了这些,我们可以扩展造出别的东西。

    比如说现在要做一个温度显示的上位机,单片机负责采集温度将数据通过串口发送至电脑。这个时候XCOM是完全可以获取到上传的数据的,但都是一些枯燥的数字,如果将温度随时间的变化通过图像的方式显示出来是不是更好呢,答案是肯定的。这时候XCOM就无法满足了。回到刚才的程序,数据的接收已经没有问题了,将接收的数据输送到波形图表就可以快速实现这个需求。当然数据还需要根据具体情况进行一些处理,如果我们提前已经熟知了LabVIEW内各种数据的转换方式以及波形图的用法,相信这个过程并不会花费很多时间,几分钟就可以搭建出来。

    当有一天不需要测温度了,要测一个电机的速度,刚才编写的温度程序也是适用的,数据的获取过程完全不用变,只是数据表达的含义变了,这时候只需要稍微更改数据的解析部分甚至不用改动就可以直接使用。

    当然,刚才演示的程序是及其简陋的,可以再花一些时间对其进行优化,这并不是无用功,因为这部分代码是可以复用到很多程序里去的,这会给以后带来极大的便捷。所以当遇到重复编写的代码时,就一次多花些时间做到最优,以后直接CTRL CV就好了。

    展开全文
  • 一个可以用串口接收数据并显示波形的labview程序,可以接收三个数据,可供参考
  • 利用Labviewjinxing 串口数据发送接收(Using LabVIEW to send and receive serial data)
  • LabVIEW实现接受串口数据并绘制波形的上位机

    万次阅读 多人点赞 2019-10-29 22:57:18
    最近学LabVIEW的时候,用LabVIEW搭建了一个可以接受串口数据并显示波形的上位机,在这里分享一下。 有需要的朋友可以在下面这个链接下载: 『上位机链接』 串口连接到电脑上后,会在设备中显示出来 『设备图』 我们...

    PC版本:Win10家庭版
    LabVIEW:LabVIEW2018

    最近学LabVIEW的时候,用LabVIEW搭建了一个可以接受串口数据并显示波形的上位机,在这里分享一下。

    搭建步骤如下:

    1、连接串口

    串口连接到电脑上后,会在设备中显示出来
    『设备图』

    2、搜索串口

    我们需要在LabVIEW的控件中添加VISA资源名称来搜索到串口资源
    『VISA』

    3、配置串口的参数

    调用“VISA配置串口”函数进行配置
    『参数』

    4、读取缓存区字节数

    因为只需要接受到串口发送过来的数据即可,这里只介绍数据接受部分。
    单片机通过串口发送数据到LabVIEW上后,可以理解为数据储存在一个缓存区中,我们通过属性节点访问中该缓存区中接受到的字节数,当字节数大于0时,意味着我们可以读取缓存区中数据,缓存区中数据一经读取就不会出现在缓存区了。
    调用属性节点,选择Bytes at Port
    【属性节点】
    添加一个布尔输入控件,命名为“开始接受”,当字节数大于零且按下该按钮时,开始接受数据,否则不接受数据,于是需要添加一个条件结构
    『条件结构+按钮+比较』
    我们先讨论条件为真的情况,此时缓存区中有一定数量的字节。我们需要用到读取VISA函数去读取它们,读取字节数可以从Bytes at Port中得到
    『读取VISA』

    5、拼接读取的字符串

    如果串口接受到了很长的一个字符串,那么我们使用“读取VISA”时,可能出现仅读取了部分字节的情况,所以我们需要将它们拼接到一起。或者我们想将所有接受到的字符都显示在屏幕上,也需要使用字符串拼接函数将接受到的数据同以往接受的数据连接起来。
    在拼接的时候,我们需要使用反馈节点将上次循环中的字符与此次循环接受到的字符串拼接起来。

    6、从字符串中获取整型数据

    我们这里期望接受的是从串口传输过来的整形数据,并显示在波形图表上。于是需要在每接受到一个整形数据后,将反馈节点置为空字符串。
    我们需要先简单自定义一个整型数据传输的格式,这里我定义的是:每个整型数据,如123,转化为字符串“123”进行传输,且每个字符串以转义字符’\n’结束。
    显然每次检测到’\n’,就意味着接受到了一个整型数据。
    LabVIEW中提供了一个字符串替换函数,可以将字符串中某个字符替换成其他字符,这里使用该函数用空字符替换’\n’,替换后,函数返回去掉’\n’的字符串(因为用空字符,相当于删除’\n’),并返回替换个数。

    当替换个数大于0时,说明接受到的字符串中含有’\n’,说明接收到了一个整型数据。
    当替换个数等于0时,说明接受到的字符串中没有’\n’,说明没有接受到完成的整型数据,继续拼接字符串。
    在这里插入图片描述
    在这里插入图片描述
    当接受到一个整型数据后,使用“十进制数字字符串至数值转化”函数,将“123”这样的字符串转化为整数123,然后输入波形图表,即可显示出整型数据。

    7、结果演示

    这里采用正点原子的mini板发射串口数据,主要语句如下:
    在这里插入图片描述
    接受的波形如下:
    在这里插入图片描述

    展开全文
  • 直接写的关于串口接收和发送的两个小程序,初学者可用来参考一下。
  • 使用LABview软件串口数据保存至TXT文件
  • labview做的一个简单的串口接收程序

    千次阅读 多人点赞 2020-06-19 21:42:11
    因为要用labview做一个数据采集,因此才刚刚接触这一方面,就分享出来最基础的用labview接收串口信息。希望能帮助到有需要的人。 首先说明一下要使用的工具 1、Configure Virtual Serial Port Driver 这是一个用来...

    因为要用labview做一个数据采集,因此才刚刚接触这一方面,就分享出来最基础的用labview接收串口信息。希望能帮助到有需要的人。

    已上传一个简单的串口程序(仅实现接收与显示),关注我可免费下载。需要进阶版的(实时数据存储,数据解码显示等)可以联系我。

    首先说明一下要使用的工具

    1、Configure Virtual Serial Port Driver
    这是一个用来虚拟串口的软件,网上非常好找,随便百度一下就可以下载到。使用方便,界面如下
    在这里插入图片描述
    用来增加两个互联的虚拟串口,使用完记得点底部的delete all来关闭串口。
    左边是我已经添加上的两个串口,之后需要用串口助手和自己写的VI程序连上这两个串口来进行调试。

    2、XCOM
    经常玩嵌入式板子的应该很熟悉这个软件,正点原子提供的串口调试助手。可以实现发送和接收串口的数据。
    在这里插入图片描述

    3、VISA串口驱动程序
    要使用labview里的串口模块必须要下载官方的visa驱动。可以去NI官网去搜索NI-visa下载,但是labview官网下载要点右下角的一个下载离线补丁。下载之前记得看一下自述文件,是不是兼容你labview的版本。如果懒得去官网下也可以戳这里下载离线补丁。如果没有安装visa驱动的话是无法实现串口通讯功能的。

    labview程序

    如下图
    在这里插入图片描述

    这就是一个非常基础的简单的用来接收串口的小程序,可以将串口发来的数据展示出来并以波形显示。下面大概介绍一下各个函数及原理。

    1、串口配置函数
    在这里插入图片描述
    这个函数在 仪器IO 》》串口中,要打开一个串口首先就要进行配置,如波特率等。因为这里就做一个简单的接收程序,因此都省略掉了(省略掉不连自动使用默认值)。visa资源名称就是指你的串口号,这个是必须要连接的
    2、串口读取函数
    在这里插入图片描述
    注意黑体字为必须连的端。这个类似于C语言中的read函数。visa资源名称即串口号,有点类似C中的文件句柄,而字节总数为一次接收的字节数。读取缓冲区即存放读取字节的地方,并可以展示。
    3、串口关闭函数
    在这里插入图片描述
    即使用完之后关闭串口,如果使用完不关闭的话,将一直占用该串口,别的程序无法使用该串口, Virtual Serial Port也无法关闭串口。

    因为波形图标要无符号数输入,因此做了一个强制类型转换之后把接收到的数据送到波形图表中显示。

    在这里插入图片描述
    上图这一块的目的是不让新数据将旧的数据覆盖。因为缓冲区每次接收都会清除上一次的数据。因此用上一次的缓冲区的数据和这一次读到的数据用一个连接字符串函数连接。然后在显示出来。

    最后打开XCOM然后连接COM2,运用程序连接COM1。从XCOM中发送数据即可从labview中看到收到的数据与波形显示。
    在这里插入图片描述

    展开全文
  • LabVIEW上位机串口数据接受不完整、不正常的解决方法 通常在测试、测量实验中, 使用LabVIEW做上位机的开发,串口通信是一种常用的数据传输方式。 1在传输数据较少、波特率低的情况下,通常的串口接受数据不会存在...
  • 本程序是labview编写的,可实现与单片机串口通讯,并实现数据存储和回放等功能,已测试成功!
  • 在昨天我写了采用挨个数发送的方法获得了正常的上位机数据。 但是在上位机中,数据显示并不正常。...我的解决办法是:在接收到的数据之后加一个选择结构,如果接收到的数字>100,则显示数据。 ...
  • 可以实现与下位机进行串口通讯,非常简单的一个程序。将串口接收到的数据进行波形显示,适合初学者下载并学习
  • 1、串口数据查询接收在 while循环中; 2、使用属性节点获取数据; 3、当接收数据不为0时,进入条件判断接收并将缓冲区数据显示到窗口; 4、程序如下 5、安装虚拟串口,进行数据测试; 6、 ...
  • 测试程序主要解决了在使用基于LABVIEW上位机串口测试程序遇到的一些问题,第一,在接收串口数据时,只接收了一半的串口数据,在进行校验时该数据视作错误数据,出现丢数和漏数的情况;第二,串口测试程序,由于硬件...
  • LabVIEW串口通信

    万次阅读 2022-05-03 15:50:46
    LabVIEW串口通信使用范围非常广泛,例如,通过串口使用ModBus协议驱动仪器、串口驱动PLC设备等。在LabVIEW中有专业的VI(VISA)可以驱动串口进行数据读、写操作,在函数面板 → 仪器I/O → 串口子面板中。
  • LabVIEW编写的串口发送接收程序,基于状态机架构,清晰明了。注意在LabVIEW中编写串口程序必须先安装VISA驱动程序包。
  • labview串口通信,简单串口通信,数据接收发送功能
  • LabVIEW串口接收实例

    万次阅读 2018-10-25 13:03:24
    1.通过节点判断接收数据大于0  2.通过while循环来存储剩余未识别的接收数据 3.在通过字符串合并将字符串链接起来 4.最好把Resd.vi放在if判断里面 帧头帧尾识别: 1.通过数组搜索来判断是否找到帧头 2.如果...
  • 只有labview程序,可以实现LABVIEW串口通信
  • 分享一下我自己做的一个串口数据采集上位机界面以及程序,它的优点有: 1.拥有起始校验位,所以当硬件要跟其进行通讯时,只需要在发数据前发一个字符作为起始校验,则该界面会自动从起始位后开始读取数据,则数据将会是...
  • Labview 串口采集 波形显示,采集串口接收数据,并转化为波形进行显示
  • labview通过串口读取扫码枪扫码内容
  • labview串口通讯 3个线程 接收验证 不丢数据 数据稳定校验 接收同步 数据后处理不影响发送接收
  • Labview上位机串口通信-读写

    千次阅读 2019-04-04 22:35:23
    (1)相关配置:串口资源(波特率等设置)、VISA的打开、配置(接收和发送缓冲区)、调用属性结点(一有字节出现就马上接收,或者发送) (2)读取部分:首先依据协议进行包头的识别,再从后续的字节里读取字节...
  • LabVIEW串口通信实际操作

    千次阅读 2021-05-27 20:42:15
    (1)串口有个缓冲区,存在计算机内存里,VISA 读取,就是从缓冲区读取数据,读完之后,读取的就不存在缓冲区里了。如果你没读取,那就一直在缓冲区里,直到缓冲区溢出。 (2)如果有多个线程,都
  • labview串口发送与接收数据格式问题

    万次阅读 2016-10-02 19:28:33
    当我在网上搜索串口发送数据格式的问题是会得到这样的结果:labview中发送的是ascll,当你在labview中发送0的时候,在串口助手中会得到48,若想发送十六进制加上字符串到字节数组转换,对于我们新手来说,可能不太...
  • labview完整的串口通讯程式,使用生产者消费者模式,队列状态机,包括完整的串口参数保存读取,以及ASCII码的转换。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 597
精华内容 238
关键字:

labview接收串口数据