各位大神帮帮忙,我在用labview进行串口通信时出现了以下问题,用labview编写的一个串口调试小助手程序和数据处理程序,下位机是以FPGA为控制器的采集系统,FPGA采集的数据通过串口上传到labview进行数据的处理,在labview程序中写下命令,下位机开始上传采集的数据,我是先将采集的数据存放在字符串控件中,采集完毕后,按下处理按钮进行数据的处理,字符串控件可以存储多少字节的数据呢?我的采集时间为2个小时或者更多,数据量很大,2个小时数据采集完毕后,按下开始处理按钮,等了好久也没进行数据处理,半个小时的采集程序就可以,尝试过使用生产者/消费者模式,进行边采集边处理的方法,但是没有成功,请各位大神帮忙解答下,是字符串控件的容量不够,还是电脑的配置不够,上传数据时labview总出现未响应状态,cpu占用率达到了90%以上,下面是程序框图。
但是延时过大的话,不就影响到采集数据的上传速度了吗?
追答假设你每10ms毫秒读1个数据,我50ms读5个数据,这个你考虑下呗,我把时间片分出去做了其他事情,而你的一直在串口读,不一定能读到数据,而且占用了系统资源
追问那应该是上传数据的同时进行数据处理?
追答把上面的while循环和下面的while循环分别禁用,看看那个部分CPU占用比较多
上传的数据是十六进制数,不能存在excel或txt文件里把?
追答一样可以啊
本回答被网友采纳labview 串口通信 vi程序有时候这样报错 怎么解决啊?
1.在visa write 这个部分加个延时,有可能还没发送完成,就把VISA关闭了,造成发送失败。2.检查和单片机的连接,是否存在连接松动。3.建议先给单片机通电,后才运行LabVIEW程序。4.检查单片机受到干扰造成。5.检查单片机的程序是否存在bug。
Labview跟串口通信问题
1、查看Max中串口是否能够正确识别,2、查看LabVIEW串口配置和单片机是否对应 2、命令是否正确,一般都是写十六进制的数字,你的字符串是否是十六进制显示模式?3、读取的延时是否正确,单片机需要一定时间来执行你发送的命令。可以采集visa的属性节点,VISA串口字节数来查看是否有数据返回。
labview串口通信有时连不上,一阵一阵的,可能是哪的问题?
串口的传输速率问题或是你的程序采集过快,串口操作需要有延时。
labview串口通信循环
你这个程序有两个问题,首先按下“写入”键后,这个数据就会以最快的速度向串口写入数据。而串口是个慢速设备,这个写法会丢失数据,且时间一长会缓冲溢出而导致崩溃。修正的方法是在写入这里加一个延时,比如200毫秒才写一次。其次,这样的两个While循环不合理,比如关闭了第一个循环一定导致第二个循环...
Labview串口通信不稳定
端口配置的时候注意一下那个终止符,如果终止符定义并启用了(默认是这样的,你可以禁用它),接到你定义的终止符(默认为0x10,LF的ASCII码)后接收会自动停止。
关于Labview的VISA串口通信问题!!!求大牛!
你这个原因是 VISA读取到指定数目没读到,但是已经超时。比如你设定读取10个字节,结果读取到8个,一直等不到。而且串口是有超时的,默认是10S。百度“那些年,我们一起LabVEIW”,仪器版块试试。里面有教程。一般来说,控制仪器如果要立即返回的话,加个终止符就可以了。仪器一般都有终止符 ODOA之类的...
求助labview串口通信失败
labview串口通信需要软件包支持,需要安装NI VISA相关软件包。如果安装软件正常的话,建议确认串口号,波特率等参数设置是否正确。如果还有问题,可以先用第三方的串口调试软件确认能否正常通信,以确认问题出在哪里。以上内容希望对你有帮助,谢谢。
Labview读取串口 通信问题 延时过长
应该是数据输入与软件读取不同步,缓存中数据累积造成的,可以定时清空缓冲 或 缩短读取时间,但需要判断数据是否有效,无效的舍去就可以啦。
LABVIEW 做串口通信,接收十六进制,为什么 终止符我老是禁止不了呢。遇 ...
首先,启用终止符那里设为False是没错的 然后你这个串口配置有问题。你自己发现没有,你那几个配置的数据连接到VISA配置函数的接线端子上都有个红色的小三角,那表示数据强制转换。就是说输入的数据类型与函数设定的输入的数据类型不匹配。其他几个参数强制转换过去倒是都能用,但是停止位不行。停止位...
LABVIEW 串口传输为什么一直失败,已安装NI-VISA,串口识别出来了,但是无 ...
这个是没问题的,可以。你首先检查一下你安装的VISA驱动是否支持你labview的版本,安装后再打开NI MAX将WINDOWsI的波特率设置和你串口的波特率一致再保存,再看看你的COM1或COM2,只要没有感叹号就可以了。希望可以帮你。。