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

发布者:幸福家庭最新更新时间:2010-10-11 来源: 仪表技术 关键字: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所示)

 

    该节点主要用于串口的初始化。主要参数意义如下:

        VISA resource name:VISA资源名称,本文指串口号。baud rate:波特率,默认为9600。
        data bits:一帧信息中的位数,LabVIEW中允许5~8位数据,默认值为8位。
        stop bits:一帧信息中的停止位的位数,可为1位、1位半或2位。
        Parity:奇偶校验设置。可为无校验、奇校验或偶校验。
        flow control:该参数数据类型为簇,用于串行通讯中的握手方式。

        (2)VISA Read节点(图4所示)

 

    该节点为串口读子VI,为本文中的主要节点,将串口中的数据读出,然后利用LabVIEW的强大数据处理功能对其进行分析处理。主要参数意义如下:

        VISA resource name:同上。

        byte count:用于设置所要读的字符数。由于LabVIEW的串行通讯子VI只允许对字符串的读写,因此本文中在进行数据处理时,必须要实现字符串与数字之间的正确转换。此外,若要读入当前串口中的所有字符,则要执行“VISA Bytes at Serial Port”子VI,用以确定将要读入的确切的字节数,然后将其输出作为VISA Read节点的输入即可。

        (3)VISA Close节点(图5所示)

 

    该节点用于将打开的VISA资源关闭。只有一个主要参数:

        VISA resource name:意义同上。

    本文所用LabVIEW串口通讯程序的波特率为9600,无奇偶校验,8位数据位,1位停止位,禁止软、硬件握手。

2单片机部分设计

2.1硬件部分

        MCS-51单片机内部有一个功能很强的全双工串行口,该串行口有4种工作方式,波特率可用软件设置,由片内的定时器/计数器产生,接收、发送均可触发中断系统,使用十分方便。有2个物理上独立的接收、发送缓冲器SBUF,对外也有两条独立的收、发信号线RXD(P3.0)和TXD(P3.1)。

    本文采用RS232串行接口标准,在电气特性上,RS232采用负逻辑,要求高低两信号间有较大的幅度,标准为:逻辑“1”在-5V~-15V之间,逻辑“0”在+5V~+15V之间,通常采用-10V左右为逻辑1,+10V左右为逻辑0。由于MCS-51系统的信号输入输出为TTL电平,逻辑1为3.8V左右,逻辑0为0.4V左右,因此,必须外接电路实现TTL电平到RS232电平的转换。本文采用MAX232E实现此转换。

    采用TLC0831芯片进行数据的采集。TLC0831芯片为8位逐次逼近电压型A/D转换器,支持单信道输入串口输出,极性设置固定,不需寻址。其主要特点为:8位分辨率;5V的电源提供0~5V的可调基准电压;输入输出可与TTL和MOS兼容。

    若要提高信号的采样频率,只需选择转换速度较快的A/D芯片即可。硬件部分原理图如图6。

2.2软件部分

    下面给出单片机软件部分的主要程序。波特率设置为9600,用定时器1产生波特率,串口工作在方式1,无奇偶校验。定时器0设定采样的时间间隔。TLC0831为A/D转换器数据采样子程序,SEND为单片机发送子程序。


3结论

    本文利用单片机进行前端数据采集,通过串口实现与LabVIEW的数据通讯,利用LabVIEW的强大信号分析处理功能,开发了一套投资少、操作简便的数据采集与信息分析系统(其虚拟面板如图7所示)。实验证明,该系统运行良好。

关键字:LabVIEW  虚拟仪器  单片机  串口  数据采集 引用地址:基于LabVIEW与单片机串口的数据采集系统

上一篇:风河为伦敦地铁列车电子系统提供高可靠性平台
下一篇:基于C8051和μC/OS-Ⅱ的数控机床嵌入式执行控制器实现

推荐阅读最新更新时间:2024-05-02 21:10

