微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于LabVIEW与凌阳SPCE061A实现串口数据采集

基于LabVIEW与凌阳SPCE061A实现串口数据采集

时间:01-31 来源:互联网 点击:

要求高低两信号间有较大的幅度,标准为:逻辑“1”在 -5V~-15V之间,逻辑“0”在+5V~+15V之间,通常采用-1V左右为逻辑1,+10V左右为逻辑0。本电路采用符合RS-232标准的驱动芯片MAX232EPE实现此转换。由于SPCE061A的信号输入输出为TTL电平,逻辑1为3.3V左右,逻辑0为0.4V左右,而MAX232EPE 要求+5V供电,因此,在 MAX232EPE和SPCE061A之间加了电平匹配电路。

整个电路接口简单,可靠性高。硬件部分原理图如图5所示

图5 硬件原理图

2.2软件部分

LabVIEW软件与串口实现数据通讯的程序图,如图6所示,由于SPCE061A发送给Labview的是字符串数据,所以先把该字符串转换为字符数组,然后通过一个数组索引指定数组的第一个字符显示并形成波形。

图6. LabVIEW串口通讯程序图

单片机SPCE061A利用通用串行接口UART实现串口通讯部分程序:

//************************主程序*****************************************//

L_ResendData:

L_Check_TxRDY:

R2 = [P_UART_Command2];

R2 = 0x0040; //检测输出是否READY

JZ L_Check_RxRDY; //发送8位十六进制数cc

R1 = [recFlag];

CMP R1,0x0000; //是否接收过数据

JZ L_Check_RxRDY;

[P_UART_Data] = R4; //发送数据

R1 = 0x0000; [recFlag] = R1;

L_Check_RxRDY:

R2 = [P_UART_Command2]; //检测是否有数据接收

R2 = 0x0080;

JZ L_Check_RxRDY;

R4 = [P_UART_Data]; //接收数据

R1 = 0x0001;

[recFlag] = R1; //设置接收标识符

goto L_ResendData;

3.应用实例

如图7所示,利用该数据采集系统进行一温度数据的采集,在图5的硬件原理图中,将铂热电阻PT100测得的温度电压值(该测温电路由电压跟随和电压放大电路组成)送入到SPCE061A的IOA4端口,通过该路AD转换通道,将电压值经过数据处理后转换为16进制数据值,并将处理后的温度数据通过串口发送给LabVIEW,经过分析对比PT100铂电阻准确的温度曲线与所测得的温度曲线可以得出在该温度采集系统的软件编程过程中应该对AD转换后的数据乘以一个多大的温度系数以及在分段温度系数的情况下得出温度系数转折点,使处理后的所得的温度数值尽可能的接近真实温度值。

4 结论

LabVIEW作为一个具有良好开放性的虚拟仪器开发平台,为面向仪器的编程提供了强有力的支持,在LabVIEW环境下能够开发出各种功能强大、开放性好的虚拟仪器软件,构造出实用的计算机辅助测试、分析与控制系统。本文利用SPCE061A进行前端数据采集,通过串口实现与LabVIEW的数据通讯,利用LabVIEW的强大信号分析处理功能,开发了一套投资少、操作简便的数据采集与信号分析系统。实验证明,该系统运行良好。

参考文献

[1]LabVIEW User Manual.USA: National Instruments Corporation.1998

[2]杨乐平等.LabVIEW程序设计与应用.电子工业出版社,2001

[3]刘君华等.虚拟仪器图形化编程语言LabVIEW教程.西安电子科技大学出版社,2001

[4] 李晶皎. 嵌入式语音技术及凌阳16位单片机应用. 北京航天航空大学出版. 2003

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top