
因?yàn)锳DSP-BF533沒(méi)有I2C接口,所以將PF0和PF1與CMOS傳感器OV6650的SIO_C和SIO_D相聯(lián),通過(guò)軟件模擬了一個(gè)I2C接口。OV6650的輸出數(shù)據(jù)同步信號(hào)線PCLK連接在ADSP-BF533的PPI_CLK口。
2.3 IDE硬盤(pán)接口
IDE(Integrated Drive Electronics),也叫ATA(Advanced Technology Attachment),ATA接口最早是在1986年由康柏、西部數(shù)據(jù)等幾家公司共同開(kāi)發(fā)的,在九十年代初開(kāi)始應(yīng)用于臺(tái)式機(jī)系統(tǒng)。IDE接口硬盤(pán)的數(shù)據(jù)傳輸模式經(jīng)歷過(guò)三個(gè)不同的技術(shù)變化,由最初的PIO模式,到DMA模式,再到Ultra DMA模式。
2.4 GPS數(shù)據(jù)處理模塊
本系統(tǒng)采用的GPS模塊GPS-G01是一款超低功耗的GPS接收板,備有連接有源天線的直角MCX接頭。內(nèi)置TIM-LC模塊,提供一路3V串口和一路RS232標(biāo)準(zhǔn)串口(3V串口兼容5V TTL輸入電平,兩路串口內(nèi)容一樣),支持3.15到5.25V范圍內(nèi)的工作電壓輸入,提供有源天線監(jiān)控、手動(dòng)工作模式選擇開(kāi)關(guān)。
為了能在處理GPS各種信息的同時(shí),保證圖像信息的正常處理,本系統(tǒng)通過(guò)一片AT89C2051篩選GPS傳來(lái)的數(shù)據(jù),將需要的日期、時(shí)間、經(jīng)緯度、速度等信息提取之后傳給DSP系統(tǒng),同時(shí)通過(guò)LCD顯示。
因?yàn)锳T89C2051與BF533系統(tǒng)之間的通信和AT89C2051與GPS模塊之間的通信都需要使用串行口,所以在單片機(jī)中通過(guò)軟件模擬了一個(gè)串行口,用于與DSP系統(tǒng)的通信;而將單片機(jī)本身帶有的串行口用于接收GPS模塊傳來(lái)的數(shù)據(jù)。電路如圖5所示。

3 系統(tǒng)軟件設(shè)計(jì)
根據(jù)設(shè)計(jì)要求及系統(tǒng)硬件模塊的劃分,本系統(tǒng)的軟件主要分為DSP系統(tǒng)軟件和GPS數(shù)據(jù)處理模塊軟件。
DSP系統(tǒng)軟件的主要任務(wù)是基于已開(kāi)發(fā)的MPEG4編碼庫(kù)和FAT32文件系統(tǒng)實(shí)現(xiàn)圖像數(shù)據(jù)的采集、處理與存儲(chǔ),GPS信息的接收與存儲(chǔ),以及對(duì)司機(jī)疲勞駕駛的報(bào)警等。
GPS數(shù)據(jù)處理模塊軟件的主要任務(wù)是應(yīng)用GPS技術(shù)提取時(shí)間、位置、速度等參數(shù),并進(jìn)行格式轉(zhuǎn)換,將轉(zhuǎn)換后的參數(shù)通過(guò)LCD顯示,同時(shí)傳遞給DSP系統(tǒng)。
3.1 MPEG-4壓縮編碼模塊
MPEG-4代表了基于模型/對(duì)象的第二代壓縮編碼技術(shù),根據(jù)圖像的內(nèi)容將其分割成不同的視頻對(duì)象VO(Video Object),然后進(jìn)行編碼[5]。本課題研究并編寫(xiě)了MPEG-4簡(jiǎn)單框架的壓縮編碼算法[6],其基本編碼結(jié)構(gòu)包括:形狀編碼、運(yùn)動(dòng)補(bǔ)償和紋理編碼;使用的主要技術(shù)是:運(yùn)動(dòng)估計(jì)補(bǔ)償、DCT變換和混合DPCM編碼[7]。
該算法可以針對(duì)圖像寬度、圖像長(zhǎng)度、量化系數(shù)、編碼碼流和輸入數(shù)據(jù)格式等參數(shù)進(jìn)行設(shè)定和配置。
根據(jù)課題的要求,MPEG-4壓縮編碼算法的輸入數(shù)據(jù)格式為:352×288像素的4:2:2的YUV數(shù)據(jù)。
基于ADSP-BF533實(shí)現(xiàn)的MPEG-4簡(jiǎn)單框架框圖如圖6所示。

