Board logo

标题: 基于LabVIEW与单片机串口的数据采集系统 [打印本页]

作者: chenchao8848    时间: 2008-4-19 10:04     标题: 基于LabVIEW与单片机串口的数据采集系统

1LabVIEW部分设计
1.1VISA
简介
LabVIEW
提供了功能强大的VISA库。VISA(Virtual Instrument Software Architecture)——虚拟仪器软件规范,是用于仪器编程的标准I/O函数库及其相关规范的总称。VISA库驻留于计算机系统中,完成计算机与仪器之间的连接,用以实现对仪器的程序控制,其实质是用于虚拟仪器系统的标准的APIVISA本身不具备编程能力,它是一个高层API,通过调用底层驱动程序来实现对仪器的编程,其层次如图1所示。VISA是采用VPP标准的I/O接口软件,其软件结构包含三部分,如图2所示。

与其他现存的I/O接口软件相比,VISAI/O控制功能具有如下几个特点:适用于各种仪器类(VXI仪器、GPIB仪器、RS-232串行仪器、消息基器件、寄存器器件、存储器器件等仪器);适用于各种硬件接口类型;适用于单、多处理器结构或分布式网络结构;适用于多种网络机制。
VISA
I/O软件库的源程序是唯一的,其与操作系统及编程语言无关,只是提供了标准形式的API文件作为系统的输出。


作者: chenchao8848    时间: 2008-4-19 10:04

1.2VISA库中的串口通讯函数
本文用到的主要的串口通讯函数调用路径为:
FunctionsInstrument I/OVISAVISA AdvancedInterface SpecificSerial中。
(1)VISA Configure Serial Port
节点(3所示)

 

该节点主要用于串口的初始化。主要参数意义如下:
VISA resource name:VISA
资源名称,本文指串口号。baud rate:波特率,默认为9600
data bits
:一帧信息中的位数,LabVIEW中允许58位数据,默认值为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位停止位,禁止软、硬件握手。


作者: chenchao8848    时间: 2008-4-19 10:05

2单片机部分设计
2.1
硬件部分
MCS
-51单片机内部有一个功能很强的全双工串行口,该串行口有4种工作方式,波特率可用软件设置,由片内的定时器/计数器产生,接收、发送均可触发中断系统,使用十分方便。2个物理上独立的接收、发送缓冲器SBUF,对外也有两条独立的收、发信号线RXD(P3.0)TXD(P3.1)
本文采用
RS232串行接口标准,在电气特性上,RS232采用负逻辑,要求高低两信号间有较大的幅度,标准为:逻辑“1”在-5V-15V之间,逻辑“0”在+5V+15V之间,通常采用-10V左右为逻辑1+10V左右为逻辑0。由于MCS-51系统的信号输入输出为TTL电平,逻辑13.8V左右,逻辑00.4V左右,因此,必须外接电路实现TTL电平到RS232电平的转换。本文采用MAX232E实现此转换。
采用
TLC0831芯片进行数据的采集。TLC0831芯片为8位逐次逼近电压型A/D转换器,支持单信道输入串口输出,极性设置固定,不需寻址。其主要特点为:8位分辨率;5V的电源提供05V的可调基准电压;输入输出可与TTLMOS兼容。
若要提高信号的采样频率,只需选择转换速度较快的
A/D芯片即可。硬件部分原理图如图6
作者: chenchao8848    时间: 2008-4-19 10:05

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







欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0