基于USB接口和嵌入式芯片总线的数据采集系统

作者: 高美珍,洪家平,   发布日期:2006-06-03 10:21   查看数:0
中文摘要:

  介绍了基于USB总线集成芯片CH371数据采集系统的开发方法,包括硬件设计及应用软件的设计,同时也介绍了CH371的结构与特点。USB接口应用到数据采集系统中,提高了数据采集系统的速度,增强了系统的抗干扰能力和数据传输的可靠性,克服了使用数据采集卡带来的诸多问题,该系统还可与 MAX485结合来实现数据信息处理。特别是随着USB2.0的推出,USB的高传输速率必将使其在数据采集系统中的优势更加明显,同时会使其在更广阔的领域得到更深层次地应用。

英文摘要:

  Introduced a method to empolder the data acquisition system based on the chip CH371 of USB ,including the design of hardware and application software. At the same time ,the structure and characteristic of CH371 was introduced. To apply the interface of USB to the data acquisition ,system can increase the speed of data acquisition system ,can strengthen the ability of anti2 jamming and reli2 ability of data transmission. The system conquered many problems of using the card of data acquisition ,and realized telematic by joining together the usage with the MAX485. Especially negotiate along with the USB 2. 0 of release ,the USB advantage of high baud rate is more obvious in the data acquisition system ,it will widely use in the more deep level of structure at the same time.


2  系统硬件设计
     USB 数据采集系统硬件模块总体结构如图1 所 示。主要由与传感器相连的多路模拟切换开关电路、 信号放大电路、A/ D 转换器、隔离电路、89C51 芯片微 控制电路、USB 接口芯片及PC 主机等组成。 系统中,信号放大电路采用AD8321。在高速数 据采集系统中,由于现场输入信号是高频模拟信号, 因而信号的变化范围都比较大,如果采用单一的增益 进行放大,那么放大以后的信号幅值有可能超过A/ D 转换的量程,所以必须根据信号的变化相应地调整放 大器的增益。在自动化程度较高的系统中,希望能够 在程序中用软件控制放大器的增益,AD8321 适合在 数据采集系统中作前置放大。 USB 接口芯片采用CH371。多路模拟输入信号经 多路模拟开关控制将其中的一路接入信号放大器,信 号放大器能自动调整增益对输入的信号在A/ D 转换 器的量程内进行信号放大,A/ D 转换器经光电隔离后 将信号送入89C51 单片机,89C51 系统将A/ D 转换器 采集的数据存储在FIFO 存储器中,一旦FIFO 存满, SIE 立刻对数据进行处理,然后89C51 系统将数据从 FIFO 存储器中读出,由收发器通过数据线(D + 、D - ) 送至主机。
3  数据采集系统的接口
      
硬件接口电路
     CH371 芯片具有通用的被动并行接口,可以直接 连接多种单片机、DSP、MCU 等。图3 是常用的MCS - 51 系列与CH371 接口的应用电路,CH371 芯片可以通 过D7~D0、- RD、- WR、- CS、ALE 直接挂接到U2 (AT89C51) 的系统总线上。  
PC 机端的软件接口
     PC机端的软件接口可根据需要采用VB、VC 或 Delphi 编程。由于应用层接口是由CH371 动态链接 库DLL 提供的面向功能应用的API. 在应用层接口,动 态链接库将CH371 驱动程序提供的管道进一步分解 为多个功能应用API ,每个API 都实现一个具体的功 能,并用简便易用的API 参数代替设备级接口中所要 求的数据格式,所有API 在调用后都有操作状态返 回,但不一定有应答数据。只需要选择特定API 实现 所需功能,就像通过并口、串口传输数据或者读写计 算机硬盘中的文件一样。例如,调用数据传输API 就 可以与本地端控制器互传数据,调用I2C 操作API 就 可以读写I2C 接口的目标设备。CH371 动态链接库提 供的API 主要包括:设备管理API、数据传输API、中断 查询API、I2C 操作API、直接控制API. PC 机端的软件接口可以直接调用CH371 提供的 面向功能应用的API , 如果用VB 开发PC 机端的软 件接口, 首先要将驱动程序、动态链接库拷贝到计 算机中, 再将动态链接库的访问入口及函数定义入 口添加至VB 项目中, 即将提供的VB 实例程序中的 module 功能模块添加到工程项目下即可。此时对 USB 设备的通信编程就几乎和访问本地硬盘中的文 件差不多了, 然后根据需要对取得的数据进行分析 和处理即可。
CH371 USB接口芯片与89C51单片机接口电路图
     USB,数据采集,89c51单片机,