- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于LabVIEW与USB接口的实时数据采集系统.doc
基于LabVIEW与USB接口的实时数据采集系统
摘要:本文设计了一种基于LabVIEW与STC12C5410AD单片机的数据采集系统。单片机采集到的数据通过CH341T芯片的USB转串口的功能,实现了只用一条USB线就可以把数据传输到LabVIEW中进行显示和分析。从下位机和上位机两个部分阐述了系统的设计。实验证明,系统能实时精确的再现单片机采集的低频信号。
关键词:LabVlEW;数据采集;STC单片机;USB
1 数据采集系统
工程上使用具有PCI、PXI、USB、并口以及串口的计算机来获取测试数据,称为基于PC的数据采集系统。其中一种是通过插入式的数据采集卡直接获取数据传输给计算机。鉴于数据采集卡的价格昂贵,且安装不方便等缺点,本文提出使用STC单片机作为前端的数据采集系统,利用CH341T芯片的USB总线转异步串口的功能,将采集数据只通过一条USB线传输给PC机,最后在LabVIEW平台下进行数据的显示、分析、处理。
1.1 系统组成与工作原理
本系统总体结构框图如图1所示。主要包括有STC12C5410AD单片机和CH341T转换芯片组成的数据采集、转换、传输部分,以及基于PC机的LabVlEW软件构成的数据处理部分。首先,被测电压模拟信号通过电平变换电路进入STC单片机的AD转换通道,待转换完成后利用CH341T芯片的USB转串口的功能,通过USB接口传输给PC机,最后由LabVIEW软件分析处理。
2 下位机系统设计
2.1 硬件设计部分
系统硬件原理图如图2所示。系统采用的MCU为STC12C5410AD,采用的USB接口芯片为CH- 341T,利用该芯片的USB转串口的功能将数据传输到上位机,从而构成数据采集系统。
2.1.1 STC12C5410AD单片机
STC12C5410AD系列单片机是单时钟/机器周期(1T)的兼容8051内核单片机,是高速/低功耗的新一代增强型8051单片机,内部集成MAX810专用复位电路。10KBFLASH程序存储器,512字节SRAM,有8路10位高速A/D转换器,速度可达100KHz。实际工作频率可达48MHz。在应用时,需根据实际情况设定晶振频率,本系统采用11.0592MHz的晶振。本例中采用P1.0作为A/D转换通道。由于各A/D转换通道的输入电压范围为0~5V,对于双极性信号来说,直接输入会被削掉负半波。为了解决上述问题,采用了高速低噪声双运算放大器NE5532,根据运放电路的虚短、虚断原则,其输出OUT=2.5-IN。可以将-2.5v~2.5V的电平转换到0~5v,这样满足了输入信号的双极性要求。
2.1.2 CH341T芯片
随着计算机通讯技术的不断发展,串口的通讯速度越来越不能满足现在的通信要求。因此越来越多的计算机,尤其是笔记本电脑都不再保留串行接口,取而代之的是方便、高速、标准的USB接口。然而对于需要用串口通信的设备来说,是个麻烦的问题。为了解决这个问题,本系统采用CH341T芯片将单片机通过USB接口直接连接到PC机上,方便了没有串口的上位机与下位机的通信,解决了上位机没有串行接口的问题。CH341T芯片的特点如下:
(1)仿真标准串口,用于升级原串口外围设备,或者通过USB增加额外串口。
(2)计算机端Windows操作系统下的串口应用程序完全兼容,无需修改。
(3)硬件全双工串口,内置收发缓冲区,支持通讯波特率50b/s~2Mb/s。
(4)支持5、6、7或者8个数据位,支持奇校验、偶校验、空白、标志以及无校验。
2.2 软件设计部分
本系统将STCl2C5410AD的P1.0口作为A/D转换的通道,要使用A/D转换功能就必须进行相应的寄存器设置。STC单片机的寄存器见表1所示。
1)P1M0,P1M1:P1口工作模式设置PlM0=0x01,P1M1=0x01。将P1口设置为开漏模式。
2)ADC CONTR:A/D转换控制器
ADC_POWER:ADC电源控制位。
ADC_ POWER=0:关闭ADC电源。ADC POWER=1:打开A/D转换器电源,初次打开内部A/D转换模拟电源,需适当延时,等内部模拟电源稳定后,再启动A/D转换。
ADC_START:模数转换器(ADC)转换启动控制位,设置为1时,开始转换,转换结束后为0。
SPEED1,SPEED0:模数转换器转换速度控制位。
ADC_FLAG:模数转换器转换结束标志位,当A/D转换完成后,ADC_FLAG=1,一定要软件清0。
CHS2/CHS1/CHS0:模拟输入通道选择如表2所示。
下位机程序流程图如图3所示。下位机的程序主要包括三个部分:串口初始化子程序、A/D转换初始化子程序、串口发送子程序。其中A/D转换初始化子程序主要是设置ADC CONTR、P1M0、P1M1等寄存器。
文档评论(0)