新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于USB的嵌入式CCD图像数据采集系统的实现

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

作者:王立萍 李传军时间:2008-06-02来源:电子技术应用收藏

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

本文引用地址:http://www.eepw.com.cn/article/83477.htm

  1 硬件设计

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

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

     传感器输出的模拟信号,经多路开关选通接入信号放大器,信号放大器能自动调整增益的大小,对输入的信号在A/D转换器的量程内进行信号放大,然后由ARM芯片控制进行A/D转换,再将转换后的数字信号送入微控制器,由接口电路传递给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相应端点的缓存中。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)

上一页 1 2 下一页

评论


相关推荐

技术专区

关闭