3.2 FAT32文件系統(tǒng)模塊
本系統(tǒng)在硬盤(pán)中所存儲(chǔ)的數(shù)據(jù)要求能夠直接被PC機(jī)讀取,所以在硬盤(pán)上要建立FAT32文件系統(tǒng)。該文件系統(tǒng)分為四個(gè)模塊:(1)FAT32文件系統(tǒng)參數(shù)的讀取模塊;(2)FAT32文件系統(tǒng)的地址轉(zhuǎn)換模塊;(3)FAT32文件系統(tǒng)的FAT表搜索模塊;(4)FAT32文件系統(tǒng)的文件目錄搜索模塊。各模塊都提供了一些接口函數(shù),可以被其他程序調(diào)用。
在數(shù)據(jù)存儲(chǔ)子程序中通過(guò)調(diào)用以上幾個(gè)模塊的函數(shù)來(lái)實(shí)現(xiàn)壓縮數(shù)據(jù)的大容量存儲(chǔ)。系統(tǒng)采用邏輯尋址方式對(duì)扇區(qū)進(jìn)行尋址,若操作成功則返回0,否則操作失敗返回錯(cuò)誤信息。
硬盤(pán)的數(shù)據(jù)寄存器是一個(gè)16位PIO數(shù)據(jù)傳輸器,用于對(duì)扇區(qū)的讀、寫(xiě)操作;錯(cuò)誤寄存器記錄操作方式下的錯(cuò)誤原因;狀態(tài)寄存器反映硬盤(pán)驅(qū)動(dòng)器執(zhí)行命令后的狀態(tài);命令寄存器接收處理機(jī)輸出的HDC命令。在編程時(shí)必須將這些硬盤(pán)寄存器的地址進(jìn)行映射。
3.3 DSP系統(tǒng)軟件
系統(tǒng)上電以后首先自檢,然后初始化。初始化程序包括對(duì)OV7648、PLL、SDRAM和EBIU的設(shè)置,對(duì)DMA0_PPI中斷的設(shè)置以及對(duì)硬盤(pán)的初始化。
啟動(dòng)圖像采集與編碼程序后,ADSP-BF533通過(guò)DMA方式將攝像頭輸出的數(shù)據(jù)讀入SDRAM中。當(dāng)采集完一幀數(shù)據(jù)后,DMA將產(chǎn)生中斷,在中斷服務(wù)程序中先屏蔽本中斷,置中斷標(biāo)志位,然后重新配置DMA_PPI中斷,啟動(dòng)下一幀的采集,最后退出中斷。
當(dāng)主程序檢測(cè)到中斷標(biāo)志位有效時(shí),調(diào)用MPEG-4編碼庫(kù)對(duì)剛才的一幀數(shù)據(jù)進(jìn)行壓縮編碼,壓縮完成后將數(shù)據(jù)存入SDRAM中。周而復(fù)始。當(dāng)程序查詢到已編碼的數(shù)據(jù)大于8KB時(shí),調(diào)用FAT32文件系統(tǒng)向硬盤(pán)存儲(chǔ)當(dāng)前視頻數(shù)據(jù)。
因?yàn)樵紙D像數(shù)據(jù)的采集是通過(guò)DMA方式進(jìn)行的,無(wú)需內(nèi)核的干預(yù),所以當(dāng)前幀圖像數(shù)據(jù)的采集與上一幀數(shù)據(jù)的壓縮是同時(shí)進(jìn)行的。
主程序在處理視頻數(shù)據(jù)的同時(shí),通過(guò)定時(shí)器中斷每秒從GPS數(shù)據(jù)處理模塊提取一次信息(包括時(shí)間、速度、經(jīng)緯度等)用于行車數(shù)據(jù)記錄。當(dāng)系統(tǒng)檢測(cè)到連續(xù)行車時(shí)間超過(guò)兩小時(shí)以上時(shí),會(huì)通過(guò)蜂鳴器對(duì)司機(jī)進(jìn)行報(bào)警,并在系統(tǒng)中記錄該疲勞駕駛的信息,以備有關(guān)部門(mén)檢查。
當(dāng)系統(tǒng)檢測(cè)到停車時(shí)會(huì)將結(jié)束標(biāo)志位置1;若程序檢測(cè)到結(jié)束標(biāo)志位為1則寫(xiě)一次文件結(jié)束,并退出程序。程序流程圖如圖7所示。

