基于ADSP-BF533的家庭安全系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
1 系統(tǒng)整體方案
基于BF533的家庭安全系統(tǒng)設(shè)計(jì)方案,主要由4部分組成,分別為熱釋電紅外檢測(cè)、CMOS圖像采集、GSM報(bào)警和圖像存儲(chǔ)。系統(tǒng)結(jié)構(gòu)框圖,如圖l所示。熱釋電紅外檢測(cè)模塊與BF533的PF口相連,對(duì)室內(nèi)空間進(jìn)行檢測(cè),一旦檢測(cè)到非法入侵,立即向DSP發(fā)送中斷請(qǐng)求,將處于睡眠狀態(tài)的DSP喚醒工作。GSM短信報(bào)警模塊與UART接口相連,DSP通過UART口可以控制GSM模塊使其發(fā)送報(bào)警信息。CMOS攝像頭連接在PPI接口,PPI口以DMA方式將視頻數(shù)據(jù)搬移到SDRAM中,供DSP進(jìn)行壓縮,存儲(chǔ)設(shè)備SD卡通過SPI接口與DSP連接,用于保存壓縮后的視頻碼流數(shù)據(jù)。
2 系統(tǒng)硬件設(shè)計(jì)
2.1 熱釋電紅外檢測(cè)電路
熱釋電紅外檢測(cè)模塊采用BISS0001型熱釋電紅外控制專用芯片完成。當(dāng)有人在熱釋電紅外傳感器的有效檢測(cè)區(qū)域內(nèi)活動(dòng)時(shí),傳感器將接收到人體發(fā)出的紅外信號(hào),并將其轉(zhuǎn)變成微弱的脈沖電壓信號(hào),此電壓信號(hào)經(jīng)BISS0001內(nèi)部電路放大、鑒幅處理及定時(shí)控制后,從輸出引腳輸出高電平,該高電平連接到DSP的PF口,作為DSP的中斷請(qǐng)求信號(hào),喚醒DSP進(jìn)人工作狀態(tài)。
2.2 CMOS圖像采集電路
本系統(tǒng)采用Pixelplus公司的P03030K圖像傳感器完成圖像采集功能,P03030K輸出30萬像素圖像,支持多種輸出模式和輸出數(shù)據(jù)格式,此處采用QVGA輸出模式和YUV4:2:2輸出數(shù)據(jù)格式。P03030K與BF533的PPI口相連接,連接方式,如圖2所示,P03030K產(chǎn)生HREF,VSYNC,PCLK這3種同步信號(hào),分別為行同步輸出信號(hào)、場(chǎng)同步輸出信號(hào)和輸出像素時(shí)鐘。Y[7:0]為P03030K輸出的圖像數(shù)據(jù)信號(hào)。BF533使用GPIO的PF0和PF1模擬I2C總線協(xié)議,從而實(shí)現(xiàn)對(duì)P03030K內(nèi)部寄存器的讀寫操作。
2.3 GSM報(bào)警電路
GSM報(bào)警電路采用西門子公司的TC35模塊完成,TC35模塊通過MAX232串口接口芯片與DSP的UART口相連接。TC35模塊還提供了SIM卡接口,
插入注冊(cè)后的SIM卡,便能夠接入GSM通信網(wǎng)完成短信報(bào)警功能。
2.4 圖像存儲(chǔ)電路
本系統(tǒng)采用SD卡存儲(chǔ)壓縮編碼后的視頻數(shù)據(jù),SD卡有兩種工作模式:SDIO模式和SPI模式。由于BF533支持SPI接口,故采用SPI模式。BF533的SPI接口數(shù)據(jù)傳輸速率最快可達(dá)到系統(tǒng)時(shí)鐘的1/4,按系統(tǒng)時(shí)鐘為118.8 MHz進(jìn)行計(jì)算,SPI的最高數(shù)據(jù)率可達(dá)到29.7 MB/s,考慮到視頻流數(shù)據(jù)量較大,采用雙緩沖機(jī)制進(jìn)行存儲(chǔ),能夠滿足系統(tǒng)要求。SD卡接口電路,如圖3所示。
3 系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)軟件可分為視頻采集及壓縮程序、GSM短信報(bào)警程序和圖像存儲(chǔ)程序3部分,軟件流程圖,如圖4所示。
3.1 視頻采集及壓縮程序
DSP通過I2C接口完成對(duì)P03030K圖像傳感器的初始化,并設(shè)置相應(yīng)的寄存器完成對(duì)工作模式、數(shù)據(jù)輸出格式、分辨率、亮度和色度等的設(shè)置。P03030K與DSP的PPI口相連,輸出圖像數(shù)據(jù)以DMA方式傳輸?shù)絊DRAM中存儲(chǔ),本系統(tǒng)采用乒乓緩沖區(qū)的方法傳輸數(shù)據(jù),在內(nèi)存中開辟兩個(gè)緩沖區(qū),使用兩個(gè)頭尾相連的描述符鏈表控制PPI DMA一次傳輸數(shù)據(jù)到兩個(gè)緩沖區(qū)中。DMA每采集完一行圖像數(shù)據(jù)之后就產(chǎn)生一次中斷,在中斷服務(wù)程序中使用存儲(chǔ)器DMA將數(shù)據(jù)搬移到片外SDRAM,等待DSP對(duì)其進(jìn)行MPEG-4壓縮處理。視頻采集流程圖,如圖5所示。
DSP對(duì)視頻數(shù)據(jù)進(jìn)行壓縮編碼時(shí)采用MPEG-4標(biāo)準(zhǔn),由于CMOS圖像采集模塊輸出YUV4:2:2圖像,而編碼模型的輸入為YUV4:2:0圖像,故需要對(duì)采集到的圖像進(jìn)行色度重采樣。DCT和IDCT是編碼過程中被頻繁調(diào)用的兩個(gè)函數(shù),故采用匯編語言實(shí)現(xiàn)且使用Chen的快速算法,此外根據(jù)BF533的硬件和編譯系統(tǒng)的特點(diǎn),運(yùn)用各種方法對(duì)MPEG-4編碼程序代碼進(jìn)行大量的優(yōu)化工作,利用循環(huán)緩沖技術(shù)和DSP提供的各種像素操作指令和向量操作指令對(duì)PADDING算法、運(yùn)動(dòng)矢量預(yù)測(cè)、SAD最小搜索算法和半像素內(nèi)插等需要反復(fù)執(zhí)行的過程進(jìn)行匯編優(yōu)化,充分發(fā)揮BF533的并行處理能力。在內(nèi)存分配方面,在SDRAM中開辟了4個(gè)幀緩沖器,分別用于保存當(dāng)前編碼幀、當(dāng)前參考幀、下一編碼幀和下一參考幀數(shù)據(jù)。DSP的片內(nèi)RAM容量較小,但是訪問速度較快,而MPEG-4的最小編碼單元是宏塊,所以可以將宏塊從片外SDRAM轉(zhuǎn)移到片內(nèi)RAM中進(jìn)行處理,處理結(jié)束后再存到SDRAM中。另外為了加快數(shù)據(jù)塊搬移速度,充分利用BF533強(qiáng)大的DMA能力完成數(shù)據(jù)傳輸操作,同時(shí)將CPU頻繁訪問的程序和數(shù)據(jù)放在片上緩存中,并充分利用乒乓緩沖結(jié)構(gòu),提高編碼效率。
MPEG-4編碼流程,如圖6所示。
3.2 GSM短信報(bào)警程序
在紅外探測(cè)器檢測(cè)到有人入侵時(shí),DSP將立即向戶主發(fā)送短信報(bào)警信息,以便用戶采取措施。BF533通過UART口發(fā)送AT指令,實(shí)現(xiàn)對(duì)TC35模塊的控制,發(fā)送“AT+CMGF=1”設(shè)置短信發(fā)送模式為文本模式,發(fā)送“AT+CREG?”查詢網(wǎng)絡(luò)注冊(cè)情況,發(fā)送“AT+CMGS=13572472507”再加上短信內(nèi)容,即可以實(shí)現(xiàn)向目標(biāo)手機(jī)發(fā)送報(bào)警信息的目的。由于采用文本發(fā)送模式,故不能發(fā)送中文文字,本系統(tǒng)選擇發(fā)送英文字符“Danger”。
3.3 圖像存儲(chǔ)程序
壓縮后的視頻流數(shù)據(jù)將以文件的形式寫入SD卡中。在進(jìn)行寫卡操作前,先要對(duì)SD卡初始化,設(shè)置其為SPI工作模式。SD卡的尋址方式是按字節(jié)尋址的,為加快速度,將其設(shè)置為扇區(qū)尋址,每個(gè)扇區(qū)512 bit,寫一個(gè)扇區(qū)的函數(shù)部分程序段如下:
其中,sector為要寫的扇區(qū)號(hào),buff指向需要保存的數(shù)據(jù)流,SPI_transfer_byte為通過SPI口向SD卡傳輸l bit的函數(shù),SD_write_block為SD卡寫命令的編碼。
4 結(jié)束語
本系統(tǒng)依托目前覆蓋率較高的GSM公共網(wǎng)絡(luò),利用現(xiàn)有的無線通信業(yè)務(wù)和短消息服務(wù)業(yè)務(wù),實(shí)現(xiàn)了遠(yuǎn)程報(bào)警功能,且不受地域和時(shí)間的限制,并采用CMOS攝像頭采集現(xiàn)場(chǎng)圖像,提高了警情處理的效率。經(jīng)測(cè)試證明,該系統(tǒng)穩(wěn)定、可靠,報(bào)警準(zhǔn)確、及時(shí),圖像采集的幀率為15 f·s-1,單幀圖像的分辨率為320×240,能夠滿足用戶需求。