一種基于單片機的新型線陣CCD電路
引言
不同廠家、不同型號的CCD的驅(qū)動時序是不同的,加之對不同性能、不同應用場合的體積、成本、靈活性要求不同,于是產(chǎn)生了眾多的驅(qū)動時序的產(chǎn)生方法,主要有直接數(shù)字電路驅(qū)動、單片機口驅(qū)動、EPROM驅(qū)動、專用IC驅(qū)動等常用的驅(qū)動時序的產(chǎn)生方法。但是它們存在著邏輯設計較為復雜、調(diào)試困難、柔性較差、驅(qū)動時鐘低等缺點。
本文在綜合各種驅(qū)動時序方法的基礎(chǔ)上,提出了的一種基于單片機的新型驅(qū)動電路。該電路使用獨立的時鐘源產(chǎn)生精確的時鐘脈沖,采用可編程定時計數(shù)芯片和單片機控制相結(jié)合的方法,使電路產(chǎn)生穩(wěn)定、精確、高速的驅(qū)動脈沖,該電路結(jié)構(gòu)簡單、調(diào)試方便、CPU占用率低,降低了系統(tǒng)的總體成本,而且具有良好的柔性,只需要改變驅(qū)動軟件就可以應用于不同的CCD芯片,更適合于工業(yè)測量用途。
驅(qū)動電路基本組成
基于單片機的新型線陣CCD驅(qū)動電路主要由脈沖發(fā)生電路、分頻電路、控制電路、脈寬調(diào)制電路等組成,如圖1所示。
通常時鐘脈沖可取自以下途徑:單片機XTAL端、ALE端、獨立脈沖源。其中取自XTAL端時,經(jīng)分頻電路得到的脈沖頻率受限制;取自ALE端的脈沖在單片機訪問外部存儲器的時候丟失,精度受影響;而取自獨立脈沖源的脈沖因其獨立性而精度較高,且所產(chǎn)生的脈沖頻率可自由選擇,穩(wěn)定性好,因此本驅(qū)動電路選用獨立脈沖源。
分頻電路可以選用D觸發(fā)器/JK觸發(fā)器,如74LS(HC)74、74LS(HC)76,均帶置位、清零端,較易控制;也可以選用計數(shù)器,如74LS(HC)163(可預置),8253(2MHZ可編程),82(C)54(10MHZ可編程)。為了便于調(diào)試和增加系統(tǒng)的柔性,本驅(qū)動電路選用具有較高頻率的82C54,它含有3個16位減法計數(shù)器, 6種工作方式。其中工作方式2時,起頻率發(fā)生器的作用,CLK端輸入脈沖使計數(shù)器減1,計數(shù)器減到1時停止計數(shù),并使OUT端輸出負脈沖;方式3起方波發(fā)生器作用,[(N+1)/2]計數(shù)完成之前為高電平,對余下的[(N-1)/2]計數(shù)時輸出低電平。
控制電路主要由單片機AT89C51及邏輯門電路組成。AT89C51最高工作頻率達24MHz,內(nèi)含4KB的Flash存儲器。用于82C54的初始化、控制計數(shù)脈沖的通斷、計數(shù)器的啟動、停止及完成系統(tǒng)中其它任務。
脈寬調(diào)制電路主要由阻容電路、單穩(wěn)態(tài)電路(如74LS/HC123)組成。該電路主要用于調(diào)整各驅(qū)動脈沖之間的相位關(guān)系。74LS(HC)123是可重觸發(fā)單穩(wěn)態(tài)觸發(fā)器。在觸發(fā)脈沖的上升沿(接B端)或下降沿(接A端)的作用下,輸出Q為高電平,經(jīng)過延時Tw后,輸出Q返回低電平;如果輸出高電平期間,觸發(fā)脈沖又到來,則高電平又會從此刻延時Tw,因此如果觸發(fā)脈沖在高電平期間不斷到來,則高電平將要被無限期的延遲,即輸出為高電平;當外接電阻為R且電容C>1000pF時,Tw=0.45 * R *C 。
圖1驅(qū)動電路原理圖
圖2系統(tǒng)框圖
系統(tǒng)實例
系統(tǒng)組成
本系統(tǒng)用于測量螺旋槳轉(zhuǎn)動過程中的槳葉的偏振角。由于螺旋槳具有剛性,其轉(zhuǎn)動過程中不僅存在擺動,而且存在振動,對其偏擺角的測量需要在螺旋槳轉(zhuǎn)動過程中采集其瞬態(tài)的位置,利用CCD的成像特性,將螺旋槳瞬態(tài)的位置信息通過CCD成像,光信號轉(zhuǎn)換為電荷信號,經(jīng)過信號處理電路,轉(zhuǎn)化為數(shù)字信號,傳輸給CPU處理。系統(tǒng)框圖如圖2所示。
系統(tǒng)中的光源可以選用有源光源或自然光,根據(jù)測試現(xiàn)場環(huán)境、安裝空間、體積等因素綜合考慮;光學系統(tǒng)可根據(jù)測試現(xiàn)場的尺寸要求及視場要求,根據(jù)幾何光學公式計算選定;CCD選用日本東芝公司的TCD1500C,測量精度和分辨率都很高,內(nèi)有驅(qū)動器和采樣保持電路,輸出可以直接取除了調(diào)幅脈沖成分的視頻信號,并且只需3路驅(qū)動信號:SH、Φ、RS;信號處理電路用于對CCD輸出的視頻信號進行濾波、放大、二值化、采樣等處理,便于DSP處理;主處理器采用數(shù)字信號處理器DSP,它是一種高性能的單片機,內(nèi)部結(jié)構(gòu)采用改進的哈佛結(jié)構(gòu),具有多條數(shù)據(jù)、地址總線,可同時訪問數(shù)據(jù)和程序存儲器,其多級深度流水線,可以預先裝載多達八級指令,指令執(zhí)行速度可達300MIPS~10GIPS(內(nèi)有多并行CPU),正廣泛應用于測試、信號處理、通訊等大運算量的領(lǐng)域,可作為協(xié)處理器(大型系統(tǒng)),也可以作為主處理器(中小型系統(tǒng)),并且具有SP、SPI、DMA、PCI、USB接口,也可以與上位機和下位機通訊。
驅(qū)動實例
* 驅(qū)動時序要求及實現(xiàn)
TCD1500C的驅(qū)動時序如圖3-(a)所示,其工作頻率≤8MHz,取 fF=1MHz,fRS=2MHz,TSH≥(5340+64+12)/2ms。其中圖3-(b)時序由 圖1-(b)實現(xiàn),由單片機強制置位,以滿足電荷向移位寄存器轉(zhuǎn)移;圖3-(c)時序由 圖1-(d)實現(xiàn),其中Re選用精密可調(diào)電阻,Ce>1000pF,延遲時間由公式Tw=0.45 * R *C 決定,也可以在示波器上觀察調(diào)制。
驅(qū)動電路工作過程如下:上電初始時,控制與分頻電路中的單片機AT89C51開相應中斷,對各控制引腳設定初始狀態(tài)電平。接著對82C54計數(shù)器進行初始化,設定82C54的工作方式:定時器1和定時器2工作于方式3(方波發(fā)生器),定時器2工作于方式4(軟件觸發(fā)方式),并寫入初值,然后89C51等待主機的指令-開始測量,則使82C54開始工作,產(chǎn)生驅(qū)動脈沖。當產(chǎn)生一個完整的積分周期的驅(qū)動脈沖后,89C51停止產(chǎn)生驅(qū)動脈沖,等待主機的指令。當CCD第一幀視頻信號有效時,經(jīng)信號處理電路的一系列處理后,可以在同步脈沖作用下對輸出的視頻信號進行A/D轉(zhuǎn)換,也可以用高頻脈沖計數(shù)二值化后的脈沖寬度,通過通訊將得到的數(shù)據(jù)送給主機處理,主機將測量的結(jié)果存入存儲器或直接傳給上位PC機,然后給89C51發(fā)開始命令,驅(qū)動下一幀視頻信號,如此往復直至結(jié)束。
* 驅(qū)動電路的軟件編程
脈沖發(fā)生電路產(chǎn)生4MHz的方波脈沖,將它通過圖1-(b)分頻電路的兩次分頻,得到1MHz的方波脈沖。圖1-(b)所示時序通過P1.1控制,從而產(chǎn)生f脈沖;定時器0計數(shù)脈沖取自產(chǎn)生f脈沖的第一個分頻器的輸出(2MHz), 其計數(shù)初始值>(5340+64+12)ms,從而產(chǎn)生SH脈沖;通過把f作為定時器1的計數(shù)脈沖, 計數(shù)初始值=2,再將OUT1的輸出接到脈寬調(diào)制電路即可得到RS脈沖。至此,CCD工作所需要的驅(qū)動脈沖全部得到。
89C51產(chǎn)生驅(qū)動脈沖的部分程序見本刊網(wǎng)站(www.eaw.com.cn)
圖3 TCD1500C驅(qū)動脈沖時序
結(jié)語
該驅(qū)動電路綜合了直接數(shù)字電路驅(qū)動方法具有較高的驅(qū)動頻率和單片機口驅(qū)動方法靈活性特點,還具有硬件電路簡單、成本低、軟件編程靈活、可直接方便的受主處理器控制等特點,而且在實際使用中穩(wěn)定可靠,具有一定的實用價值。
參考文獻
1 日本TOSHIBA公司.電荷耦合器件手冊[M].1998
2 王慶有.CCD應用技術(shù)[M].天津:天津大學出版社,1993
3 蔡文貴等.CCD技術(shù)及應用[M]1.北京:電子工業(yè)出版社,1992
4 何立民.MCS-51系列單片機應用系統(tǒng)設計[M]. 北京:北京航空航天大學出版社,2000
5 李華.MCS-51系列單片機實用接口技術(shù)[M]. 北京:北京航空航天大學出版社,1996
評論