目录
准备:LABVIEW,安装VISA(资源包可在NI官网下载,注意和LABVIEW的版本配合)
-
1.目标
(1)下位机为单片机或DSP等,得到的两组数据Data0和Data1,数据Data0[i]宽度为16bit,但是串口收发数据以8bit为单位,因此下位机发送时将一个16bit数据拆分为两个部分(高8bit和低8bit),先发送Data0再发送Data1,程序类似下面方式:
for(i=0;i<Number;i++) {
BUFH=Data0[i]>>8; //高8bit
BUFL=Data0[i]|0x00ff; //低8bit
Send_OneChar(BUFH); //这里的Send_OneChar()函数根据实际下位机编写
Send_OneChar(BUFL);
}
(2)上位机LABVIEW制作上界面,接收来自串口的数据,并将数据恢复为16bit,最后将数据恢复为两组Data0和Data1;可支持上位机发送一次命令后,接收一次数据(与下位机收发程序配合)。
2.VI程序面板及讲解
(1)整体VI
整体VI的程序面板如下所示
整体VI包括三大部分:一是配置串口数据(配置VISA资源)和初始化显示控件;二是写串口命令、读串口数以及数据重组和恢复;三是关闭串口。在出现错误或点击“stop”按钮时退出循环。
需要注意,LABVIEW运行时,在没有数据流限制的地方,如果要控制运行步骤,需要加一个“顺序结构”同时配合数据流。例如上图中的②步,利用错误和VISA会话句柄控