基于USB总线和89C51单片机的数据采集系统设计
 
- UID
- 1029342
- 性别
- 男
|
基于USB总线和89C51单片机的数据采集系统设计
摘要:本文介绍了基于USB总线的数据采集设备的开发方法,包括硬件设计、firmware(固件)设计、基于windows驱动程序模型(WDM)的设备驱动程序设计以及应用软件的设计,同时也介绍了基于USB的远程数据采集系统。
在工业生产和科学技术研究过程的各行业中,常常要对各种数据进行采集,现在常用的采集方式是在PC机或工控机内安装数据采集卡,如A/D卡及RS-422卡、RS-485卡。采集卡不仅安装麻烦,易受机箱内环境的影响,而且由于受计算机插槽数量和地址、中断资源的限制,不可能挂接很多设备。而通用串行总线(Universal Serial Bus,简称USB)的出现能很好地解决以上这些冲突。我们利用89C51单片机设计了基于USB总线的数据采集设备,并可与MAX485结合起来实现数据的远程采集。
系统硬件设计
USB数据采集系统硬件模块主要由串行A/D转换器、89C51芯片、USB接口芯片和多路模拟开关等组成。硬件总体结构框图如图1所示。
USB接口芯片采用National Semiconductor公司的一种专用芯片USBN9602。该芯片内部集成微处理器接口、 FIFO存储器、时钟发生器、串行接口引擎(SIE)、收发器、电压转换器,支持DMA、微波接口。
多路模拟输入信号经多路模拟开关控制将其中的一路接入串行A/D转换器,A/D转换器经光电隔离后串行输出到移位寄存器,移位寄存器将此结果转为8位并行数据,89C51系统通过8位的并行接口传送A/D转换器采集的数据,存储在FIFO存储器中;一旦FIFO存满,SIE立刻对数据进行处理,然后89C51系统将数据从FIFO存储器中读出,由收发器通过数据线(D+、D-)送至主机。 USBN9602与89C51的具体接口电路如图2所示。图中USBN9602的CLKOUT与89C51的XTAL1相连,即USBN9602的时钟输出为89C51提供时钟输入。USBN9602的复位端接RC电路以保证复位电路可靠地工作。由于晶振频率较高,结合USBN9602内部网络,在XOUT端串接100mF电容及470mH电感,起稳定内部振荡频率的作用。
 |
|