CS-MIPI-IMX307 I2C通信失败
-
你好,我在AXU2CGA开发板上使用你们的 CS-MIPI-IMX307摄像头模组时I2C通信失败。按照imx307 datasheet 上的描述,读取imx307地址0x301E和0x301F,正常会得到返回数据0xb2和0x01。
但是我得到的数据都是0(程序解析为0,如下代码)imx307_read(IicInstance, 0x301E, &sensor_id[0]); imx307_read(IicInstance, 0x301F, &sensor_id[1]); if (sensor_id[0] != 0xb2 || sensor_id[1] != 0x01) { xil_printf("Not imx307 id, %x %x\r\n", sensor_id[0], sensor_id[1]); return 0 ; } else { xil_printf("Got imx307 id, %x %x\r\n", sensor_id[0], sensor_id[1]); }I2C clk为59kHz,下图是用示波器抓取的I2C clk 信号(黄色)以及data信号(绿色)。从示波器抓取到的clk来看,当进行I2C通信时,clk的点平会拉低一点,低于正常3.3v,不清楚什么原因导致的?
希望您能给我点帮助信息来定位这个问题!谢谢
-
-
@rice
你好,可以看到我们模组上面除了sensor,还有其他的芯片。
这个模组输出是UYVY的,经过了isp处理。
作为上位机来说,是访问不到sensor的。
http://wiki.veye.cc/index.php/CS-MIPI-IMX307_STARVIS_Module/zh
http://wiki.veye.cc/index.php/CS-MIPI-X_i2c/zh -
@veye_xumm
感谢您的回答,我的应用程序时直接发起 I2C通信,也就是和imx307模块的Pin13 Pin14(SCL SDA)通信。
您说“作为上位机来说,是访问不到sensor的”这句话的意思是不是:
imx307模块的Pin13 Pin14(SCL SDA)引脚其实没连接到 IMX307 芯片上,而是连接到其他芯片上?
如果是这样,那我怎么直接配置 imx307 的寄存器? -
@rice said in CS-MIPI-IMX307 I2C通信失败:
)引脚其实没连接到 IMX307 芯片上,而是连接到其他芯片上?
是的,接到了我们的主控芯片。
@rice said in CS-MIPI-IMX307 I2C通信失败:
那我怎么直接配置 imx307 的寄存器?
控制不了
-
@veye_xumm
感谢答复,看了你们的驱动代码:https://github.com/veyeimaging/nxp_i.mx_veye_bsp/blob/main/driver_source/4.19.35/csimx307_mipi_v2.c可以看到 csimx307_check_id函数是通过I2C通信读取地址0x0102和地址0x0103的数据,我的FPGA开发板没有linux系统,我直接发起I2C通信读上面两个地址的数据得到的都是0。
在没有linux系统的支持下,能否实现直接通过I2C通信配置这个IMX307模块,去点亮摄像头?
-
@rice said in CS-MIPI-IMX307 I2C通信失败:
在没有linux系统的支持下,能否实现直接通过I2C通信配置这个IMX307模块,去点亮摄像头?
当然是可以的。摄像头并不知道上位机是什么系统。
你的这个问题,有没有可能是启动时间的问题。 我们的CS系列需要7-10秒钟启动,然后才能访问。
http://wiki.veye.cc/index.php/CS-MIPI-X_i2c/zh
https://github.com/veyeimaging/raspberrypi/tree/master/i2c_cmd/bin具体可以参考这个脚本的代码,来查找哪个寄存器对应什么功能。
-
@veye_xumm
“CS系列需要7-10秒钟启动,然后才能访问”
请问有启动时序相关配置说明文档嘛?I2C通信clk合理范围是多少? -
@rice 不需要配置,上电自己就配好了。
-
This post is deleted! -
@veye_xumm said in CS-MIPI-IMX307 I2C通信失败:
上电自己就配
所以上电后我可以直接通过I2C读写模组上的寄存器,不需要做其他配置是吗?I2C通信的时钟需要多少合适?我这边实验下来总是失败。。
-
@rice 通信时钟100k和400k都可以。
- 一般的fpga的3.3VCCIO, VIHmin<2.88V,电平应该不是识别不了的原因。
- 确认下IO上拉电阻大小。1.5K~4.7K最佳。
- 确认下访问地址的理解是否有出入。


Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login