再议IIC协议与设计【3】 --SCCB总线介绍

本文介绍了SCCB(Serial Camera Control Bus)总线,它是OmniVision公司定义的用于控制Camera Sensor的串行总线。SCCB与IIC相似,但在第9个SCL周期的定义上有别。文章详细阐述了SCCB的总线描述、信号定义及3种传输方式,并探讨了OV4689传感器的读写时序。
摘要由CSDN通过智能技术生成

SCCB (Serial Camera Control Bus) 是由OmniVision公司所定义的串行相机控制总线。用于控制OmniVision公司生产的Camera Sensor。本文通过对SCCB总线进行粗略的描述,并完成使用Xilinx的KC705中Microblaze完成对相机OV4689的配置。


第一部分 SCCB总线介绍


1. 总线描述

SCCB总线是的标准定义是一个3-wire制的串行总线(如图1),在实际的应用中,为了适应更小封装的sensor尺寸,现在的相机,一般情况下都使用2-wire来代替3-wire SCCB总线,其中SCCB_E信号被舍弃。在下面的描述中,我们就直接对2-wire串行总线进行描述。



图 1 SCCB 3-wire


需要说明的是,Camera Sensor在实际的通信传输中,只能作为从机来使用。并且2-wire的SCCB在实际的通信中,与IIC总线有很大的相似度。唯一不同的是SCCB在数据传输的过程中,在第9个SCL周期中的定义与IIC总线不同。


2. 总线信号定义


SIO_C

SIO_C信号是由主设备驱动的,是单向,高电平有效的控制信号。它表示了每一个传输位。在总线空闲时,主设备必须驱动SIO_C为1。在传输开始之后,SIO_C被驱动为逻辑0时,数据开始传输。在数据传输期间,SIO_C的逻辑1指示单个发送位。因此,只有当SIO_C被驱动为0时,SIO_D才能发生变化。单个发送位的周期被定义为tcyc,tcyc的最小值为10us.即时钟频率大于等于100KHz。可以看到,SIO_C信号与IIC的SCL信号是完全相同的。

 

SIO_D

SIO_D信号是双向数据信号,可以由主设备或从设备来驱动。当总线空闲时,它保持浮动或者处于三态。信号的保持是由主设备和从设备共同来决定的。这与IIC的SDA比较类似。不过需要说明的是,“处于浮动或者三态”这是在3-wire中的定义,当我们在使用2-wire的时候,为了与IIC的SDA线保持一致,将SIO_D在空闲时的状态定义为逻辑1.


3. SCCB传输方式


注意 : 以下讨论主要针对于Camera Sensor 的 Register Address为8bit,16bit在后面的部分介绍

一个基本的数据传输元素被成为一个phase。SCCB所定义的传输方式分为以下三种:

  • 3-phase写传输周期
  • 2-phase写传输周期
  • 2-phase读传输周期


3.1 传输周期


一个pahse包含总共9bit,9bit是由8bit有序的数据传输和第9bit组成(如图2)。第9bit被称之为Don`t-Care位或者一个NA位(注意这与IIC不同)。这取决于数据的传输操作是写&#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值