单片机page和bank切换问题
(1) 切换bank 问题 458一共有两个bank,每个都是由20-3f 。 如果需要切换bank来用的话,则需要改变操作寄存器 R4的第6和第7位来实现。我定义一个宏来处理: ;-----------------------macro defination--------------------- bank0 macro bc 0x04,6 bc 0x04,7 endm ;------------------------ bank1 macro bs
[单片机]
单片机接口的彩色TFT控制器RA8870的应用
1 概述 TFT因为轻薄,辐射少,数位化,已广泛应用在工业自动化,电力,电信,环保,医疗,金融等领域。 相对黑白模块,TFT液晶显示模块有它的复杂之处,它有显示接口多样,外围电路复杂,没有成熟的统一的驱动控制芯片,因此对客户来说,选择液晶屏、驱动控制方案、配件、以及应用调试都需要相当专业的人员来进行。所以对很多想用TFT的单片机用户来说,这是一座很高的门槛,一担心单片机系统要升级,二怕速度不够,效果不好,三怕成本过高,四怕编程麻烦。      内部方块图   系统方块图 3 RA8870应用接口 3.1应用接口图(一)   3.2应用接口图(二)   4. RA8870与数字屏模拟屏接口图   在使用模拟 TFT 屏时必
[单片机]
基于STM32的Uart2串口问题
买了一块1元的活动板子,移植了RTT(RT-THREAD)的国人嵌入式操作系统。系统能够正常跑起来,接着就按照RTT的官网教程,写了一个串口驱动。 原来定义的是UART1的端口,但是没有找到板子的USART1的引脚,虽然STM32可以映射,但是仍然没有看到有甩出来的引脚。初略看了一下官网的使用手册,发现图上有USART2引出来。 上图看一下, 好家伙,那就直接接地,接TX与RX到PC端的USB转串口吧。 杯具来了,发现无论如何自己的程序都没有输出打印,怀疑自己的代码有问题。用mbed的示例BIN文件试试,也发现不行。难道是电平问题?换了别人使用的开发板与PC的USB转串口,oh mygod!!还是不行。 心灰意冷,
[单片机]
基于STM32的Uart2<font color='red'>串口</font>问题
基于单片机的直流电机转速测量设计
随着单片机的不断推陈出新,特别是高性价比的单片机的涌现,转速测量控制普遍采用了以单片机为核心的数字化、智能化的系统。本文介绍了一种由单片机C8051F060作为主控制器,使用霍尔传感器进行测最的直流电机转速测量系统。 l转速测量及控制的基本原理 1.1转速测量原理 转速的测量方法很多,根据脉冲计数来实现转速测量的方法主要有M法(测频法)、T法(测周期法)和MPT法(频率周期法),该系统采用了M法(测频法)。由于转速是以单位时间内转数来衡量,在变换过程中多数是有规律的重复运动。根据霍尔效应原理,将一块永久磁钢固定在电机转轴上的转盘边沿,转盘随测轴旋转,磁钢也将跟着同步旋转,在转盘下方安装一个霍尔器件,转盘随轴旋转时,受磁钢所产生
[单片机]
基于<font color='red'>单片机</font>的直流电机转速测量设计
基于单片机P89C669的无线PBX系统设计
  0 引言   随着我国通信技术的迅猛发展,通信网络技术层次、运行管理水平跃居世界前列,规模居世界首位。但在电话通信领域,却出现了令人尴尬的局面:一方面,通信设备制造商致力于第三代网络通信设备的研究和生产,功能强大、性能优异的交换设备层出不穷;另一方面,对于一类特殊的用户群体,比如中小型集团公司,旅游公司,厂矿小企业职工、偏远、山岭地区的人民群众、海岛官兵等,普通的电话交换机即一个话机接入一个外线的模式已经远远不能满足他们工作的要求,并且带来诸多不便,但选用专用交换机太昂贵且会造成浪费。   在国内已有人做过这方面的研究工作,小型程控交换机便是其中的一种解决方案,但是它的功能单一,实现的仅仅是内部话机的相互呼叫免费,而在
[嵌入式]
AT89S51单片机实验系统的开发与应用
摘要:针对传统单片机实验系统依赖于仿真器调试,实验成本高且效率低,不适应现代科技的开发要求的问题,为改善单片机实验系统的性能,采用在系统编程(ISP)的方法,利用AT89S51芯片设计了一种单片机实验系统。实验表明系统结构简单,实用性强,达到了工科类高职生快速掌握单片机的基础知识的预期效果。 关键词:AT89S51;实验系统;ISP;74LS164 目前单片机应用已渗透到各个领域,单片机技术的发展也因此日新月异。作为实践性很强的应用型学科,单片机研发及教学离不开实验。传统的单片机实验系统需要频繁拔插烧写单片机芯片来编程,依赖于仿真机调试,实验成本高且效率低,已不适应现代科技开发需求。如何充分合理利用单片机的性能,方便用户高效学
[工业控制]
AT89S51<font color='red'>单片机</font>实验系统的开发与应用
基于MC9S12DT128B的电池数据采集系统设计
  1 前言   目前, 电池在实际使用中普遍存在的问题是电荷量不足, 一次充电行驶里程难以满足实用要求。   另外, 用可测得的电池参数对电池荷电状态( SOC,S tate- O f- Charge)作出准确、可靠的估计, 也一直是电动汽车和电池研究人员关注并投入大量精力的研究课题。因此有必要建立动力电池测试平台, 利用该平台对电池相关参数进行全面、精确的测量, 实现电池性能试验, 工况模拟和算法研究, 确定最合理的充放电方式及更为精确的SOC 估算方法, 从而合理的分配和使用电池有限的能量, 尽可能延长电池的使用寿命, 进一步降低电动汽车的整车成本。与以往的电池测试系统相比, 该测试平台可全面监测电池相关参数, 并加入充
[单片机]
基于MC9S12DT128B的电池<font color='red'>数据采集</font>系统设计
51单片机动态数码管
主要区分位选和段选 段选数据 unsigned char code DIG_CODE = { 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; //0、1、2、3、4、5、6、7、8、9、A、b、C、d、E、F的显示码 位选数据 0xfe,0xfd,0xfb,0xf7, 1111_1110 1111_1101 1111_1011 1111_0111 0xef,0xdf,0xbf,0x7f
[单片机]
51<font color='red'>单片机</font>动态数码管
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved