大學生網(wǎng)站建設方案世界球隊最新排名
文章目錄
- 前言
- 一、信號線
- 二、SCCB數(shù)據(jù)傳輸格式
- 三、SCCB寫(與IIC完全一致)
- 四、SCCB讀
- 五、SCCB和IIC的區(qū)別
前言
IIC接口有比較廣泛的應用,而SCCB(Serial Camera Control Bus,串行攝像頭控制總線)是由OV(OmniVision的簡稱)公司定義和發(fā)展的三線式串行總線,該總線控制著攝像頭大部分的功能,包括圖像數(shù)據(jù)格式、分辨率以及圖像處理參數(shù)等。主要用于攝像頭控制,可以說SCCB是低配版的IIC。因為IIC可以實現(xiàn)多主多從,IIC規(guī)范文檔中有提到多主機的時鐘同步、總線仲裁功能。而SCCB的文檔中則沒有這部分內(nèi)容,因為一般來說都是單個主機控制多個攝像頭,只有一主多從的功能。
提示:以下是本篇文章正文內(nèi)容,下面案例可供參考
一、信號線
IIC只有兩根信號線,SCCB的SIO_C、SIO_D和IIC的SCL、SDA分別對應,SCCB額外還有SCCB_E和PWDN兩根控制線,這個影響不大。
SDA和SCL都是需要靠電阻上拉的,硬件設計上需要注意這一點。IIC的Ultra-Fast模式下,能夠達到5MHz的傳輸速率,這時在硬件上,IIC采用的是推挽輸出,為了進行區(qū)分,相應的信號稱為USDA和USCL,僅在這時是不需要上拉電阻的。
SCCB如果要實現(xiàn)一主多從的話,需要用三根線,除了SIO_C和SIO_D,還有一根SCCB_E。而如果僅控制一個攝像頭,那么可以只用兩根線SIO_C和SIO_D。
二、SCCB數(shù)據(jù)傳輸格式
所謂數(shù)據(jù)傳輸?shù)母袷骄褪窃谝粋€啟動信號和停止信號之間的內(nèi)容,每一次傳輸作為一個傳輸周期。SCCB接口主要實現(xiàn)目的寄存器的讀寫功能。有三種基本操作,分別是“3-Phase Write”、“2-Phase Write”和“2-Phase Read”
Phase Write
這里的IP address類似IIC的從機地址;sub-address是從機內(nèi)的寄存器地址,也就是攝像頭的一些控制寄存器的地址;最后就是要寫入該寄存器的數(shù)據(jù)。
Phase Write
與3-Phase Write相比,2-Phase Write只是確定了要訪問的寄存器,但是沒有往里面寫數(shù)據(jù)。2-Phase Write后一定會有一個2-Phase Read,兩者一起構成一個完整的讀操作。
Phase Read
2-Phase Read即讀取目標寄存器的數(shù)據(jù),它的前面一定要有一個3-Phase Write或者2-Phase Write用來明確目的寄存器的地址。
三、SCCB寫(與IIC完全一致)
即:start + phase_1 + phase_2 + phase_3 + stop
“X”的意思是“don’t care”,該位是由從機發(fā)出應答信號來響應主機表示當前ID Address、Sub-address和Write Data是否傳輸完成,但是從機有可能不發(fā)出應答信號,因此主機(此處指FPGA)可不用判斷此處是否有應答,直接默認當前傳輸完成即可?!癤”即IIC中的ACK應答位。
四、SCCB讀
在IIC讀傳輸協(xié)議中,寫完寄存器地址后會有restart即重復開始的操作;而SCCB讀傳輸協(xié)議中沒有重復開始的概念,在寫完寄存器地址后,需發(fā)起總線停止信號。
即:start_1 + phase_1 + phase_2 + stop_1 + start_2 + phase_3 + phase_4 + stop_2
五、SCCB和IIC的區(qū)別
1.SCCB的應答位稱為X,表示“don’t care”,而IIC應答位稱為ACK。
2.SCCB只能單次讀,而IIC除了單次讀還支持連續(xù)讀。
3.SCCB讀操作中間有stop,而IIC讀操作中間可以有stop也可以不需要stop,具體表現(xiàn)如下
SCCB讀:start_1 + phase_1 + phase_2 + stop_1 + start_2 + phase_3 + phase_4 + stop_2
IIC讀:start_1 + phase_1 + phase_2 + + start_2 + phase_3 + phase_4 + stop_2
除去上面三點,SCCB和IIC再無區(qū)別,因此如果只需要配置寄存器(只用到寫),可以直接拿IIC的時序來當做SCCB用,如果需要讀,讀操作中間必須有一個stop。