當前位置:編程學習大全網 - 源碼下載 - OV7620 SCCB老是收不到應答信號怎麽回事

OV7620 SCCB老是收不到應答信號怎麽回事

妳看看以下我的資料裏的壹段,也許對妳有啟發,而妳的是具體開發的事,所以妳先看看:

OV7620的控制采用SCCB(SeriaI Camera ControlBus)協議。SCCB是簡化的I2C協議,SIO-l是串行時鐘輸入線,SIO-O是串行雙向數據線,分別相當於I2C協議的SCL和SDA。SCCB的總線時序與I2C基本相同,它的響應信號ACK被稱為壹個傳輸單元的第9位,分為Don’t care和NA。Don’t care位由從機產生;NA位由主機產生,由於SCCB不支持多字節的讀寫,NA位必須為高電平。另外,SCCB沒有重復起始的概念,因此在SCCB的讀周期中,當主機發送完片內寄存器地址後,必須發送總線停止條件。不然在發送讀命令時,從機將不能產生Don’t care響應信號。

由於I2C和SCCB的壹些細微差別,所以采用GPIO模擬SCCB總線的方式。SCL所連接的引腳始終設為輸出方式,而SDA所連接的引腳在數據傳輸過程中,通過設置IODIR的值,動態改變引腳的輸入/輸出方式。SCCB的寫周期直接使用I2C總線協議的寫周期時序;而SC-CB的讀周期,則增加壹個總線停止條件。

OV7620功能寄存器的地址為0x00~0x7C(其中,不少是保留寄存器)。通過設置相應的寄存器,可以使OV7620工作於不同的模式。例如,設置OV7620為連續掃描、RGB原始數據16位輸出方式,需要進行如下設置:

I2CSendByte()為寫寄存器函數,它的第1個參數OV7620為宏定義的芯片地址0x42,第2個參數為片內寄存器地址,第3個參數為相應的寄存器設定值。

  • 上一篇:請教壹個FCKeditor 2.0的問題
  • 下一篇:什麽是CRM公海制度_CRM公海
  • copyright 2024編程學習大全網