打印
[技术讨论]

SS928V100(SD3403)处理器之红外成像调试

[复制链接]
217|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
QQ2224043166|  楼主 | 2023-5-28 15:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
SS928V100(SD3403)处理器之红外成像调试
海思   Hi3559   Hi3519  
SS928V100(SD3403)处理器之红外成像调试

一、视频接入
参数说明:视频输入接口
支持 8-Lane image sensor 串行输入,支持 MIPI/LVDS/Sub-LVDS/HiSPi 多种接口
支持 2x4-Lane 或 4x2-Lane 等多种组合,最高支持 4 路 sensor 串行输入
最大分辨率 8192 x 8192
支持 8/10/12/14 Bit RGB Bayer DC 时序视频输入,时钟频率最高 150MHz
支持 BT.601、BT.656、BT.1120 视频输入接口
支持主流 CMOS 电平热成像传感器

1.1数字摄像头(DC)接口时序
水平时序
VICAP 接数字摄像头时,VI_HSYNC_VD 表示数据有效信号,数据有效信号极性可
配,水平时序所示。



1.2垂直时序
VICAP 支持两种垂直时序脉冲方式和行有效方式,如下图所示。垂直同步极性可配

数字摄像头垂直时序脉冲方式



数字摄像头垂直时序行有效方式



对于 VICAP 内部处理来说,这两种时序相同,VICAP 内部检测到一个上升沿或下降
沿,这认为是一帧的开始,然后检测数据有效信号,来判断当前数据是否有效。

二、复用寄存器

管脚复用
查看手册mipi dev/vi dev/vi chn/vi pipe/所支持的编号;
mipi配置,设置接入模式为cmos;(dc接口不需要lain id)
设置vi离线还是在线模式;
设置vi属性,使能vi设备;
vi绑定pipe;
设置pipe属性,创建并开始pipe;
设置通道属性,使能通道;

2.1详细说明
参考SS928V100 VI 输入场景详细说明.xlsx 中DC接入需要复用的寄存器

2.1.1复用寄器
static void vi_DC_mode_mux(void)
{
void *iocfg2_base = sys_config_get_reg_iocfg2();

sys_writel(iocfg2_base + 0x0158, 0x0206); /* VI_CLK */
sys_writel(iocfg2_base + 0x0168, 0x0005); /* VI_VS */
sys_writel(iocfg2_base + 0x0170, 0x0005); /* VI_HS */
sys_writel(iocfg2_base + 0x016C, 0x0006); /* VI_DATA0 */
sys_writel(iocfg2_base + 0x0178, 0x0006); /* VI_DATA1 */
sys_writel(iocfg2_base + 0x017C, 0x0006); /* VI_DATA2 */
sys_writel(iocfg2_base + 0x0174, 0x0006); /* VI_DATA3 */
sys_writel(iocfg2_base + 0x0160, 0x0206); /* VI_DATA4 */
sys_writel(iocfg2_base + 0x015C, 0x0206); /* VI_DATA5 */
sys_writel(iocfg2_base + 0x0164, 0x0206); /* VI_DATA6 */
sys_writel(iocfg2_base + 0x0154, 0x0206); /* VI_DATA7 */
sys_writel(iocfg2_base + 0x0194, 0x0006); /* VI_DATA8 */
sys_writel(iocfg2_base + 0x0190, 0x0006); /* VI_DATA9 */
sys_writel(iocfg2_base + 0x0184, 0x0006); /* VI_DATA10 */
sys_writel(iocfg2_base + 0x0180, 0x0006); /* VI_DATA11 */
sys_writel(iocfg2_base + 0x0188, 0x0006); /* VI_DATA12 */
sys_writel(iocfg2_base + 0x018C, 0x0006); /* VI_DATA13 */
}

2.2.2选择类型
static void vi_pin_mux(int vi_intf_type)
{
switch (vi_intf_type) {
case VI_MIPI_RX_MODE:
mipi_rx_pin_mux(MIPI_RX_0);
mipi_rx_pin_mux(MIPI_RX_1);
break;
case VI_CMOS_BT1120_MODE:
mipi_rx_pin_mux(MIPI_RX_0);
vi_bt1120_mode_mux();
break;
case VI_THERMO_MODE:
mipi_rx_pin_mux(MIPI_RX_0);
thermo_sensor_pin_mux();
break;
case VI_THERMO_T3_MODE:
mipi_rx_pin_mux(MIPI_RX_0);

未完待续……

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

65

主题

213

帖子

1

粉丝