工具与软件:
大家好、专家
在 TDA4VEN 上、我们使用串行解串器解决方案从摄像头获取数据、数据流如下:
OVX1F (x4)--> DS90UB933 --> DS90UB960 --> TDA4VEN (CSIRX)。
传感器输出格式: 1280×960@30fps、YUV422、8位
请提供解串器 DS90UB960的配置文件作为参考、谢谢!
此致、
Bing
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具与软件:
大家好、专家
在 TDA4VEN 上、我们使用串行解串器解决方案从摄像头获取数据、数据流如下:
OVX1F (x4)--> DS90UB933 --> DS90UB960 --> TDA4VEN (CSIRX)。
传感器输出格式: 1280×960@30fps、YUV422、8位
请提供解串器 DS90UB960的配置文件作为参考、谢谢!
此致、
Bing
您好、Thomas
这是我的配置脚本、我无法获取映像、我不知道有什么问题。
#!/bin/sh #UB960: 0x30 UB933: 0xb0 Sensor: 0x6c # TDA4VEN main_i2c0, regs 0x20000000 TI960=0x30 WriteI2C() { i2ctransfer -y -f 1 w2@$1 $2 $3 sleep 0.1 } WriteI2C $TI960 0x01 0x02 # reset all digital part sleep 1 ## Internally generated framesync configuration WriteI2C $TI960 0x0C 0x0F # enable RX0-3 WriteI2C $TI960 0x4C 0x0F # write enable for RX0-4 registers WriteI2C $TI960 0x1F 0x00 # set CSI-2 Transmitter Speed 1.6G WriteI2C $TI960 0x4C 0x01 # page to port RX0 WriteI2C $TI960 0x6E 0xA9 # set RX0 SER GPIO1 output framesync signal WriteI2C $TI960 0x4C 0x12 # page to port RX1 WriteI2C $TI960 0x6E 0xA9 # set RX1 SER GPIO1 output framesync signal WriteI2C $TI960 0x4C 0x24 # page to port RX2 WriteI2C $TI960 0x6E 0xA9 # set RX2 SER GPIO1 output framesync signal WriteI2C $TI960 0x4C 0x38 # page to port RX3 WriteI2C $TI960 0x6E 0xA9 # set RX3 SER GPIO1 output framesync signal # set Internally Generated FrameSync 30Hz, 2778 counts WriteI2C $TI960 0x19 0x03 # FS_HIGH_TIME_1 WriteI2C $TI960 0x1A 0x9D # FS_HIGH_TIME_0 WriteI2C $TI960 0x1B 0x07 # FS_LOW_TIME_1 WriteI2C $TI960 0x1C 0x3A # FS_LOW_TIME_0 WriteI2C $TI960 0x18 0x01 # enable framesync ## RX0-3 I2C pass through and slave ID configuration WriteI2C $TI960 0x4C 0x01 # page to port RX0 WriteI2C $TI960 0x58 0x58 # enable passthrough WriteI2C $TI960 0x5C 0xB0 # set serializer alias WriteI2C $TI960 0x5D 0x6C # imager slave ID, port0 WriteI2C $TI960 0x65 0x6C # imager slave alias, port0 WriteI2C $TI960 0x6D 0x7F # set Input Mode,raw10 WriteI2C $TI960 0x7C 0xC1 # set frame valid polarity to active high WriteI2C $TI960 0x4C 0x12 # page to port RX1 WriteI2C $TI960 0x58 0x58 # enable passthrough WriteI2C $TI960 0x5C 0xB0 # set serializer alias WriteI2C $TI960 0x5D 0x6C # imager slave ID, port1 WriteI2C $TI960 0x65 0x6C # imager slave alias, port1 WriteI2C $TI960 0x6D 0x7F # set Input Mode,raw10 WriteI2C $TI960 0x7C 0xC1 # set frame valid polarity to active high WriteI2C $TI960 0x4C 0x24 # page to port RX2 WriteI2C $TI960 0x58 0x58 # enable passthrough WriteI2C $TI960 0x5C 0xB0 # set serializer alias WriteI2C $TI960 0x5D 0x6C # imager slave ID, port2 WriteI2C $TI960 0x65 0x6C # imager slave alias, port2 WriteI2C $TI960 0x6D 0x7F # set Input Mode,raw10 WriteI2C $TI960 0x7C 0xC1 # set frame valid polarity to active high WriteI2C $TI960 0x4C 0x38 # page to port RX3 WriteI2C $TI960 0x58 0x58 # enable passthrough WriteI2C $TI960 0x5C 0xB0 # set serializer alias WriteI2C $TI960 0x5D 0x6C # imager slave ID, port3 WriteI2C $TI960 0x65 0x6C # imager slave alias, port3 WriteI2C $TI960 0x6D 0x7F # set Input Mode,raw10 WriteI2C $TI960 0x7C 0xC1 # set frame valid polarity to active high ## CSI output configuration for basic synchronized forwarding WriteI2C $TI960 0x4C 0x01 # page to port RX0 WriteI2C $TI960 0x70 0x1F # RAW10_datatype_yuv422b10_VC0 WriteI2C $TI960 0x7C 0xC1 # RAW10 use lower 8bit WriteI2C $TI960 0x4C 0x12 # page to port RX1 WriteI2C $TI960 0x70 0x5F # RAW10_datatype_yuv422b10_VC1 WriteI2C $TI960 0x7C 0xC1 # RAW10 use lower 8bit WriteI2C $TI960 0x4C 0x24 # page to port RX2 WriteI2C $TI960 0x70 0x9F # RAW10_datatype_yuv422b10_VC2 WriteI2C $TI960 0x7C 0xC1 # RAW10 use lower 8bit WriteI2C $TI960 0x4C 0x38 # page to port RX3 WriteI2C $TI960 0x70 0xDF # RAW10_datatype_yuv422b10_VC3 WriteI2C $TI960 0x7C 0xC1 # RAW10 use lower 8bit WriteI2C $TI960 0x20 0x00 # [3:0]: 0: CSI-2 port 0; 1: CSI-2 port 1 WriteI2C $TI960 0x21 0x04 # enable basic Synchronized forwarding for CSI port 0&1 WriteI2C $TI960 0x32 0x01 # read from CSI port0, write to CSI port0 WriteI2C $TI960 0x33 0x03 # enable CSI port0 #WriteI2C $TI960 0x32 0x12 # read from CSI port1, write to CSI port1 #WriteI2C $TI960 0x33 0x03 # enable CSI port1
960寄存器:
933个寄存器:
此致、
Bing
尊敬的 Bing:
谢谢、我在工作台上遇到了一些问题、因此从工作台上看到脚本也很有帮助。
您的系统上是否也有其他端口的状态? 下面列出了一些评论:
问题是您这边没有视频吗?
此致!
Thomas
您好、Thomas
如果分辨率为 YUV422 8位、我们应将寄存器0x70 = 0x1E 设置为 CSI 数据类型。 您能否确认这是否正确? 我在您的脚本中看到了0x1F。
在我把它更改为0x1E 后、它运行正常。
我计划实施一种热插拔、发现拔下任何摄像头模块(UB933+图像传感器)后、所有摄像头显示屏都无法正常工作、即使还有其他三个摄像头 模块、为什么会这样?
此外、您可以建议一种可行的热插拔方式、只要它检测到 摄像头模块的拔下和插入即可。
此致、
Bing
您好、Thomas
[报价 userid="520415" url="~/support/interface-group/interface/f/interface-forum/1427574/ds90ub960-q1-ds90ub960-configuration-reference-example/5490060 #5490060"]完成热插拔后、是否可以禁用寄存器0x20中不再使用的端口转发? [报价]感谢您的支持、热插拔功能现已开始工作。
此致、
Bing