wx_feng_RVY 发表于 2022-5-17 18:09:44

mipi相机不带晶振,通过设置设备树里的时钟也没有输出


通过修改 xc7160.c 这个文件来调试,发现i2c_transfer一直都是-6
用示波器量这两个脚,这两个时钟一直都没有电压输出,这是为什么呢

zyk 发表于 2022-5-17 18:56:39

本帖最后由 zyk 于 2022-5-17 18:59 编辑

自己调试的sensor是什么。确认一下sensor的电压和上电时序是否正常、模组i2c工作的条件是否正常,例如速率、电压等。power on正常的情况下,可以测量到MCLk,RK356X使用的官方模组CAM-8MS1M 也不带晶振,可以测量到MCLK

wx_feng_RVY 发表于 2022-5-18 08:50:27

sensor是sc130gs,我理解的IIC工作的条件正常下需要供给sensor时钟, 是否开启MCLK需要软件设置什么条件,或者检测到sensor正常工作后才给出MCLK呢?

zyk 发表于 2022-5-18 09:18:19

系统启动的过程中在不停power off/power on,可以尝试设置触发方式看是否可以抓到。最好就是抓帧的时候(也就是打开摄像头时)测量。如果想一直输出时钟,可以尝试驱动里面调整clk_disable_unprepare。sc130gs如果是raw sensor需要权衡好iq问题

wx_feng_RVY 发表于 2022-5-18 16:49:07

非常感谢,clk_disable_unprepare后,果然世界开始精彩了

wx_feng_RVY 发表于 2022-5-23 09:10:19

现在通过修改sc132gs的驱动,没有发现别的错误,但是调用v4l2-ctl --verbose 抓取数据的时候发现没有数据返回,dmesg的时候发现 rkisp rkisp-vir0: can not get first iq setting in stream on   请问我该怎么去调这个错误。这个的文件对应的是哪个呢?日志在附件里,非常感谢

zyk 发表于 2022-5-23 09:20:52

先确认抓帧时sensor是否工作了,mipi有数据过来吗
firefly@firefly:~$ v4l2-ctl --verbose -d /dev/video0 --set-fmt-video=width=1280,height=1024,pixelformat='BG10' --stream-mmap=4 --set-selection=target=crop,flags=0,top=0,left=0,width=1280,height=1024 --stream-to=out.yuv
VIDIOC_QUERYCAP: ok
VIDIOC_G_FMT: ok
VIDIOC_S_FMT: ok
Format Video Capture Multiplanar:
        Width/Height      : 1280/1024
        Pixel Format      : 'BG10'
        Field             : None
        Number of planes: 1
        Flags             :
        Colorspace      : Default
        Transfer Function : Default
        YCbCr Encoding    : Default
        Quantization      : Full Range
        Plane 0         :
           Bytes per Line : 2560
           Size Image   : 2621440
VIDIOC_G_SELECTION: ok
VIDIOC_S_SELECTION: ok
VIDIOC_REQBUFS: ok
VIDIOC_QUERYBUF: ok
VIDIOC_QUERYBUF: ok
VIDIOC_QBUF: ok
VIDIOC_QUERYBUF: ok
VIDIOC_QBUF: ok
VIDIOC_QUERYBUF: ok
VIDIOC_QBUF: ok
VIDIOC_QUERYBUF: ok
VIDIOC_QBUF: ok
VIDIOC_STREAMON: ok

wx_feng_RVY 发表于 2022-5-23 09:30:18

用示波器测到有数据过来,示波器带宽不够,只能测到粗略的,确认了四个通道都有数据过来了,时钟也有过来~
我们的数据格式是raw10的 ,所以选了GB10做这个格式来作为软件的采集格式,sensor的配置是根据做sensor模块的人给的配置,他那边确认过了这个配置。
但是out.yuv一直为的大小一直为0.

zyk 发表于 2022-5-23 10:40:05

sensor采用连续模式还是非连续模式,可以设置成非连续模式看看。其次也可以尝试抓NV12

wx_feng_RVY 发表于 2022-5-25 17:55:21

你好,现在我们用 v4l2-ctl 能采集到相机的数据了,但是在用日志里,我能看见isp 的sub dev是初始化失败的。在预览相机的时候也出错了,出错代码如下
firefly@firefly:~$ mipi_opencv --?gst-launch-1.0 v4l2src device=/dev/video0 io-mode=4 ! videoconvert ! video/x-raw,format=NV12,width=1280 height=1024 ! rkximagesink
Application will auto exit after read 300 freams image
Rga built version:06fc7c4
Rga built version:06fc7c4
librga:RGA_GET_VERSION:3.02,3.020000
ctx=0x55a9c4e4a0,ctx->rgaFd=5
open /usr/lib/librkisp.so successed
dlsym rkisp_start success
media get entity by name: rkisp1-isp-subdev is null
media get entity by name: rkisp1-input-params is null
media get entity by name: rkisp1-statistics is null
:XCAM ERROR rkisp_control_loop_impl.cpp:246: failed to open isp subdev
/usr/local/bin/mipi_opencv: line 7:4087 Segmentation fault      rkisp_demo -c 300 -d /dev/video0 -w 640 -h 480
是不是我更改了相机,对应的isp也要修改一下。如果要修改,我需要修改哪些地方?另外我也注意到文档里说留意iq问题attach://8406.png
刚好我们的相机就是raw相机,那请问我要怎么改这个iq设置呢
非常感谢
页: [1] 2
查看完整版本: mipi相机不带晶振,通过设置设备树里的时钟也没有输出