HI3518E的sensor驱动

本文详细介绍了sensor的主要功能和组成部分,包括并口、LVDS、MIPI三种接口类型及其特点。深入探讨了海思sensor驱动框架,以及如何通过具体驱动函数进行底层硬件配置。并提到了SENSOR与ISP、3A库之间的交互过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

sensor主要是采集图像,将光信号转化为电信号的传感器,主要由镜头、sensor、ADC等部件构成。

sensor驱动介绍

sensor接口

主要有并口、LVDS、MIPI接口这三种sensor接口。
并口就是一根clk,n根(8/10/12)data线,来传输数据;一般还会带个IIC接口,来读写寄存器和传输控制信号,AR0130、OV9712就是这样的并口接口
LVDS是由1组差分clk和若干组差分信号线组成,主要用于camera和主控、LCD和主控;由于抗干扰性能有了很大提升,CLK频率可以做的很高。
MIPI接口由1组差分clock和1-4组差分信号线组成,有很多种标准,有针对于LCD的MIPI_DSI,有针对于camera的,比如MIPI_CSI。
总之接口大概这三种,并口都在慢慢淘汰,差分速度稳定,抗干扰能力强,逐渐成为主流。
AR0130 与OV9712都是并口 + IIC接口。

海思sensor驱动框架

mpp定义了一套sensor驱动的实现和封装,在mpp\component\isp\sensor\xxx文件中,比如ar0130_cmos.c ar0130_sensor_ctl.c,这里面就是sensor具体驱动函数,其中调用的iic驱动函数都是在利用的kernel中的iic驱动框架。ar0130_sensor_ctl.c中定义底层硬件相关的寄存器值配置函数,ar0130_cmos.c中定义回调和上层函数。

SAMPLE_COMM_ISP_Init
	sensor_register_callback
		/*下面是Sensor的ISP库  注册到ISP库中去的*/
		cmos_init_sensor_exp_function
		HI_MPI_ISP_SensorRegCallBack
		
		/*下面是Sensor的3A库  注册到  3A库*/
		cmos_init_ae_exp_function
		HI_MPI_AE_SensorRegCallBack

		cmos_init_awb_exp_function
		HI_MPI_AWB_SensorRegCallBack

/*以下三个函数是3A算法库,注册到ISP库中去的*/
	HI_MPI_AE_Register
	HI_MPI_AWB_Register
	HI_MPI_AF_Register

关于sensor的ISP 和3A框架看下图
在这里插入图片描述

在cmos_init_sensor_exp_function函数中看到了一些具体对sensor操作的函数,如设置宽动态、黑电平等等。。
其实这块东西算很专业的。。目前没有从事这方面具体工作。。。很多东西只能浅尝辄止,更多的东西可能真的需要在工作中学习。
最后推荐这本书
ISP_3A开发指南

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值