高清攝像頭MIPI CSI2接口淺解【轉】


本文轉載自:http://blog.csdn.net/u012075739/article/details/44672435

MIPI攝像頭常見於手機、平板中,支持500萬像素以上高清分辨率。它的全稱為“MobileIndustryProcessorInterface”,分為MIPIDSI和MIPICSI,分別對應於視頻顯示和視頻輸入標准。目前,MIPI攝像頭在其他嵌入式產品中,比如行車記錄儀、執法儀、高清微型相機、網絡監控相機等得到廣泛應用,因此我們以OMAP4處理器為例,談談MIPI攝像頭如何與ARM處理器連接。
OMAP4支持MIPICSI2版本,其中4460支持兩路視頻輸入,為了進行接口和軟件驗證,我們先在OMAP4開發板PandaboardES上設計了攝像頭模塊,如下圖:

攝像頭模塊是通過Pandabaord的J17引腳焊接上去的,為了更好地理解CSI2接口,我們先看看PandabaordES的J17定義了哪些引腳:


可以看到J17中包含了5組差分信號,即(CSI21_DX0,CSI21_DY0),(CSI21_DX1,CSI21_DY1),(CSI21_DX2,CSI21_DY2),(CSI21_DX3,CSI21_DY3),(CSI21_DX4,CSI21_DY4)。這五組信號來自於OMAP4的CSI2-A接口,如下圖所示:

上圖摘自於omap4的手冊。可以看出,OMAP4430其實有兩路CSI2接口,即CSI2A和CSI2B,說明其可以接兩個攝像頭,這已經是手機或者平板應用的基本要求了。CSI2A接口擁有五組差分接口(csi2a_dxi,csi2a_dyi,i=0~4),分別對應J17引腳的(CSI21_DXi,CSI21_DYi,i=0~4)。一組差分信號稱為Lane,每個Lane可以通過軟件配置為DataLane和ClockLane,而且差分信號的極性也可以軟件配置。當然最常規的用法是將(dx0,dy0)用於傳輸clock信息。CSI2A可以有4個DataLane和1個ClockLane,而CSI2B則只能有1個DataLane和1個ClockLane,DataLane越多,其能傳輸的速度越高,也就是更傳輸更高分辨率的圖片。DataLane個數與傳輸速度的關系是這樣的:


datalane個數 極限速度 對應圖像傳輸幀率
OneDatalane 1000Mbps 1280*720@30fps
TwoDatalane 2x1000Mbps 1280*720@60fps
ThreeDatalane 3x1000Mbps 1280*720@90fps

從這個表格中可以看到,MIPI采用差分線傳輸,速度還是很快的,比並行傳輸要快很多。在使用兩組datalane的情況下,就可以做到720p@30fps了。如果要提高圖像的分辨率,在使用同樣多datalane的情況下,就要降低幀率了。
我們為pandaboard研發的攝像頭模塊采用ov5640傳感器,它支持兩組datalane,以下是它所支持的傳輸格式:

format resolution framerate
5Mpixel 2592x1944 15fps
1280x960 1280x960 45fps
1080p 1920x1080 30fps
720p 1280x720 60fps
VGA 640x480 90fps
QVGA 320x240 120fps

ov5640擁有2組datalane,還有1組clocklane,因此可以如下方式連接ov5640和omap4.

其中(MC_P,MC_N)為ov5640的用於傳輸時鍾的引腳,(MD0_P,MD0_N),(MD1_P,MD1_N)為用於傳輸數據的引腳。除了要連接好ov5640的差分信號外,還要給ov5640輸入時鍾信號,這個時鍾信號可以來自於晶振,也可以來自於omap4。我們選擇一個用一個晶振產生24M的時鍾信號,具體如何連接這里不再敘述。
接下來我們順便講講OV5640的I2C控制信號。另外我們注意到OV5640有SIOC和SIOD。那么這I2C控制信號是干什么的?一個很明顯的用途就是來設置OV5640的圖像輸出格式,比如是輸出RGB格式還是YUV格式。這是通過寄存器來設置的。
其實OV5640作為視覺傳感芯片,其有很多寄存器來控制圖像的拍攝參數,比如增益控制、曝光控制等,這些參數一般設置為默認值即可,但如果用戶想再特定環境下獲得更好的圖像質量,可以設定這些參數來達到最佳效果。比如在晚上開啟夜視模式(把每幀曝光時間調長),或者在室內開啟工頻抑制,在日光燈下圖像不閃爍(通過設置曝光時間為光周期信號整數倍),可以達到更加靈活的使用效果。運行於omap4的拍照軟件可以運行一個類似於光照檢測的算法來來設定這些參數,從而達到一個最佳效果,這個就得看軟件算法的功力了。
另外,OV5640內部還有一個ISP(ImageSignalProcessor),能夠做簡單的一些圖像處理算法,比如Gamma校正,圖像縮放等,但相對於OMAP4430的強大的ISP而言,而其功能還是小巫見大巫了,所以推薦直接使用OMAP4430的ISP功能。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM