camera TI方案DS90UB913、DS90UB914、DS90UB964调试问题

时间:2024-03-26 12:38:54

(1)、964/913正常通信,sensor I2C不能正常通信

camera TI方案DS90UB913、DS90UB914、DS90UB964调试问题

调试过程中,964、913可以访问,sensor访问失败;

最后找到原因为:camera模组里面的sensor跟964(0X30)地址ID冲突,硬件上修改964的ID后,I2C可以访问sensor。

 

(2)、网友:DS90UB964 I2C不能正常通信

开发环境 sensor + 4X913+ ds90ub964 + MCU,

上电,964 PDB引脚1.62V, IDX引脚1.72V,根据数据手册Addres 为0x3d,  但是MCU 与 ti1005 I2C不能通信,有什么可能的原因导致不能正常通信呢

还有 MCU单独接964不连接913,I2C能正常通信吗,谢谢

camera TI方案DS90UB913、DS90UB914、DS90UB964调试问题

答:现在可以通过I2C访问964的寄存器了,原先是因为PDB引脚使能没有延时,

camera TI方案DS90UB913、DS90UB914、DS90UB964调试问题camera TI方案DS90UB913、DS90UB914、DS90UB964调试问题

但是发现寄存器0x5b SER ID的值为0,按数据手册这个SER ID应该是上电自动加载的。

camera TI方案DS90UB913、DS90UB914、DS90UB964调试问题

请问什么原因造成的呢

  • 这一位的缺省值是0,然后从远端加载远端的ID。所以是本地的通了,远端的没有通

  • 找到原因了,913的PDB引脚没有拉高。 现在可以配置913了,但是访问不了sensor,请问一下访问sensor,964,913还要做什么特殊配置吗

    这是我的配置, 78为sensor i2 addr

    ds90ub964_write_reg(client,0x4c,0x01); //select RX0 for RW
    ds90ub964_write_reg(client,0x58,0x58);
    ds90ub964_write_reg(client,0x5c,0xB2);
    ds90ub964_write_reg(client,0x5d,0x78); //slave id addr
    ds90ub964_write_reg(client,0x65,0x78 | 1); //slave alias addr

  • (3)、DS90UB964无图像输出

调试964发现无图像输出,开发环境为 ADAS+964+913++sensor,964 和 913 使用同轴电缆连接,目前只接了一个913

 913采用PCLK模式,

配置好sensor后PCLK HSYNC VSYNC信号都正常,PCLK输出48MHZ,sensor 配置为1280x720 30fps  raw 8bit data输出

但是964无信号输出,读964的状态寄存器:

 964 reg 0x35 = 0x1    说明 TX port pass

 964 reg 0x73= 0x2     line count H

 964 reg 0x74= 0x37   line count L   (0x73,0x74的值一直在变化)
 964 reg 0x75 = 0x2    line length H
 964 reg 0x76 = 0xfd   line length L  (0x75, 0x76的值固定不变)
 964 reg 4d = 0x3
 964 reg 4e= 0x45
 964 reg 4f = 0x18      (24MHZ )
 964 reg 50= 0x0
 964 reg 55 = 0x0
 964 reg 56= 0x0

说明964接到数据了,可是964没有信号输出,小弟实在毫无头绪,请求各位大神给点建议,谢谢!

  • 你好,我想问一下你用964配置的寄存器值还在么 ?我用I2C配置的时候,差分管脚的图像数据和SDA数据一样,不知道是什么原因,不知道是不是配置寄存器的时候出了什么问题,将数据输出给disable了或者由于其他寄存器的设置影响了输出,谢谢!

  • 检查下寄存器0x33 bit0 是否enable CSI output 了,初始状态下这个位设置的是0,disable CSI output。

camera TI方案DS90UB913、DS90UB914、DS90UB964调试问题camera TI方案DS90UB913、DS90UB914、DS90UB964调试问题

(4)、UB964 寄存器问题请教

UB964的寄存器数据有些问题请教一下,

  我这边的设备配置 cam*4-> 913-->964, 图像格式是 12bit Bayer数据, 1280*720 , 25帧,  加上行场消隐后1800*1650, PCLK = 74.25MHz,

 1.  964选取的模式为 raw12 bit HF模式

(1)  0x73 ,0x74, 0x75,0x76寄存器 读取 图像的line cnt 和line length, 实际读取的数据为 line cnt 720, line length 1920 即 1280*1.5, 这 4个寄存器的数据是指的有效图           像数据还是指的是加上行场消隐的数据?

