基于ARM的緊湊型圖像采集系統(tǒng)
發(fā)布時間:2008/6/24 0:00:00 訪問次數(shù):577
摘要 利用arm7(lpc2210)與cmos感光芯片(ov7620)實現(xiàn)了一個緊湊型圈像采集、處理系統(tǒng);通過夸理利用lpc2210數(shù)據(jù)總線的工作方式,有效地消除了ov7620對系統(tǒng)數(shù)據(jù)總線的干擾。sccb控制,圖像數(shù)據(jù)的采集、處理以及傳輸都由一片lpc22lo完成,特別適合于對功耗、體積要求較嚴(yán)格的嵌入式應(yīng)用。
關(guān)鍵詞 arm7 ov7620 圖像傳感器 sccb協(xié)議 數(shù)據(jù)采集
0v7620是一種cmos圖像傳感器,它被廣泛應(yīng)用在網(wǎng)絡(luò)攝像頭、攝像手機等產(chǎn)品中。由它組成的圖像采集系統(tǒng),比較常見的設(shè)計方法為ov7620搭配ov5ll+或cpld/fpga。ov511+或cpld/fpga采集的圖像數(shù)據(jù)通過usb總線或雙端口ram輸出到pc或mcu(arm、dsp等),由pc或mcu對圖像數(shù)據(jù)進行進一步的處理。本文所設(shè)計的圖像采集系統(tǒng)僅用一個arm芯片就實現(xiàn)了ov7620的功能控制、時序同步、數(shù)據(jù)采集與處理等功能,系統(tǒng)結(jié)構(gòu)緊湊、實用。
1 硬件結(jié)構(gòu)
ov7620是cmos彩色/黑白圖像傳感器。它支持連續(xù)和隔行兩種掃描方式,vga與qvga兩種圖像格式;最高像素為664×492,幀速率為30fp8;數(shù)據(jù)格式包括yuv、ycrcb、rgb三種,能夠滿足一般圖像采集系統(tǒng)的要求。
ov7620內(nèi)部可編程功能寄存器的設(shè)置有上電模式和sccb編程模式。本系統(tǒng)采用sccb編程模式,連續(xù)掃描,16位rgb數(shù)據(jù)輸出。系統(tǒng)硬件結(jié)構(gòu)框圖如圖1所示。
arm芯片選用具有arm7tdmi內(nèi)核的lpc2210,通過lpc2210的gpio模擬sccb總線協(xié)議,控制ov7620的功能寄存器。使用lpc2210的3個中斷引腳引入ov7620的圖像輸出同步信號vsync、hsync、pclk,以中斷方式同步圖像數(shù)據(jù)輸出。ov7620的yuv通道輸出的16位并行數(shù)據(jù)通過lpc2210的高16位數(shù)據(jù)線接入。sst39vf160和is61lv25616al為擴展的flash和sram,分別用作程序存儲器和數(shù)據(jù)存儲器。
2 具體實現(xiàn)
2.1 ov7620的功能控制
ov7620的控制采用sccb(seriai camera controlbus)協(xié)議。sccb是簡化的i2c協(xié)議,sio-l是串行時鐘輸入線,sio-o是串行雙向數(shù)據(jù)線,分別相當(dāng)于i2c協(xié)議的scl和sda。sccb的總線時序與i2c基本相同,它的響應(yīng)信號ack被稱為一個傳輸單元的第9位,分為don’t care和na。don’t care位由從機產(chǎn)生;na位由主機產(chǎn)生,由于sccb不支持多字節(jié)的讀寫,na位必須為高電平。另外,sccb沒有重復(fù)起始的概念,因此在sccb的讀周期中,當(dāng)主機發(fā)送完片內(nèi)寄存器地址后,必須發(fā)送總線停止條件。不然在發(fā)送讀命令時,從機將不能產(chǎn)生don’t care響應(yīng)信號。
由于i2c和sccb的一些細微差別,所以采用gpio模擬sccb總線的方式。scl所連接的引腳始終設(shè)為輸出方式,而sda所連接的引腳在數(shù)據(jù)傳輸過程中,通過設(shè)置iodir的值,動態(tài)改變引腳的輸入/輸出方式。sccb的寫周期直接使用i2c總線協(xié)議的寫周期時序;而sc-cb的讀周期,則增加一個總線停止條件。
ov7620功能寄存器的地址為0x00~0x7c(其中,不少是保留寄存器)。通過設(shè)置相應(yīng)的寄存器,可以使ov7620工作于不同的模式。例如,設(shè)置ov7620為連續(xù)掃描、rgb原始數(shù)據(jù)16位輸出方式,需要進行如下設(shè)置:
i2csendbyte()為寫寄存器函數(shù),它的第1個參數(shù)ov7620為宏定義的芯片地址0x42,第2個參數(shù)為片內(nèi)寄存器地址,第3個參數(shù)為相應(yīng)的寄存器設(shè)定值。
2.2 ov7620時鐘同步
ov7620有4個同步信號:vsync(垂直同步信號)、fodd(奇數(shù)場同步信號)、hsync(水平同步信號)和pclk(像素同步信號)。當(dāng)采用連續(xù)掃描方式時,只使用vsync和hsync、pclk三個同步信號,如圖l所示。時為檢測ov7620掃描窗口的有效大小,還引入了href水平參考信號。
lpc2210的3個外部中斷引腳分別作為3個同步信號的輸入,相應(yīng)的中斷服務(wù)程序分別為vsync_irq()、hsync_irq()和pclk_irq()。在內(nèi)存中定義一個二維數(shù)組存儲圖像數(shù)據(jù),一維用變量y表示,用于水平同步信號計數(shù);二維用變量x表示,用于像素同步信號計數(shù)。圖像采集的基本流程為:當(dāng)用sccb初始化好ov7620后,使能vsync對應(yīng)的中斷,在vsync_irq()中斷服務(wù)程序中判斷是否已取得一幀數(shù)據(jù)。若是,則在主程序的循環(huán)體中進行數(shù)據(jù)處理;若不是,則使能hsync對應(yīng)的中斷,并將y置為o。在hsync_irq()中斷服務(wù)程序中,判斷href的有效電平,若有效,則y加1,x置為o,并使能pclk對應(yīng)的中斷。在pclk_irq()中斷服務(wù)程序中,判斷href的有效電平,若有效,則z增加,同時采集一個像素點的圖像數(shù)據(jù)。
2.3 圖像數(shù)據(jù)的輸出速度匹配
在ov7620的3個同步信號中,pclk的周期最短。當(dāng)ov7620使用27 mhz的系統(tǒng)時鐘時,默認的pclk的周期為74 ns。而lpc2210的中斷響應(yīng)時間遠遠大于這個值。lpc2210的最大中斷延遲時問為27個處理器指令周期,最小延遲時問為4個指令周期,再加上中斷服務(wù)時
摘要 利用arm7(lpc2210)與cmos感光芯片(ov7620)實現(xiàn)了一個緊湊型圈像采集、處理系統(tǒng);通過夸理利用lpc2210數(shù)據(jù)總線的工作方式,有效地消除了ov7620對系統(tǒng)數(shù)據(jù)總線的干擾。sccb控制,圖像數(shù)據(jù)的采集、處理以及傳輸都由一片lpc22lo完成,特別適合于對功耗、體積要求較嚴(yán)格的嵌入式應(yīng)用。
關(guān)鍵詞 arm7 ov7620 圖像傳感器 sccb協(xié)議 數(shù)據(jù)采集
0v7620是一種cmos圖像傳感器,它被廣泛應(yīng)用在網(wǎng)絡(luò)攝像頭、攝像手機等產(chǎn)品中。由它組成的圖像采集系統(tǒng),比較常見的設(shè)計方法為ov7620搭配ov5ll+或cpld/fpga。ov511+或cpld/fpga采集的圖像數(shù)據(jù)通過usb總線或雙端口ram輸出到pc或mcu(arm、dsp等),由pc或mcu對圖像數(shù)據(jù)進行進一步的處理。本文所設(shè)計的圖像采集系統(tǒng)僅用一個arm芯片就實現(xiàn)了ov7620的功能控制、時序同步、數(shù)據(jù)采集與處理等功能,系統(tǒng)結(jié)構(gòu)緊湊、實用。
1 硬件結(jié)構(gòu)
ov7620是cmos彩色/黑白圖像傳感器。它支持連續(xù)和隔行兩種掃描方式,vga與qvga兩種圖像格式;最高像素為664×492,幀速率為30fp8;數(shù)據(jù)格式包括yuv、ycrcb、rgb三種,能夠滿足一般圖像采集系統(tǒng)的要求。
ov7620內(nèi)部可編程功能寄存器的設(shè)置有上電模式和sccb編程模式。本系統(tǒng)采用sccb編程模式,連續(xù)掃描,16位rgb數(shù)據(jù)輸出。系統(tǒng)硬件結(jié)構(gòu)框圖如圖1所示。
arm芯片選用具有arm7tdmi內(nèi)核的lpc2210,通過lpc2210的gpio模擬sccb總線協(xié)議,控制ov7620的功能寄存器。使用lpc2210的3個中斷引腳引入ov7620的圖像輸出同步信號vsync、hsync、pclk,以中斷方式同步圖像數(shù)據(jù)輸出。ov7620的yuv通道輸出的16位并行數(shù)據(jù)通過lpc2210的高16位數(shù)據(jù)線接入。sst39vf160和is61lv25616al為擴展的flash和sram,分別用作程序存儲器和數(shù)據(jù)存儲器。
2 具體實現(xiàn)
2.1 ov7620的功能控制
ov7620的控制采用sccb(seriai camera controlbus)協(xié)議。sccb是簡化的i2c協(xié)議,sio-l是串行時鐘輸入線,sio-o是串行雙向數(shù)據(jù)線,分別相當(dāng)于i2c協(xié)議的scl和sda。sccb的總線時序與i2c基本相同,它的響應(yīng)信號ack被稱為一個傳輸單元的第9位,分為don’t care和na。don’t care位由從機產(chǎn)生;na位由主機產(chǎn)生,由于sccb不支持多字節(jié)的讀寫,na位必須為高電平。另外,sccb沒有重復(fù)起始的概念,因此在sccb的讀周期中,當(dāng)主機發(fā)送完片內(nèi)寄存器地址后,必須發(fā)送總線停止條件。不然在發(fā)送讀命令時,從機將不能產(chǎn)生don’t care響應(yīng)信號。
由于i2c和sccb的一些細微差別,所以采用gpio模擬sccb總線的方式。scl所連接的引腳始終設(shè)為輸出方式,而sda所連接的引腳在數(shù)據(jù)傳輸過程中,通過設(shè)置iodir的值,動態(tài)改變引腳的輸入/輸出方式。sccb的寫周期直接使用i2c總線協(xié)議的寫周期時序;而sc-cb的讀周期,則增加一個總線停止條件。
ov7620功能寄存器的地址為0x00~0x7c(其中,不少是保留寄存器)。通過設(shè)置相應(yīng)的寄存器,可以使ov7620工作于不同的模式。例如,設(shè)置ov7620為連續(xù)掃描、rgb原始數(shù)據(jù)16位輸出方式,需要進行如下設(shè)置:
i2csendbyte()為寫寄存器函數(shù),它的第1個參數(shù)ov7620為宏定義的芯片地址0x42,第2個參數(shù)為片內(nèi)寄存器地址,第3個參數(shù)為相應(yīng)的寄存器設(shè)定值。
2.2 ov7620時鐘同步
ov7620有4個同步信號:vsync(垂直同步信號)、fodd(奇數(shù)場同步信號)、hsync(水平同步信號)和pclk(像素同步信號)。當(dāng)采用連續(xù)掃描方式時,只使用vsync和hsync、pclk三個同步信號,如圖l所示。時為檢測ov7620掃描窗口的有效大小,還引入了href水平參考信號。
lpc2210的3個外部中斷引腳分別作為3個同步信號的輸入,相應(yīng)的中斷服務(wù)程序分別為vsync_irq()、hsync_irq()和pclk_irq()。在內(nèi)存中定義一個二維數(shù)組存儲圖像數(shù)據(jù),一維用變量y表示,用于水平同步信號計數(shù);二維用變量x表示,用于像素同步信號計數(shù)。圖像采集的基本流程為:當(dāng)用sccb初始化好ov7620后,使能vsync對應(yīng)的中斷,在vsync_irq()中斷服務(wù)程序中判斷是否已取得一幀數(shù)據(jù)。若是,則在主程序的循環(huán)體中進行數(shù)據(jù)處理;若不是,則使能hsync對應(yīng)的中斷,并將y置為o。在hsync_irq()中斷服務(wù)程序中,判斷href的有效電平,若有效,則y加1,x置為o,并使能pclk對應(yīng)的中斷。在pclk_irq()中斷服務(wù)程序中,判斷href的有效電平,若有效,則z增加,同時采集一個像素點的圖像數(shù)據(jù)。
2.3 圖像數(shù)據(jù)的輸出速度匹配
在ov7620的3個同步信號中,pclk的周期最短。當(dāng)ov7620使用27 mhz的系統(tǒng)時鐘時,默認的pclk的周期為74 ns。而lpc2210的中斷響應(yīng)時間遠遠大于這個值。lpc2210的最大中斷延遲時問為27個處理器指令周期,最小延遲時問為4個指令周期,再加上中斷服務(wù)時
熱門點擊
- The MathWorks推出R2008a版
- 基于uc/os-ii的嵌入式GUI研究與應(yīng)用
- u-blox的LEA-5T精確授時GPS模塊
- 英飛凌針對M2M應(yīng)用推出安全微控器系列
- 凌華科技重磅推出嵌入式計算機GEME-120
- 嵌入式uClinux下的CAN總線設(shè)備驅(qū)動程
- Marvell推出了該公司內(nèi)部開發(fā)的新一代C
- AMCC推出高級PowerPC 460SX存
- Xilinx最新Virtex-5 FXT F
- 面向交互式終端和控制應(yīng)用的嵌入式處理器
推薦技術(shù)資料
- DFRobot—玩的就是
- 如果說新車間的特點是“靈動”,F(xiàn)QPF12N60C那么... [詳細]
- 100A全集成電源模塊R
- Teseo-VIC6A GNSS車用精準(zhǔn)定位
- 高效先進封裝工藝
- 模數(shù)轉(zhuǎn)換器 (Analog-to-Digit
- 集成模數(shù)轉(zhuǎn)換器(ADC)
- 128 通道20 位電流數(shù)字轉(zhuǎn)換器̴
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究