基于80C196KB的線陣CCD高速采集系統(tǒng)
1引言
電荷耦合器件(CCD)具有自掃描、光電靈敏度高和幾何尺寸精確等一系列優(yōu)點(diǎn),因此在光電非接觸測(cè)量中得到了廣泛應(yīng)用。它能將光強(qiáng)分布的空間信息轉(zhuǎn)換為電信號(hào)序列信息,當(dāng)它對(duì)空間光強(qiáng)分布一次采樣后、以電信號(hào)形式串行輸出。為了保證信號(hào)質(zhì)量,在每個(gè)像素上光信號(hào)積分時(shí)間有嚴(yán)格限制,一般要求串行傳送速率為幾千到幾兆赫茲。而在工業(yè)測(cè)量系統(tǒng)中,廣泛使用的單片機(jī)指令速度相對(duì)較慢。對(duì)于80C196KB單片機(jī),若外部時(shí)鐘為12MHz,內(nèi)部二分頻后為 6MHz,多數(shù)指令執(zhí)行周期都超過了1us,線陣TCD1208AP信號(hào)輸出典型頻率為1MHz。因而會(huì)由于采集速度過快,CPU速度跟不上而出現(xiàn)數(shù)據(jù)的丟失或混疊,所以必須設(shè)計(jì)高速數(shù)據(jù)采集系統(tǒng)。
為解決慢速CPU和高速數(shù)據(jù)采集的矛盾,我們采用DMA(Direct Memory Access)方式實(shí)現(xiàn)對(duì)線陣TCD1208AP輸出數(shù)據(jù)的采集,當(dāng)采集結(jié)束,CPU再?gòu)拇鎯?chǔ)器讀取數(shù)據(jù)。我們采用FIFO存儲(chǔ)器(First In First 0ut Memory)實(shí)現(xiàn)數(shù)據(jù)的DMA方式存儲(chǔ),它有兩個(gè)端口(輸人口和輸出口),并按先進(jìn)先出的順序來暫時(shí)存放數(shù)據(jù),無需地址發(fā)生器。輸人口和輸出口的工作彼此是獨(dú)立的,只要當(dāng)前存放在FIFO中的數(shù)據(jù)少于FIF0的容量,就可以繼續(xù)向FIF0中寫入數(shù)據(jù),當(dāng)FIFO存滿數(shù)據(jù)時(shí),它就會(huì)阻止繼續(xù)寫人數(shù)據(jù)。同樣,只要FIFO內(nèi)部還存在數(shù)據(jù),就可以繼續(xù)從中讀出數(shù)據(jù),當(dāng)FIFO中所有的數(shù)據(jù)被讀完時(shí),就可以繼續(xù)寫入數(shù)據(jù)。本文采用的是IDT7204,容量為 4096字節(jié)。由于向其寫入一個(gè)數(shù)據(jù)的時(shí)間(12ns)遠(yuǎn)小于A/D轉(zhuǎn)換時(shí)間,所以采集速度取決于A/D轉(zhuǎn)換的速度。
2 系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)主要由單片機(jī)80C196KB、線陣CCD及驅(qū)動(dòng)電路、A/D變換和DMA傳送電路組成,基本原理框圖如圖1所示:
2.1線陣TCD1208AP驅(qū)動(dòng)信號(hào)的產(chǎn)生
線陣TCD1208AP是日本TOSHIBA公司生產(chǎn)的線陣CCD,它具有2160個(gè)像元,圖2是其驅(qū)動(dòng)信號(hào)的時(shí)序圖:
圖2 TCD1208AP驅(qū)動(dòng)信號(hào)時(shí)序圖
由時(shí)序圖可以看出,芯片正常工作需要四路驅(qū)動(dòng)信號(hào),即:轉(zhuǎn)移信號(hào)SH,其周期為光信號(hào)的積分時(shí)間tINT(INTEGRATION TIME);復(fù)位信號(hào)RS,時(shí)鐘頻率標(biāo)準(zhǔn)值為1MHz;兩相移位時(shí)鐘信號(hào)Φ1、Φ2,時(shí)鐘頻率為0.5MHz。TCD1208AP有2160個(gè)像素單元,正常工作時(shí)要有52個(gè)虛設(shè)單元輸出(DUMMY OUTPUTS)信號(hào)。因?yàn)樵撈骷莾闪胁⑿袀鬏?,所以在一個(gè)周期內(nèi)至少要有1106(2212/2=1106)個(gè)Φ1脈沖,即TSH> 1106TΦ1。由時(shí)序圖可以看出,當(dāng)SH信號(hào)高電平期間,CCD積累的信號(hào)電荷包通過轉(zhuǎn)移柵進(jìn)入移位寄存器,移位脈沖Φ1、Φ2要求保持一個(gè)高和低的電平狀態(tài)。
評(píng)論