(2) 0x4f ,0x50寄存器 读取的数据为 99MHz, 这两个寄存器是否是964文档中说的FPD3_PCLK数据,  如果是的话, 应该是 PCKL*2/3 = FPD3_PCLK,

     这样计算出来的话实际测试出来的PCLK = 1.5*99  = 148.5MHz, 是实际测试出的 UB913的输入PCLK的2倍. 

 

(5)、PDB导致ds90ub913 i2c通信不正常

开发环境是这样的 sensor + 913 + 964 + MCU.

使用官方购买的913开发板 是可以正常工作的

 但使用ti-00421方案,做的913的模块,i2c通信不正常,读964的寄存器0x5b值为0xb0,说明913的i2c地址被正确加载,

但是却访问不到913的寄存器。不知道什么原因。

  比较了下913 EVM和ti00421方案的原理图,发现913的vddio 为3.3V,但是ti-00421方案为1.8V,不知道是不是导致工作不正常

答:电压都正常,使用ti-00421的方案作了四个camera,只有一个913模块可以读到寄存器,看913数据手册,pdb上电有时序要求,要接个10uf的电容,

但是ti-00421原理图没有接,不知道这个有没有影响

手动控制一下PDB的时序试试呢?当VDD_n和VDDIO都上电起来到稳定之后,PDB再由低变高。验证下是否PDB导致的。

camera TI方案DS90UB913、DS90UB914、DS90UB964调试问题 camera TI方案DS90UB913、DS90UB914、DS90UB964调试问题

(6)、关于DS90UB964的亮度、对比度、饱和度的参数调整

关于DS90UB964的亮度、对比度、饱和度的参数调整的软件设置。我查看了一下DS90UB964的datasheet,并没有找到关于这三个参数的寄存器设置。想请教一下如果想调整这三个参数,该在哪里进行设置,谢谢!

答:它的内部架构并没有集成对亮度,色度的处理模块,所以也是不能通过964 对亮度,色度,饱和度能参数的处理。

一般视频解码器件会有这类功能。

(7)、关于913寄存器如何配置问题?

使用 964 + 913 目前可以通过i2c访问到913设备,

i2cget -f -y 0 0x58 0x00    -----》  0xb0

0x58为913设备的从机地址

964设备的从机地址为:0x30

访问964设备 0x73-0x74   0x75-0x76寄存器值都是为0

[email protected]:~/964_913_new# i2cget -f -y 0 0x30 0x73
0x00

[email protected]:~/964_913_new# i2cget -f -y 0 0x30 0x74
0x00
[email protected]:~/964_913_new# i2cget -f -y 0 0x30 0x75
0x00
[email protected]:~/964_913_new# i2cget -f -y 0 0x30 0x76
0x00

请问913哪些寄存器需要进行配置?

(8)、DS90UB913/914中IIC总线的问题请教

913: mode管脚,10K上拉,100K下拉,配置为使用image sensor的时钟。  PDB管脚上拉。

camera TI方案DS90UB913、DS90UB914、DS90UB964调试问题

我选用的sensor在上电后不输出pclk,需要对sensor寄存器配置才有输出,也就是说913上电后捕获不到pclk时钟。目前可以通过上位机读写913的寄存器,但是无法读写sensor的寄存器。用示波器测了913的SCL和SDA管脚,均没有波形输出(一直高电平)。请教如下问题:

(1)913没有捕获到pclk,是否能使用其内部时钟正常工作?

(2)为什么913的SCL和SDA没有输出?是寄存器设置问题还是913没有正常工作?

  • 1)PCLK有两种方式,一种是通过上图中这种,外部晶振给sensor, sensor输出PCLK给913,还有一种是Figure 36中方法外部晶振给913 GPO3引脚,内部分频电路输出GPO2给sensor 提供参考时钟,PCLK和外部晶振提供频率的分频系数根据10bit还是12bit模式来决定。 

    如果您采用了上述方法的话,就是通过sensor输出的PCLK给913提供参考时钟。

    2) 如果想通过上位机对sensor寄存器进行配置,那么slave ID和slave Alise ID如何配置的? Slave ID应该是sensor的物理地址,0X50左移一位为0XA0

  •  

    这个问题解决了,是BIST模式一直处于enable状态,disable就可以了。现在有个新的问题,就是我的sensor寄存器地址和数据都是16位的,而913数据手册上给的写时序图好像是8位的,如下:

    camera TI方案DS90UB913、DS90UB914、DS90UB964调试问题

    我用示波器测了913的IIC输出数据为:start,7bit slave address,register address高8位,register address低8位,stop。后面的寄存器数据就没有了。请问Kailyn,如何向16位寄存器的sensor写数据?谢谢!

  • 你这边964配置可能没有配置sensor的地址?