基于80C196KB的线阵CCD高速采集系统
1引言
电荷耦合器件(CCD)具有自扫描、光电灵敏度高和几何尺寸精确等一系列优点,因此在光电非接触测量中得到了广泛应用。它能将光强分布的空间信息转换为电信号序列信息,当它对空间光强分布一次采样后、以电信号形式串行输出。为了保证信号质量,在每个像素上光信号积分时间有严格限制,一般要求串行传送速率为几千到几兆赫兹。而在工业测量系统中,广泛使用的单片机指令速度相对较慢。对于80C196KB单片机,若外部时钟为12MHz,内部二分频后为 6MHz,多数指令执行周期都超过了1us,线阵TCD1208AP信号输出典型频率为1MHz。因而会由于采集速度过快,CPU速度跟不上而出现数据的丢失或混叠,所以必须设计高速数据采集系统。
为解决慢速CPU和高速数据采集的矛盾,我们采用DMA(Direct Memory Access)方式实现对线阵TCD1208AP输出数据的采集,当采集结束,CPU再从存储器读取数据。我们采用FIFO存储器(First In First 0ut Memory)实现数据的DMA方式存储,它有两个端口(输人口和输出口),并按先进先出的顺序来暂时存放数据,无需地址发生器。输人口和输出口的工作彼此是独立的,只要当前存放在FIFO中的数据少于FIF0的容量,就可以继续向FIF0中写入数据,当FIFO存满数据时,它就会阻止继续写人数据。同样,只要FIFO内部还存在数据,就可以继续从中读出数据,当FIFO中所有的数据被读完时,就可以继续写入数据。本文采用的是IDT7204,容量为 4096字节。由于向其写入一个数据的时间(12ns)远小于A/D转换时间,所以采集速度取决于A/D转换的速度。
2 系统硬件设计
系统主要由单片机80C196KB、线阵CCD及驱动电路、A/D变换和DMA传送电路组成,基本原理框图如图1所示:
2.1线阵TCD1208AP驱动信号的产生
线阵TCD1208AP是日本TOSHIBA公司生产的线阵CCD,它具有2160个像元,图2是其驱动信号的时序图:
图2 TCD1208AP驱动信号时序图
由时序图可以看出,芯片正常工作需要四路驱动信号,即:转移信号SH,其周期为光信号的积分时间tINT(INTEGRATION TIME);复位信号RS,时钟频率标准值为1MHz;两相移位时钟信号Φ1、Φ2,时钟频率为0.5MHz。TCD1208AP有2160个像素单元,正常工作时要有52个虚设单元输出(DUMMY OUTPUTS)信号。因为该器件是两列并行传输,所以在一个周期内至少要有1106(2212/2=1106)个Φ1脉冲,即TSH> 1106TΦ1。由时序图可以看出,当SH信号高电平期间,CCD积累的信号电荷包通过转移栅进入移位寄存器,移位脉冲Φ1、Φ2要求保持一个高和低的电平状态。
采用IC驱动方法产生驱动信号,系统用同一时钟对这四路驱动信号进行控制,已保证相互之间的确定时间关系,然后使用分频器对时钟脉冲分频以产生各路驱动信号所需的波形。
图1 系统构成框图
2.1.1 时钟信号的产生
使用电阻可编程晶振LTC1799提供准确的时钟,它的输出频率 可在1KHz~33MHz的范围内灵活变化 ,并可通过一个外部电阻
和一个三态分频器引脚div进行设置 。
LTC1799的外接电阻为 ,计算公式:
其中N为分频比,当div管脚接地时,N=1。2MHz时钟所需要的电阻 =50KΩ,8MHz时钟所需要的电阻
=12.5KΩ。
2.1.2 分频电路
分频电路可以选用D触发器(74HC74),带置位、清零端,较易控制。74HC74芯片用于二分频电路时,管脚
图5 数据采集程序流程图
4 结束语
基于单片机的线阵CCD的高速采集系统的设计,必须要解决两个关键的问题:第一,线阵CCD与接口电路必须有严格的同步关系,在设计中,用线阵CCD的行转移信号SH和采样信号RS作为同步信号,SH信号控制总线控制器的使能和禁止,实现数据总线的通和断,RS信号作为A/D变换的VIDSAMP信号,保证了对每一个输出像元的准确采集、变换。第二,要解决慢速CPU和高速数据采集的矛盾,设计中采用FIFO器件实现数据采集的DMA方式,很好的解决了这一矛盾。
参考文献:
[1] 王庆有.图像传感器应用技术.北京:电子工业出版社,2003.
[2] 孙涵芳.Intel 16位单片机.北京:北京航空航天大学出版社,1995.
[3] 张智辉.线阵CCD驱动电路设计的几种方法.仪表技术与传感器,2004,6:32~33.
[4] 日本TOSHIIBA公司线阵CCD数据手册.1997.
[5] 美国MAXIM公司MAX1101数据手册.1996.
- 80C196KB与PC机之间的远程通讯系统设计(03-14)
- 基于80C196KB和CPLD实时数据采集显示系统设计(10-14)
- 基于80C196KB的远程测控终端的设计(10-08)
- 基于单片机系统采用DMA块传输方式实现高速数据采集(02-27)
- 基于MSP430的高速线阵CCD采集系统设计(08-07)
- Windows CE 进程、线程和内存管理(11-09)