0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于labVIEW与单片机的上位机与下位机通信

电子设计 作者:工程师飞燕 2018-09-17 08:25 次阅读

单片机控制系统中,经常会涉及到上位机与下位机的通信。本文主要通过一个简单的实例来介绍labVIEW与单片机的串口通信实现过程,包括下位机单片机的硬件与软件设计,上位机LabVIEW的前面板和程序框图设计。

1.概述

在现代测控系统中,我们经常会采用上位机和下位机的开发控制模式。下位机主要是用来采集数据,可以通过嵌入式控制器、单片机控制器、PLC等来实现。上位机主要是图形界面,用来实时显示采集数据,并进行数据分析及处理,同时可以控制下位机。上位机的实现可以通过各种高级语言,比如VB、Delphi等以及NI公司的图形化虚拟仪器软件开发环境LabVIEW.由于LabVIEW采用的是图形化的编程方法,所以无论你是否有过编程经验,都可以快速、高效地设计用户界面,实现与控制硬件的通信,并进行数据分析和处理。如今LabVIEW已经渗透到工业测量的各个领域,与此同时在嵌入式、FPGADSP、实时控制等领域也发挥着巨大的作用。

2.本实例实现的功能

首先利用单片机STC89C54通过串口发送“你好,LabVIEW”,LabVIEW将单片机发送到数据进行显示。通过这个实例来了解LabVIEW的串口通信设计。

3.下位机硬件设计与软件设计

(1)硬件设计

单片机串口通信硬件电路设计比较简单,主要包括单片机STC89C54最小系统以及MAX232和九针串口。

(2)软件设计

设计源码如下:

#include

#define uchar unsigned char

#define uint unsigned int

void SendStr(unsigned char *s);//发送

字符串

void DelayMs(uint xms)//延时子函数

{

uint i,j;

for(i=xms;i>0;i-)

for(j=110;j>0;j-);

}

void InitUART(void) //串口初始化

{

SCON=0×50; //SCON:模式

1,8-bitUART,使能接收

TMOD|=0×20; //TMOD:timer 1,mode

2,8-bit重装

TH1=0xFD; // TH1:重装值9600波

特率 晶振11.0592MHz

TR1=1; //TR1:timer 1打开

EA=1; //打开总中断

}

void main(void)

{

InitUART();

while(1)

{

SendStr(“你好!LabVIEW!”);

DelayMs(240);

DelayMs(240);

}

}

void SendByte(unsigned char dat)

{

SBUF=dat;

while(!TI);

TI=0;

}

void SendStr(unsigned char *s)

