一)引言
電荷耦合器件CCD(chargecoupleddevice)是一種將光信號(hào)轉(zhuǎn)換成電信號(hào)的圖象傳感器,在工農(nóng)業(yè)生產(chǎn)和日常生活中有著廣泛的運(yùn)用。SPI(serial peripheral interface)是一種串行外設(shè)接口標(biāo)準(zhǔn),可實(shí)現(xiàn)數(shù)據(jù)的高速發(fā)送和接收。利用SPI與線陣CCD接口需要解決時(shí)序匹配和高速數(shù)據(jù)采集兩個(gè)關(guān)鍵問(wèn)題。目前有些單片機(jī)內(nèi)嵌了SPI,為解決上述問(wèn)題創(chuàng)造了條件。如能通過(guò)單片機(jī)及內(nèi)嵌SPI實(shí)現(xiàn)與線陣CCD的接口,將能簡(jiǎn)化電路,具有較大的實(shí)用價(jià)值。
本文簡(jiǎn)要介紹了線陣CCD和SPI的工作原理,以TCD1208AP和單片機(jī)內(nèi)嵌SPI為應(yīng)用對(duì)象,設(shè)計(jì)了SPI與線陣CCD的接口。具體內(nèi)容包括:CCD驅(qū)動(dòng)電路,CCD輸出信號(hào)處理電路和數(shù)據(jù)接收方法。實(shí)驗(yàn)表明接口簡(jiǎn)單、可靠,具有較大的實(shí)用價(jià)值。
二) CCD工作原理
不同于其它器件是以電流或電壓作為信號(hào),CCD是以電荷作為信號(hào),其基本功能是信號(hào)電荷的產(chǎn)生、轉(zhuǎn)移、傳輸和檢測(cè)。當(dāng)光線照射到CCD的像敏單元上時(shí),CCD首先完成光電轉(zhuǎn)換,即產(chǎn)生和入射光輻射量成線性關(guān)系的光電荷,進(jìn)而產(chǎn)生與光電荷量成正比的弱電壓信號(hào),然后在轉(zhuǎn)移脈沖的作用下逐位移出,再經(jīng)過(guò)外部電路的濾波、放大處理,輸出一個(gè)能表示入射光線強(qiáng)弱的電信號(hào)。例如TCD1208AP線陣CCD,有2160個(gè)有效像元,像元尺寸為14μm×14μm,像元中心距為14μm,典型工作頻率為1MHz,工作時(shí)序如圖1所示。
在圖1中,SH是轉(zhuǎn)移脈沖,它將感光元件產(chǎn)生的電荷信號(hào)轉(zhuǎn)移到轉(zhuǎn)移柵中;Φ1和Φ2是移位脈沖,它將轉(zhuǎn)移柵當(dāng)中的電荷信號(hào)逐位轉(zhuǎn)移出來(lái);RS是復(fù)位信號(hào);DOS是CCD信號(hào)輸出;OS是輸出信號(hào)補(bǔ)償。
三)SPI工作原理
SPI是MOTOROLA公司推出的一種同步串行外設(shè)接口標(biāo)準(zhǔn),允許MCU與標(biāo)準(zhǔn)的外圍設(shè)備直接接口,以串行方式交換信息。在AT89S8253中就配備了SPI。SPI共有四路信號(hào),它們分別是:SCK(串行時(shí)鐘)、SS(從機(jī)選擇)、MOSI(主機(jī)發(fā)送從機(jī)接收)、MISO(主機(jī)接收從機(jī)發(fā)送),其工作時(shí)序如圖2所示。與SPI有關(guān)的特殊功能寄存器有控制寄存器SPCR、狀態(tài)寄存器SPSR和數(shù)據(jù)寄存器SPDR。通過(guò)對(duì)這3組寄存器的編程可以實(shí)現(xiàn)SPI的全雙工同步串行工作。
四)接口設(shè)計(jì)
4. 1接口組成
接口主要由CCD驅(qū)動(dòng)脈沖發(fā)生電路、CCD輸出信號(hào)處理電路和數(shù)據(jù)高速采集等部分組成,如圖3所示。
在圖3中,單片機(jī)輸出一基準(zhǔn)時(shí)鐘脈沖,由驅(qū)動(dòng)脈沖發(fā)生電路產(chǎn)生TCD1208AP所需要的4路驅(qū)動(dòng)信號(hào);CCD輸出的信號(hào)送入預(yù)處理電路,經(jīng)過(guò)放大、濾波、二值化后送入單片機(jī);單片機(jī)通過(guò)SPI中斷將數(shù)據(jù)采集并存儲(chǔ)到SRAM中。
4.2CCD驅(qū)動(dòng)脈沖發(fā)生電路
為了保證線陣CCD穩(wěn)定可靠的工作,必須給出符合CCD正常工作所要求的驅(qū)動(dòng)脈沖和控制電路。只有驅(qū)動(dòng)脈沖與CCD時(shí)序正確配合,才能準(zhǔn)確實(shí)現(xiàn)CCD的光電轉(zhuǎn)換和數(shù)據(jù)輸出功能。圖4是采用AT89S8253、74LS122和74LS74設(shè)計(jì)的CCD驅(qū)動(dòng)脈沖電路。
在圖4 中,利用AT89S8253 的內(nèi)部定時(shí)器T3的方波發(fā)生器功能從P1. 0腳輸出頻率為1MHz方波信號(hào),作為基準(zhǔn)時(shí)鐘脈沖;通過(guò)74LS122進(jìn)行占空比調(diào)整,形成RS信號(hào); RS信號(hào)經(jīng)過(guò)74LS74進(jìn)行2分頻產(chǎn)生0. 5MHz的方波信號(hào),作為Φ1 和Φ2;將RS信號(hào)送回單片機(jī)計(jì)數(shù)器T0進(jìn)行計(jì)數(shù),當(dāng)計(jì)數(shù)滿(mǎn)2212時(shí)由P1. 1口輸出一清零信號(hào)至74LS74清零端,產(chǎn)生Φ1和Φ2所需的寬電平;在產(chǎn)生清零信號(hào)的同時(shí)從P1. 2口產(chǎn)生一寬度為1000ns的信號(hào)作為SH信號(hào); SH信號(hào)和Φ1 寬電平之間的相位關(guān)系可通過(guò)軟件進(jìn)行調(diào)整。
4. 3CCD輸出信號(hào)處理電路
由于TCD1208AP信號(hào)檢測(cè)采用選通電荷積分器結(jié)構(gòu),其輸出信號(hào)中疊加了一些由周期性復(fù)位信號(hào)RS引起的串?dāng)_信號(hào),而且有效信號(hào)幅值較?。s為500mV) 、直流電壓約有4. 1V。這是一組典型的共模電壓較高、有效差摸信號(hào)電壓較低的差分信號(hào)。為了消除信號(hào)中的復(fù)位脈沖串?dāng)_和其它干擾,須將微弱的信號(hào)進(jìn)行幅值放大及驅(qū)動(dòng)能力放大。圖5是采用AD623的CCD輸出信號(hào)處理電路。
在圖5中,AD623集成了三路運(yùn)放,可單電源工作,具有很高的CMRR和極低的電壓漂移,除了一個(gè)用于調(diào)節(jié)增益的外接電阻外,所有的元件都集成在內(nèi)部,電路有很高的穩(wěn)定性和可靠性。CCD輸出信號(hào)是離散的時(shí)間序列模擬信號(hào),包含著光強(qiáng)信息和一維、二維位置信息,具有很高的數(shù)據(jù)速率, 通常每秒100k - 10M 字節(jié), 最高達(dá)每秒20M字節(jié)。根據(jù)CCD應(yīng)用場(chǎng)合的不同,在采集CCD輸出信號(hào)前通常還需進(jìn)行處理。主要方法有兩種:一是將CCD 輸出信號(hào)進(jìn)行二值化處理; 二是進(jìn)行A /D轉(zhuǎn)換,使之成為具有灰度級(jí)的圖象。
對(duì)于利用CCD進(jìn)行物體形狀的檢測(cè),為了簡(jiǎn)化后續(xù)算法,只將輸出信號(hào)進(jìn)行二值化處理。線陣CCD輸出信號(hào)硬件二值化處理的方法主要有:固定閥值法、浮動(dòng)閥值法和微分法等。當(dāng)現(xiàn)場(chǎng)工作環(huán)境良好,干擾較小時(shí),固定閥值法無(wú)疑是最佳的選擇。它只需一個(gè)電壓比較器,在比較器一端輸入CCD輸出信號(hào),另一端接參考電壓,當(dāng)輸入電壓高于參考電壓時(shí),輸出為高;當(dāng)輸入電壓低于參考電壓時(shí)輸出為低電平。只要參考電壓選擇合適,就能達(dá)到系統(tǒng)要求??刹捎酶咚俦容^器MAX941對(duì)信號(hào)進(jìn)行二值化處理。
4. 4基于SPI的數(shù)據(jù)采集
對(duì)AT89S8253的SP I控制寄存器SPCR和狀態(tài)寄存器SPSR編程可以實(shí)現(xiàn)數(shù)據(jù)的準(zhǔn)確接收,其中SPCR控制寄存器共有8個(gè)可編程位,定義如表1所示。由圖1可知, RS的每一個(gè)下降沿對(duì)應(yīng)著一個(gè)CCD像元信號(hào)的輸出。對(duì)于SPI, 若令SPCR 中CPHA = 1, CPOL = 0,則SCK的下降沿接收數(shù)據(jù)。只要SP I的接收同步脈沖SCK和CCD復(fù)位信號(hào)RS同步,就可以實(shí)現(xiàn)CCD數(shù)據(jù)的準(zhǔn)確接收。根據(jù)以上的分析,可以將MCU設(shè)為從機(jī)模式,即令MSTR =0。數(shù)據(jù)從MOSI輸入,再利用中斷將接收到的數(shù)據(jù)存入靜態(tài)存儲(chǔ)器SRAM。其中SCK由時(shí)序產(chǎn)生電路產(chǎn)生。對(duì)SPCR的編程可通過(guò)以下匯編語(yǔ)言實(shí)現(xiàn):MOV SPCR, #0C4H。
五)結(jié)束語(yǔ)
通過(guò)SP I及所依托的單片機(jī)實(shí)現(xiàn)與CCD線陣的接口是切實(shí)可行的。一是利用單片機(jī)定時(shí)器產(chǎn)生基準(zhǔn)時(shí)鐘信號(hào);二是使用少量外圍電路結(jié)合單片機(jī)就可以產(chǎn)生線陣CCD所需要的驅(qū)動(dòng)信號(hào);三是利用SPI即可正確接收線陣CCD輸出的高速圖象數(shù)據(jù)。實(shí)驗(yàn)證明論文所設(shè)計(jì)的接口是正確的,能夠滿(mǎn)足應(yīng)用要求,并且結(jié)構(gòu)簡(jiǎn)單、易于實(shí)現(xiàn)。當(dāng)然,由于單片機(jī)處理圖象的能力有限,此接口并不完全適用于復(fù)雜圖象的處理。
參考文獻(xiàn):
[ 1 ] 王幸之,鐘愛(ài)琴,王雷,等。 AT89系列單片機(jī)原理與接口技術(shù)[M]。北京:北京航空航天大學(xué)出版社, 2004.
?。?2 ] 楊景常。 高速數(shù)據(jù)采集系統(tǒng)中數(shù)據(jù)存儲(chǔ)電路的方案確定[J]。 測(cè)控技術(shù), 2001, 20 (12) : 42 - 45.
[ 3 ] 楊景常,周?chē)?guó)權(quán)。 先進(jìn)先出( FIFO)存儲(chǔ)器技術(shù)在高速數(shù)據(jù)采集中的應(yīng)用[J]。 四川工業(yè)學(xué)院學(xué)報(bào), 2002, 21(2) : 20 - 22.
?。?4 ] 楊景常,劉冬梅。 高速切換開(kāi)關(guān)技術(shù)在高速數(shù)據(jù)采集電路中的應(yīng)用[J]。 電測(cè)與儀表, 2002, 39 (6) : 56 - 59.
評(píng)論
查看更多