一种用AVR 单片机驱动的线阵CCD 数据采集系统

作者:  杨敏虹   发布日期:2006-06-29 18:36   查看数:0
中文摘要:

   文章讨论了一种用单片机控制的线阵CCD 数据采集系统。在该系统中,CCD 用单 片机直接驱动,同时,单片机控制A/ D 转换器和先进先出寄存器保存一场完整的数据;该系统可与其他单片机或PC 的并口相连进行数据交换


1  概述
     线阵CCD (charge coupled device ,电荷耦合器 件) 作为一种高精度的一维固态图像传感器在测量 控制领域得到广泛的应用。CCD 的驱动一般由使 用者自行完成。目前驱动方式主要有两种,一种是 用CPLD(复杂可编程逻辑器件) 实现,它具有高速、 定时准确的优点,但芯片体积大、价格较高。另一种 是用小型单片机实现,单片机体积小,调试方便,虽 然它在较高频率下较难输出均匀的定时波形,但如 果数据采集也由该单片机控制的话,均匀定时就非 必要,这时系统的精度并不会受到任何影响。
3  AVR单片机
     AVR系列单片机是Atmel 公司生产的8 位 RISC结构单片机,大多数指令包括I/ O 指令的执 行时间为单个时钟周期,因而具有很高效率。我们 采用的单片机型号为AT90S2313 ,它的芯片引脚如 图2 所示。要用它驱动CCD ,我们只需用PB 口和 PD 口的I/ O 功能。AT90S2313 的最高时钟频率为 12MHz , 因此, 当CCD 工作在1MHz 下时, AT90S2313 的每个Φ 周期有约10 个I/ O 指令,足 以产生较复杂的定时波形。  AT90S2313 的管脚与常用的单片机89C2051 兼容(除了复位脚) ,但89C2051 的每个I/ O 指令的 执行时间为12 个时钟周期。一个24MHz 的 89C2051 只相当一个2MHz 的AT90S2313 ,无法使 CCD 全速工作。在此,采用AVR 单片机的优点是 非常明显的, 只用较低的处理器时钟就可驱动 CCD ,大大降低了系统的时钟噪声。
4  CCD 数据采集系统
     我们设计的CCD 数据采集系统如图3 所示,它 由单片机AT90S2313 、一维CCD TCD1206 、差分放 大器、AD 转换器TLC5510 和先进先出RAM IDT7203 等组成。TL5510 是TI 公司的8bit 、 20MSPS 的模数转换器, IDT7203 是IDT 公司9 × 2048 结构的FIFO。每个Φ 周期的定时波形如图4 所示,图中Φ1 、Φ2 和RS 为CCD 的输入信号,AD 启 动信号为TLC5510 的CLK信号,AD 读为TLC5510 的OE 信号,FIFO 写为IDT7203 的WR 信号。在 该周期内,完成CCD 一个单元的信号输出、A/ D 转 换和FIFO 写操作。
5  结论
     采用AVR单片机控制核心的CCD 数据采集系 统,可以方便地实现CCD 的高频工作,并且可以可 靠地完成数据采集,该系统经使用证明能够满足要 求。 单片机,CCD,数据采集