{

while(*s!='\0‘)//\0表示字符串结束

标志,//通过检测是否字符串末尾

{

SendByte(*s);

s++;

}

4.上位机LabVIEW前面板与程序框图

(1)相关函数介绍

在做LabVIEW串口通信的时候首先要安装VISA驱动,驱动可以从网上下载。LabVIEW对串口的操作主要是读操作和写操作。本实例主要是接受数据,也就是读操作,在这里首先介绍一下与此实例相关控件和函数。

①VISA资源名称

在“新式”控件选项卡下“I/O”子选项卡下有“VISA资源名称”控件。安装好VISA驱动后,与硬件连接好后,该控件下可以列出相应的COM口,可以选择合适的COM口。

②VISA配置串口函数

该函数位于函数选项卡下的“仪器I/O”

子选项卡下,主要用来对串口进行参数配置,包括波特率、数据比特、奇偶校验等。

③VISA读取和VISA关闭函数

VISA读取函数的功能是从VISA资源名称所指定的设备或接口中读取指定数量的字节,并将数据返回至读取缓冲区。VISA关闭函数的功能是关闭VISA资源名称指定的设备会话句柄或事件对象。

(2)程序框图设计

程序框图设计如图1所示。

基于labVIEW与单片机的上位机与下位机通信

5.测试

将硬件连接好后,上电,下载程序,运行labVIEW,我们可以看到在读取缓冲区里接收到了单片机发送来的字符串“你好!LavVIEW”.如图2所示。

基于labVIEW与单片机的上位机与下位机通信

6.总结

利用LabVIEW进行上位机设计,其界面美观,实现起来较容易,可以很方便的运用于各种测量监控系统中。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6043

    文章

    44617

    浏览量

    638225
  • LabVIEW
    +关注

    关注

    1976

    文章

    3657

    浏览量

    325426
  • 串口通信
    +关注

    关注

    34

    文章

    1627

    浏览量

    55706
  • 上位机
    +关注

    关注

    27

    文章

    945

    浏览量

    54983
  • STC89C54RD
    +关注

    关注

    3

    文章

    1

    浏览量

    2421
收藏 人收藏

    评论

    相关推荐

    Labview上位单片机通信

    我现在正在学习Labview单片机通信,用Labview上位,51
    发表于 03-17 23:49

    Labview上位与51单片机通信

    我现在正在学习Labview单片机通信,用Labview上位,51
    发表于 03-17 23:52

    实现基于Qt的上位下位进行串口通信

    Qt实现与单片机直接的通信上位+单片机代码测试环境项目目标实现效果关键通信类 QSerialport总结这是我大二下学期的
    发表于 12-08 07:26

    LabView单片机通信设计

    单片机和计算机通讯,也就是下位上位的通讯,利用单片机
    发表于 01-07 16:47 35次下载

    上位什么意思_上位下位的区别

    是直接控制设备获取设备状况的计算机,一般是PLC/单片机single chip microcomputer/slave computer/lower computer之类的。上位发出的命令首先给
    的头像 发表于 08-11 10:41 2.9w次阅读

    基于RS232串口实现PIC单片机下位与QT上位通信

    基于RS232串口实现PIC单片机下位与QT上位通信
    发表于 11-16 12:21 21次下载
    基于RS232串口实现PIC<b class='flag-5'>单片机</b><b class='flag-5'>下位</b><b class='flag-5'>机</b>与QT<b class='flag-5'>上位</b><b class='flag-5'>机</b><b class='flag-5'>通信</b>

    上位下位单片机的关系

    最近要做一个串口通信的系统,那必然会联系到上位下位概念,那单片机又是什么呢?我们一起来看一
    发表于 12-20 18:45 25次下载
    <b class='flag-5'>上位</b><b class='flag-5'>机</b>、<b class='flag-5'>下位</b><b class='flag-5'>机</b>、<b class='flag-5'>单片机</b>的关系

    上位下位的区别

    ,一般是PC,屏幕上显示各种信号变化(液压,水位,温度等)。上位发出的命令首先给下位下位
    发表于 04-26 14:32 5007次阅读

    java实现上位下位串口通信

    上位指的是PC,下位指的是单片机或者带微处理器的系统。下位
    发表于 05-08 09:51 1次下载
    java实现<b class='flag-5'>上位</b><b class='flag-5'>机</b>与<b class='flag-5'>下位</b><b class='flag-5'>机</b>串口<b class='flag-5'>通信</b>

    上位下位介绍

    /master computer/upper computer屏幕上显示各种信号变化(液压,水位,温度等)。下位下位是直接控制设备获取设备状况的计算机,一般是PLC/
    发表于 05-18 10:55 8次下载
    <b class='flag-5'>上位</b><b class='flag-5'>机</b><b class='flag-5'>下位</b><b class='flag-5'>机</b>介绍

    软件上位下位的区别

    的计算机,一般是PC,屏幕上显示各种信号变化(液压,水位,温度等)。上位发出的命令首先给下位下位
    发表于 06-05 11:02 2620次阅读

    上位下位是什么意思

    下位的意思是直接控制设备获取设备状况的计算机,一般是PLC/单片机single chip microcomputer/slave computer/lower computer之类的。
    发表于 06-05 11:09 4669次阅读

    基于单片机DHT22温湿度LabView上位监控系统设计

    本设计采用AT89C52单片机作为主控制器,液晶1602显示温湿度,LabView上位通信上位
    的头像 发表于 07-18 09:11 2223次阅读
    基于<b class='flag-5'>单片机</b>DHT22温湿度<b class='flag-5'>LabView</b><b class='flag-5'>上位</b><b class='flag-5'>机</b>监控系统设计

    上位下位是什么意思 上位下位的区别

    上位下位是计算机控制系统中两个重要的概念,它们在控制、通信和数据处理等方面发挥着关键作用。在本文中,我们将详细探讨
    的头像 发表于 06-06 10:11 6323次阅读

    上位下位实时通信的实现

    在工业自动化、远程控制、数据采集与处理等领域,上位下位之间的实时通信是实现高效、准确的数据交换和系统控制的基础。本文旨在介绍实现
    的头像 发表于 06-28 17:01 1714次阅读