DSP在線陣CCD測量系統(tǒng)中的應用
——
關(guān)鍵詞:數(shù)字信號處理器(DSP);線陣CCD
1 引言
電荷耦合器件CCD(charge coupled device)是一種半導體光學成像器件。自從研制成功以來,由于其體積小、高分辨率、高精度、穩(wěn)定性好、抗震動、抗電磁干擾等優(yōu)點,已在工件尺寸測量,工件表面質(zhì)量檢測,物體熱膨脹系數(shù)檢測,以及圖像傳真,攝像機,智能傳感器等方面得到了廣泛的應用,這大大地促進了CCD的發(fā)展。人們也相應地研究了許多處理CCD信號的方法,如處理線性CCD的小波分析法,重心法等。這些方法對處理CCD信號的處理器提出了很高的要求,尋找滿足這些要求的處理器已成當務之急。數(shù)字信號處理器(Digital Signal Processor,DSP)是一種具有高速性,實時性和豐富的芯片內(nèi)部資源的處理器,為人們解決這個難題提供了一條新路。本文將以TMS320LF2407A DSP為例,介紹DSP在線性CCD測量系統(tǒng)中的應用。
2 系統(tǒng)工作原理及過程
基于DSP技術(shù)的線陣CCD測量系統(tǒng)主要由線陣CCD、DSP處理器、圖形液晶顯示器、控制電路等幾部分組成,系統(tǒng)結(jié)構(gòu)如圖1所示。系統(tǒng)的工作過程如下:CCD傳感器的光敏單元受光的激發(fā)將光信號轉(zhuǎn)化為電信號并在驅(qū)動脈沖的作用下輸出。CCD的輸出信號為離散的模擬脈沖序列,在DSP處理器對它進行處理之前,須經(jīng)過模數(shù)轉(zhuǎn)換。處理器將模數(shù)轉(zhuǎn)換的結(jié)果存入片內(nèi)的數(shù)據(jù)存儲器中以便進一步處理。最后DSP根據(jù)用戶的要求將處理結(jié)果上經(jīng)圖形液晶顯示器顯示給用戶。
3 硬件組成
3.1 TMS320LF2407A DSP
TMS320LF2407A是TI 公司推出的16位定點DSP。該處理器采用改進型哈佛結(jié)構(gòu),CPU經(jīng)過專門的硬件邏輯設(shè)計,指令的執(zhí)行采用流水線方式,加上高度專業(yè)化的指令系統(tǒng)使得TMS320LF2407A DSP具有高度的并行性和實時性。
TMS320LF2407A在片資源豐富,片內(nèi)除有32k字的FLASH ROM,2.5k字的RAM外,還有帶內(nèi)置采樣和保持的10位精度的模數(shù)轉(zhuǎn)換器(ADC),最小轉(zhuǎn)換時間500ns; 兩個事件管理器模塊(每個事件管理器都含有兩個可編程定時器),串行通信接口模塊(SCI),串行外設(shè)接口模塊(SPI),CAN控制器模塊等外設(shè)。此外,該處理器有多達41個通用.雙向的數(shù)字I/O引腳,用戶可根據(jù)自己的需求進行軟件設(shè)置。這些使得該芯片在應用上具有極大的靈活性。
3.2 線陣CCD傳感器
采用TCD102C線性CCD為例子。它是一二相雙溝道線陣CCD攝像器件,有效光敏單元2048個,光敏陣列長約28.672mm,光積分時間 TSH不小于2084ms,驅(qū)動頻率為1MHz,其占空比為1:3。傳感器內(nèi)部具有采用保持電路。 其工作脈沖時序圖如圖2所示。轉(zhuǎn)移脈沖FSH 的周期即一次光積分的時間大于2084 個T(T為驅(qū)動脈沖的 F R 的周期),高電平時間至少為一個T。F1 、F2 的頻率為F R 的一半。
3.3 顯示電路和外部控制電路模塊
由于液晶顯示器(LCD)具有功耗低、體積小、質(zhì)量輕、超薄等諸多其他顯示器無法比擬的優(yōu)點,它被廣泛地應用于各種智能型儀器和低功耗電子產(chǎn)品中。因此,本文將以液晶顯示器MG-12232作為線陣CCD測量系統(tǒng)中的顯示模塊。
測量系統(tǒng)的控制電路采用控制按鍵,這樣可使系統(tǒng)的硬件電路更為簡單。
4 系統(tǒng)設(shè)計
4.1 系統(tǒng)硬件設(shè)計
4.1.1 DSP處理器與線陣CCD間的硬件接線
由于TCD102C線陣CCD傳感器的光積分時間TSH與入射光的強度,光敏單元的個數(shù),驅(qū)動脈沖的頻率有關(guān)。為了使系統(tǒng)正常工作,傳感器的驅(qū)動脈沖信號應由DSP處理器產(chǎn)生。TCD102C線陣CCD傳感器的工作脈沖有FSH 、F1 、F2 、F R 、FSP ,它們的時序圖如圖2所示。從圖2中線陣CCD傳感器的驅(qū)動脈沖的分析可知,傳感器的驅(qū)動脈沖都為周期性方波但周期和占空比不同。LF2407A DSP 處理器的片內(nèi)含有兩個事件管理模塊EVA和EVB,每個事件管理模塊包括通用定時器、比較單元等電路。DSP處理器的通用定時器具有比較操作功能,每個通用定時器都有一個相關(guān)的比較寄存器TxCMPR 和一個PWM輸出引腳TxPWM 。定時器的值總是與相關(guān)的比較寄存器的值進行比較,當定時器的記數(shù)器的值與比較寄存器的值相等時,就產(chǎn)生了比較匹配。如果比較使能的話,相應的引腳的輸出將發(fā)生跳變,且跳變的極性可由用戶通過軟件進行設(shè)置??梢娎闷瑑?nèi)事件管理器資源產(chǎn)生脈沖控制信號并經(jīng)DSP的引腳輸出至CCD傳感器的驅(qū)動電路引腳的方法,使得系統(tǒng)的硬件電路大為簡化。
在該系統(tǒng)設(shè)計中,定時器T3,T4,T1 ,T2分別用于產(chǎn)生光積分脈沖FSH ,驅(qū)動脈沖F1 、F R 、 FSP ,F(xiàn)1經(jīng)反相器后變可得到 F2。CCD傳感器的輸出光積分信號直接送DSP處理器的模數(shù)轉(zhuǎn)換輸入引腳ADCIN00。CCD傳感器與DSP處理器間的硬件接線如圖3 所示。
4.1.2 DSP處理器與顯示模塊及控制模塊間的硬件設(shè)計
為使測量系統(tǒng)硬件電路簡單,DSP處理器與控制電路及顯示模塊的硬件設(shè)計充分利用DSP處理器的通用、雙向的數(shù)字I/O(GPIO)引腳。
TMS320LF2407A DSP處理器有多達41個通用、雙向的數(shù)字I/O(GPIO)引腳,其中大多數(shù)的引腳都是基本功能和一般I/O功能復用的引腳。通過9個16位的控制寄存器的軟件設(shè)置,可配置這些引腳的功能并讀取其狀態(tài)和輸出特定的數(shù)據(jù)。
顯示模塊MG-12232的硬件接口控制時序設(shè)置為M6800操作時序,DSP處理器的I/O引腳IOPC4-IOPC7 分別接至顯示模塊的控制信號引腳A0,R/W,E1和E2。IOPA0-IOPA7與顯示模塊的數(shù)據(jù)引腳D0-D7相連,用于輸出計算結(jié)果。
測量系統(tǒng)的控制電路采用控制按鍵,這樣可使系統(tǒng)的硬件電路更為簡單。按鍵的動作可控制DSP處理器的IOPD0的電平的高低。用戶設(shè)置DSP處理器I/O 引腳的為數(shù)據(jù)讀入方式,DSP處理器的主程序可讀取I/O 引腳的狀態(tài)值。主程序根據(jù)IOPD0引腳的狀態(tài)值控制測量系統(tǒng)的工作。
DSP處理器與顯示模塊及控制模塊間的硬件連接如圖4所示。
4.2 系統(tǒng)軟件設(shè)計
4.2.1 測量系統(tǒng)的軟件設(shè)計思想
主程序流程如圖5所示。
復位脈沖FR每到來一次CCD傳感器將輸出一個光敏單元信號,DSP處理器片內(nèi)的模數(shù)轉(zhuǎn)換器ADC 對該信號進行模數(shù)轉(zhuǎn)換處理。因此,光敏單元信號的輸出及模數(shù)轉(zhuǎn)換器工作在時間上須同步。DSP 處理器定時器的比較匹配信號可作為的ADC的啟動信號源 ,這一點為設(shè)計帶來了極大的便利。只要通過軟件設(shè)置ADC的控制寄存器相應的控制位,置定時器的比較匹配信號啟動模數(shù)轉(zhuǎn)換,即可達到光積分信號及模數(shù)轉(zhuǎn)換器同步的目的。每次ADC的轉(zhuǎn)換完成都將產(chǎn)生中斷信號,提示處理器提取數(shù)據(jù)。
由于定時器及ADC的中斷程序?qū)崿F(xiàn)的功能比較簡單,在本文中不給出具體的流程圖。
4.2.2系統(tǒng)各部分初始化程序
(1)通用、雙向的數(shù)字I/O(GPIO)引腳配置程序:
GPIO引腳控制寄存器可分為兩類:(1)I/O復用控制寄存器(MCRx):用來控制選擇I/O口作為基本功能或一般I/O引腳功能;(2)數(shù)據(jù)和方向控制寄存器(P xDATDIR):當I/O口用作一般I/O引腳功能時,用數(shù)據(jù)和方向控制寄存器可控制數(shù)據(jù)和到雙向I/O引腳的數(shù)據(jù)方向。
LACL MCRA
OR #0000 0000 0000 1100b ;設(shè)置定時器T1、T2的比較輸出引腳為基本功能 ,IOPA0-IOPA7為一般IO口引腳
SACL MCRA
LACL MCRB
OR #1111 1110 0000 0000b ;設(shè)置IOPC0-IOPC7,IOPD0為一般IO口引腳
SACL MCRB
LACL MCRC
OR #0000 1100 0000 0000b ;設(shè)置定時器T3、T4的比較輸出引腳為基本功能
SACL MCRC
LACL PADATDIR
OR #1111 1111 xxxx xxxxb ;設(shè)置引腳IOPA0-IOPA7數(shù)據(jù)方向為輸出方式,x表示在IOPA0-IOPA7引腳應輸出的數(shù)據(jù)
SACL PADATDIR
LACL PCDATDIR
OR #1111 0000 xxxx 0000b ;設(shè)置引腳IOPC4-IOPC7數(shù)據(jù)方向為輸出方式,x表示在IOPC4-IOPC7引腳應輸出的數(shù)據(jù)
SACL PCDATDIR
LACL PDDATDIR
OR #0000 0000 0000 000xb ;設(shè)置引腳IOPD0數(shù)據(jù)方向為輸入方式,x 表示該引腳的讀入的狀態(tài)
SACL PDDATDIR
(2)定時器初始化程序
由于片內(nèi)各定時器的控制寄存器的設(shè)置方式相同,只是對應的寄存器的值不同,這里僅以定時器T1設(shè)計為例。
LDP #DP_EVA
SPLK #0000 0001 1100 0110b,GPTCONA
;置定時器T1的比較中斷標志來啟動模數(shù)轉(zhuǎn)換,定時器T1的比較輸出引腳的輸出極性為高有效
SPLK #0001 0000 0000 0110b,T1CON
;定時器T1為連續(xù)增計數(shù)模式,預分頻系數(shù)為1,使用內(nèi)部時鐘定時器T1比較使能定時器T1未使能
SPLK #28H,T1PR
;內(nèi)部時鐘設(shè)為40M,定時器T1的周期為1μs
SPLK #1EH,T1CMPR
;脈沖FR的占空比為1:3
SPLK #00H,T1CNT
;置定時器T1的計數(shù)寄存器的值為0.
(3) ADC模數(shù)轉(zhuǎn)換器初始化程序:
LDP #DP_PF2
SPLK #0000 0000 0000 0000b ,ADCTRL1
;設(shè)置ADC控制寄存器
SPLK #0400H ,ADCTRL2
SPLK #0000H ,MAXCONV
;置最大轉(zhuǎn)換通道數(shù)為1
SPLK #0000H ,CHESELSEQ1
;置轉(zhuǎn)換通道順序: 通道0為第一個轉(zhuǎn)換開始的通道
SPLK #0000H ,CHESELSEQ2
5 結(jié) 束 語
本文圍繞對數(shù)據(jù)處理的過程介紹了DSP在線陣CCD測量系統(tǒng)中的應用。系統(tǒng)工作過程包括光信號采集,模數(shù)轉(zhuǎn)換,DSP處理和顯示等幾個部分。由于DSP具有豐富的在片資源,這使得DSP在線陣CCD測量系統(tǒng)中的硬件設(shè)計頗為簡單,同時DSP的運算功能強大的特點及良好的實時性,使得其在對數(shù)據(jù)處理方面游刃有余。DSP技術(shù)必將在CCD技術(shù)系統(tǒng)中得到廣泛的應用。
參 考 文 獻
[1] 蔡文貴,李永遠,許振華,CCD技術(shù)及應用。北京,電子工業(yè)出版社,1992。
[2] 王慶有,孫學珠,CCD應用技術(shù)。天津,天津大學出版社,1993。
[3] 劉和平等,TMS320LF240X DSP的結(jié)構(gòu)、原理及應用。北京,北京航空航天大學出版社,2002。
[4] 李為民,邢曉正,戴禮榮,胡紅專,DSP技術(shù)在線陣CCD測量系統(tǒng)中的應用。
儀器儀表學報,2002,(2):183-185。
[5] 徐大成,翁桂榮,線陣CCD數(shù)據(jù)的高速采集系統(tǒng)。傳感器技術(shù),2002,(9):
45-47。
[6] TI公司,CC2000 Help Document.
[7] TI公司,TMS320LF2407 DSP Datasheet
[8] TI公司,TMS320C24x DSP Controllers Reference Set
[9] TI公司,TMS320LF/LC240xA DSP Controllers System and Periphrals Reference.
評論