基于USB的嵌入式CCD图像数据采集系统的实现

2008-06-02 13:36:21来源: EDNchina

  CCD图像数据的采集与普通视频信号的采集相比,其最大的特点是数据传输速率高,传输通道多。目前,通用的CCD图像数据采集方法是在计算机中插入高速数据采集卡,采集卡与CCD相机间通过点对点物理层接口(如RS-422、RS-485)进行数据传输,高速数据采集卡接收到数据并通过PCI总线将数据写入计算机内存,然后利用采集卡的存储功能将数据通过IDE接口写入计算机硬盘。这种方法虽然简单可靠,但对多通道、高速图像数据的采集在数据传输和存储方面有一定的局限,容易引起数据帧的丢失,并且随着传输通道的增多,引起传输导线数量增加,系统功耗及噪声也随之增大。通用串行总线USB能很好地解决这些问题,具有连接方便、无需外接电源、即插即用、支持热插拔、高带宽、低功耗、低成本、动态加载驱动程序,级联星型拓扑结构扩充外设数量等特有优点,在主机和数据采集系统之间可以实现简单、快捷、双向、可靠的连接和通讯。

  1 硬件设计

  系统设计应具有稳定性、灵活性、通用性等特点。稳定性是指不仅要保证数据的无失真传输,而且要保证数据连续无丢帧存储。灵活性体现在系统的信号输入路数、系统的存储容量、磁盘连接方式等具有模块化与可重组性,系统稍做变通即可用于其他高速视频图像的采集。通用性体现在系统能适应于多个通道,不同速率的CCD图像数据采集,即要求系统能实现通道合并,并有较宽的数据传输频带。

  USB数据采集系统硬件结构图如图1所示。

  

  传感器输出的模拟信号,经多路开关选通接入信号放大器,信号放大器能自动调整增益的大小,对输入的信号在A/D转换器的量程内进行信号放大,然后由ARM芯片控制进行A/D转换,再将转换后的数字信号送入嵌入式微控制器,由USB接口电路传递给PC机进行数据处理,同时将PC机端的客户应用程序发出的控制信号通过USB接口传送到以ARM芯片为核心的数据采集系统。

  1.1 方案选择

  1.1.1 USB接口芯片和主控制器芯片的选择

  USB控制器有两类,一类是集成了USB接口的单片机,如Cypress公司生产的EZ-USB(基于8051)系列芯片CY7C68013、CY7C64613等;另一类是单独的USB控制器,如Philips公司的PDIUSBD12、ISP1581,NetChip公司的NET2888,National公司的USBN9603、USBN9604等。前种芯片虽然编程简单,但需要购置专门的开发系统,投资较大,并且单片机性能有限;后者的特点是价格低廉、连接方便、可靠性高,但其片上不带CPU,必须选择微处理器来进行协议处理和数据交换。本系统选择了片上不带CPU的性价比较高的USB2.0控制芯片ISP1581,它完全符合USB 2.0规范,速度可达480Mbps。采用ISP1581可以快速开发出高性能的USB2.0设备;同时为了满足速度要求,主控器芯片选择了高性能、低功耗的ARM芯片S3C44B0X。

  1.1.2 信号放大电路和A/D转换芯片的选择

  在高速数据采集系统中,现场输入信号是变化范围较大的高频模拟信号,如果采用单一的增益放大,则放大后的信号幅值有可能超过A/D转换的量程,所以必须根据信号的变化来相应地调整放大器的增益。本系统选用了AD8321这种频带宽、噪声低、增益可数控,且十分适合在数据采集系统作前置放大用的高频模拟信号调理芯片。高频模拟信号放大后被送到模数转换器中,S3C44B0X自身虽集成有8路10位ADC,但其内部集成的A/D转换只能输入0~100Hz的模拟信号,且没有采样保持电路,因此需要对其进行扩展。为了满足8路采集,选择了高速A/D转换芯片AD7829,最大转换速率2MSPS,转换时间为420ns。

  1.2 硬件接口电路

  本系统硬件接口电路连接如图2所示。

  

  本系统利用S3C44B0X的PD口为双向口进行扩展,将AD7829的CONVST与S3C44B0X的PD1相连,用于产生转换脉冲;AD7829的EOC与S3C44B0X的PD0相连,用于产生转换结束信号。采集信号经A/D转换后,数据先存放在S3C44B0X的寄存器里, S3C44B0X先发控制信号再发数据给ISP1581,在此将ISP1581的缓冲区定义为8个,分别写入8路转换后的数据。而PC机通过USB接口与ISP1581连接,ISP1581负责分类和解释PC机发来的信号,具体操作流程如下:PC机发送给USB设备的数据以包的形式写入ISP1581的缓存中,当缓存被写满或数据发送完毕后,ISP1581就给ARM发中断信号,ARM响应中断信号进入中断服务程序执行相应的包处理。另一方面,USB设备不能主动向主机发送数据,只有当PC机要求USB设备发送数据时,ARM才将主机需要的数据写入ISP1581相应端点的缓存中。

  数据采集是由S3C44B0X的PD口发出脉冲作为AD7829的转换脉冲CONVST,当AD7829转换结束时,EOC输出有效低电平,S3C44B0X接到有效电平后,发下一路地址,然后读数据。当AD7829的和信号有效时,在数据读入S3C44B0X的数据缓冲区的同时将下一路的地址打入,这样循环采集8路模拟输入,直到数据采集结束,本过程的流程图如图3所示。

  

  2 USB部分软件设计

  USB系统软件由固件程序、USB系统驱动程序和应用程序三部分构成。

  2.1 固件程序的开发

  固件程序实际上是置于微控制器内部的程序文件,用来辅助硬件完成通信任务。通过ISP1581的INT中断信号与微控制器S3C44B0X的EINT0中断口相连,当接收数据或发送数据成功时就会产生中断,固件程序的任务就是对这些中断进行响应,完成设备的配置,让USB驱动程序知道设备的能力,接收USB主控制器发来的数据和向主机发送数据。设备固件程序是设备运行的核心,本系统采用Keil C进行编写。SP1581的固件程序采用模块化设计,包括主循环程序、中断服务程序、USB标准请求处理和批量数据传送请求处理四部分。固件模块结构见图4。

  

  2.2 应用程序

  应用程序包括Win32DLL程序和用户应用程序。Win32动态连接库包含共享函数库的二进制文件,可以被多个应用程序同时使用。客户应用程序则是实现数据采集系统功能的软件程序,在本系统中采用Visual C++进行编写。

  2.3 USB系统驱动程序

  USB系统驱动程序采用分层结构模型(WDM),该模型定义了分层的驱动程序, USB设备驱动程序不直接与硬件对话,而是通过USB驱动程序接口将USB请求块提交到总线驱动程序进而完成硬件操作。从系统的角度来说,在USB设备插入主机后,主机检测到USB设备,读取设备描述符,然后主机根据设备描述符中提供的厂商ID和产品ID等,启用相应USB设备驱动程序,读取USB设备中的配置描述符、接口描述符和端点描述符,根据需要选择恰当的配置、接口和端点,确定传输方式。这一过程完成后,PC机与USB设备之间就能够进行数据传输了。

  USB总线的特点使其非常适合用作小型仪器与主机之间的通讯接口,实现主机与便携式仪器之间的简单、快速和可靠的连接。将USB接口应用到数据采集系统中,提高了数据采集系统的速度,增强了系统的抗干扰能力和数据传输的可靠性。本文详细介绍了基于ARM芯片S3C44B0X和USB2.0接口控制芯片ISP1581的数据采集系统的软硬件设计开发方案,设计开发过程较为繁杂,涉及到多方面的软件程序与硬件电路的联合使用,通过实验测试,效果良好。

  参考文献

  [1] 罗浩,杨晓非.脱机式数据采集系统的设计[J]. 微计算机信息,2006,22(4):93-95.

  [2] 高美珍,洪家平. 基于USB接口和嵌入式芯片总线的数据采集系统[J]. 仪表技术与传感器,2005,(8):51-53.

  [3] 邢微,刘开华.数据采集系统USB2.0接口设计[J].电子测量技术,2006,29(1):12-13.

  [4] 夏益民,王广君. 基于USB总线的高速数据采集系统[J]. 国外电子元器件,2003,(10):20-23.

关键字:USB设备  USB系统  图像数据采集  USB总线  USB驱动  数据采集系统  固件

编辑:孙树宾 引用地址:http://www.eeworld.com.cn/afdz/2008/0602/article_720.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
USB设备
USB系统
图像数据采集
USB总线
USB驱动
数据采集系统
固件

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 视频监控 智能卡 防盗报警 智能管理 处理器 传感器 其他技术 综合资讯 安防论坛

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved