微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > MCU和DSP > 基于USB总线和89C51单片机的数据采集系统设计

基于USB总线和89C51单片机的数据采集系统设计

时间:11-15 来源:互联网 点击:
应用程序设计

用户态的应用程序是数据采集系统的中心,其主要功能为:开启或关闭USB设备、检测USB设备、设置USB数据传输管道、设置A/D状态和数据采集端口、实时从USB接口采集数据、显示并分析数据。应用程序主流程图如图4所示。



图4 应用程序主流程图

由于USBN9602提供的FIFO不超过64字节,当它存满后,USBN9602自动将数据打包即时请求读入数据,由SIE自动发送数据包。另外,当系统启动A/D模块后,便会创建两个线程:采样线程和显示存盘线程。采样线程负责将采集数据写到应用程序提交的内存;而显示存盘线程负责给应用程序发送显示和存盘消息。当应用程序接收到此消息后,便从它提交的内存中读取数据并显示和存盘。此处需要注意的是采样线程和显示存盘线程在读写应用程序提交的内存时要保持同步。

远程数据采集系统设计

传输距离是限制USB在工业现场应用的一个障碍,即使增加了中继或Hub,USB传输距离通常也不超过几十米,这对工业现场而言显然太短了。现在工业现场有大量采用RS-485传输数据的采集设备,其优点主要为传输距离可达到1200米以上,并且可以挂接多个设备,但传输速度慢,且需要板卡支持,安装麻烦。但将RS-485与USB结合起来就可以优势互补,产生一种快速、可*、低成本的远程数据采集系统。

设计这样一个系统的关键设备是RS-485"USB转换器,可以采用USBN9602+89C51+ MAX485实现这一功能,整个系统的基本思想是:将传感器采集到的模拟量数字化以后,利用RS-485协议将数据上传,上述RS-485"USB转换器在主机端接收485的数据并通过USB接口传输至主机进行处理,而主机向USB发送数据时,数据通过RS—485"USB转换口转换为485协议向远端输送,从而能够实现远程数据的双向传输。如图5所示。

软件方面的设计跟前所述类似。



图5 采用USB和485实现远距离数据传输

结语

基于USB外设的应用目前在国内外处于高速发展阶段,利用USB进行数据采集和工业控制已得到成功应用,特别是随着USB协议2.0的推出,数据传输速率高达480Mbps,如此高的传输速率必将使USB在数据采集中的优势更加体现出来,同时会使其在更广阔的领域得到更深层次的应用。

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

网站地图

Top