3.4 GPS數(shù)據(jù)處理模塊軟件
GPS接收機(jī)每秒自動(dòng)向單片機(jī)發(fā)送一幀數(shù)據(jù),數(shù)據(jù)內(nèi)容包括經(jīng)緯度、時(shí)間、速度和定位狀態(tài)等。本系統(tǒng)所使用的GPS接收機(jī)符合NEMA-0183數(shù)據(jù)通信協(xié)議(也為ASCII碼數(shù)據(jù)通信協(xié)議)。NMEA-0183數(shù)據(jù)通信協(xié)議是美國(guó)國(guó)家海洋電子協(xié)會(huì)為海用電子設(shè)備制定的標(biāo)準(zhǔn)格式。它是在過(guò)去海用電子設(shè)備的標(biāo)準(zhǔn)格式0180和0182的基礎(chǔ)上,增加了GPS接收機(jī)輸出的內(nèi)容而完成的。目前廣泛采用的是Ver 2.00版本,F(xiàn)在除少數(shù)GPS接收機(jī)外,幾乎所有的接收機(jī)均采用了這一格式。NEMA-0183數(shù)據(jù)通信協(xié)議消息格式共有11種(其中7種輸出消息,4種輸入消息),每種消息以“$”開(kāi)頭,以
不同格式輸出不同的數(shù)據(jù)信息,常用格式有:
$GPRMC GPS定位數(shù)據(jù)(經(jīng)度,緯度,速度,方向,時(shí)間等)
$GPGSV GPS衛(wèi)星狀態(tài)
$GPXTE 偏航距和操縱方向
$GPGGA GPS定位數(shù)據(jù)(經(jīng)度,緯度,時(shí)間,定位狀態(tài)等)
用戶可以根據(jù)自己的需要,通過(guò)向GPS接收機(jī)發(fā)送控制命令來(lái)控制GPS的輸出,以接收到自己需要格式的數(shù)據(jù)。本系統(tǒng)采用的是$GPRMC格式的數(shù)據(jù)。
初始化完畢后,系統(tǒng)提取GPS模塊輸出的數(shù)據(jù),從中篩選出$GPRMC字段的數(shù)據(jù),將這些數(shù)據(jù)轉(zhuǎn)換成十六進(jìn)制數(shù)后,再通過(guò)串行口傳送給DSP系統(tǒng),同時(shí)將這些數(shù)據(jù)通過(guò)LCD顯示出來(lái)。
本文以ADSP-BF533為核心,使用MPEG-4視頻壓縮算法將壓縮后的數(shù)據(jù)存入硬盤(pán),實(shí)現(xiàn)圖像實(shí)時(shí)監(jiān)測(cè)。所研究的監(jiān)測(cè)系統(tǒng)不僅體積小、壓縮率高、存儲(chǔ)容量大、實(shí)時(shí)性強(qiáng),而且價(jià)格適中、可擴(kuò)展性高。通過(guò)較小的軟、硬件改動(dòng)就可應(yīng)用到汽車運(yùn)行狀況監(jiān)測(cè)、十字路口監(jiān)測(cè)、超市監(jiān)測(cè)、智能樓宇和小區(qū)監(jiān)測(cè)等領(lǐng)域,具有較強(qiáng)的實(shí)用價(jià)值和可推廣性。
參考文獻(xiàn)
[1] 蘇濤,藺麗華,盧光躍,等.DSP實(shí)用技術(shù)[M].西安:西安電子科技大學(xué)出版社,2002.
[2] 張雄偉,曹鐵勇.DSP芯片的原理與開(kāi)發(fā)應(yīng)用[M].北京:電子工業(yè)出版社,2000.
[3] 陳峰.Blackfin系列DSP原理與系統(tǒng)設(shè)計(jì)[M].北京:電子工業(yè)出版社,2004.
[4] 羅志強(qiáng),王耀南.Blackfin533的DMA技術(shù)及其在圖像處理中的應(yīng)用[J].國(guó)外電子元器件,2005,(2):32-35.
[5] 劉俊輝,馮馳,林洪彬.基于MPEG4的數(shù)字硬盤(pán)錄像系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)[J].應(yīng)用科技,2004,(8):14-16.
[6] BAUER S,KNEIP J,MLASKO T.The MPEG-4 multimedia coding standard:algorithms,architectures and applications[J].Journal of VLSI signal processing,1999,(23):14-15.
[7] ATUL PURI,ARAVIND R,A.Motion-Compensated video coding with adaptive perceptual quantization[J].IEEE Transaction on circuits and systems for video technology,1991,1(4):351-362.





