王健,張翔
(西安工業大學 電子信息工程學院,陜西 西安 710032)
嵌入式系統中的圖像采集是進行圖像處理的基礎,只有在采集時就進行前端的處理和控制,才能減少圖像中的噪聲,為后續的圖像處理提供良好的數據[1]。OV7670開放了控制寄存器,用戶可以通過SCCB總線來實現讀寫操作,可以設置圖像輸出格式、控制曝光等,為具體的應用場景提供了更底層的支持。正確的讀寫寄存器就成為獲得圖像的第一步。
OV7670 CAMERACHIPTM圖像傳感器,體積小、工作電壓低,提供單片VGA攝像頭和影像處理器的所有功能。通過SCCB總線控制,可以輸出整幀、子采樣、取窗口等方式的各種分辨率8位影響數據。該產品VGA圖像最高達到30幀/秒。用戶可以完全控制圖像質量、數據格式和傳輸方式。所有圖像處理功能過程包括伽瑪曲線、白平衡、飽和度、色度等都可以通過SCCB接口編程。OmmiVision圖像傳感器應用獨有的傳感器技術,通過減少或消除光學或電子缺陷如固定圖案噪聲、托尾、浮散等,提高圖像質量,得到清晰的穩定的彩色圖像。功能框圖[2]如圖1所示。為了保證圖像采集的連續性和完整性,外加一個384K,8位的FIFO,AL422為圖像采集和處理作緩沖。OV7670與AL422的連接如圖2所示。
SCCB(Serial Camera Control Bus),即串行攝像機控制總線,是OmniVision公司為完成對絕大部分OmniVision系列圖像傳感芯片功能的控制而制定的一種三線結構串行總線[3]。在簡化的引腳封裝中(如典型的24腳封裝),SCCB總線可以工作在改進的兩線工作方式下。兩線SCCB適合于主片只有一個從片的時候使用,此時的SCCB_E*信號被使能并置低,其連接框圖如圖3所示。
兩線連接的SCCB數據傳輸時序如圖4所示。
SCCB總線協議中使用的信號如表1、表2所示。

圖1 OV7670功能框圖Fig.1 Functional block diagram of OV7670
數據傳輸開始:當總線空閑時,主片SIO_D信號置高或“1”。 在 SIO_C 是高或“1”且 SIO_D 驅動到低或“0”時,數據傳輸開始[4]。如圖5所示。

圖2 OV7670和FIFO連接示意圖Fig.2 Connection diagram of OV7670 and FIFO

圖3 兩線SCCB連接框圖Fig.3 2-wire SCCB functional block diagram

圖4 兩線SCCB數據傳輸時序Fig.4 2-wire data transmission

表1 主片信號說明Tab.1 Master device pin descriptions

表2 從片信號說明Tab.1 Slave device pin descriptions


圖5 兩線SCCB數據傳輸開始Fig.5 Start of data transmission

數據傳輸停止:當SIO_C信號是高或“1”,SIO_D信號從低或“0”到高或“1”時,數據傳輸停止[5]。 如圖6所示。

圖6 兩線SCCB數據傳輸停止Fig.6 Stop of Data Transmission


寫操作只有在一個開始信號之后,才能由主片啟動;在一個停止信號之后或者一個新的開始信號之后,寫操作才完成[6]。同樣,讀操作也是在一個停止信號或者一個新的開始信號之后才完成。
讀寄存器操作的函數實現如下:

寫寄存器操作的實現函數如下:


通過對OV7670的寄存器設置,可以很好的實現對OV7670的圖像數據的采集和傳輸過程進行有效的干預。寄存器讀寫可以確定攝像頭一端的工作狀況,方便了嵌入式系統的開發調試;能夠在系統中根據要求來改變模塊傳輸數據的格式,并根據環境光線的強弱來改變曝光強度。避免了采集到的圖像不清晰甚至是亂碼的問題。
[1]褚紅娟,隋國榮.基于SCCB通信的FPGA視頻采集模塊[J].自動化儀表,2010,11(31):68-70.
CHU Hong-juan,SUIGuo-rong.FPGA VF information collection Module Based on SCCB Communication[J].Process Automaton Instrumentation,2010,11(31):68-70.
[2]OV7670/OV7171 Datasheet(Version 1.3)[Z].Omnivision.
[3]OmniVision Serial Camera Control Bus (SCCB)Functional Specification(Version 2.1)[S].2003.
[4]苑瑋琦,湯永華.OmniVision圖像傳感器的SCCB總線協議在DSP中的實現[J].儀器儀表學報,2006,27(S1):1687-1688.
YUAN Wei-qi,TANG Yong-hua.Application of SCCB of OmniVision camera in DSP[J].Chinese Journal of Scientific Instrument, 2006,27(S1):1687-1688.
[5]譚營,許化龍,吳琳.基于PC/104的數據采集系統設計[J].微計算機信息, 2007 (32):78-79.
TAN Ying,XU Hua-long,WU Lin.Design of data acquisition system based on PC/104 bus[J].Microcomputer Information,2007(32):78-79.
[6]劉明剛,施建禮,夏涑濤.基于PC/104總線和CPLD的多通道實時數據采集系統[J].儀表技術, 2007(8):23-25.
LIU Ming-gang,SHI Jian-li,XIA Su-tao.A design of real-time multichannel data acquisition system based on PC/104 bus and CPLD[J].Instrumentation Technology,2007(8):23-25.