11.SCCB接口时序的实现

本文详细介绍了SCCB接口的3线控制时序,包括起始、停止信号的发送,以及3相数据传输过程。重点讲解了OV5640摄像头的初始化步骤、寄存器配置和时钟同步。通过实例代码演示了如何利用AXI-Lite接口控制寄存器,以及ILA测试确保信号正确性。

SCCB接口时序的实现

SCCB接口时序与IIC协议基本一致,是其简化版本,且SCCB协议兼容IIC协议。

基本时序介绍

最常用的时序是3线控制数据传输的方式,基本时序图如下。

image-20201211175052360

具体的控制信号,则是先发送起始信号,再发送数据,最后发送停止信号。

其中,3相数据传输又是最常用的方式。

起始信号为scl有效时,sda拉低。

image-20201211175316135

停止信号为scl有效时,sda拉高。

image-20201211175500687

正确的有效数据是scl为高电平时,sda保持不变,从而正确地读取数据,正好在时钟的上升沿读取有效数据。

image-20201211175520512

3相数据发送,即先发送器件地址,再发送子地址,最后发送需要写入的数据。

时序分析

根据上面的时序图,主要分为两部分来介绍整个时序实现的过程。

控制标志位产生

主要产生4个标志位,用于控制下面主体时序的是生成。

image-20201211180153008

scl的上升沿scl_pos_flag、下降沿scl_neg_flag以及sda的上升沿sda_pos_flag和下降沿sda_neg_flag四个控制信号,在主体的时序实现上起到很重要的作用。

主体时序分析

有个上图实现的4个控制信号,就可以很方便输出起始信号、停止信号以及数据信号。如下图所示。

image-20201211180312180

起始信号是在w_start_flag==1的范围内实现的,停止信号是在w_stop_flag==1的范围内实现的。数据信号是在phase_flag==1的范围内实现的。

时序测试

编写完成后,将其放入modelsim中进行测试。

image-20201211181019983

波形如上图所示,起始和停止信号在上图中已标出。

然后,使用ila抓取时序,查看波形信号。

下图中是w_end_flag的信号。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值