简单一点的网站建设,域名例子,台山网站定制,哈尔滨做网站的公司90款行业常用传感器单片机程序及资料【stm32,stc89c52,arduino适用】
链接#xff1a;https://pan.baidu.com/s/1M3u8lcznKuXfN8NRoLYtTA?pwdc53f
Camera 使用
简介
AIO-3399J 开发板分别带有两个 MIPI#xff0c;MIPI 支持最高 4K 拍照#xff0c;并支持 1080P 30fp…90款行业常用传感器单片机程序及资料【stm32,stc89c52,arduino适用】
链接https://pan.baidu.com/s/1M3u8lcznKuXfN8NRoLYtTA?pwdc53f
Camera 使用
简介
AIO-3399J 开发板分别带有两个 MIPIMIPI 支持最高 4K 拍照并支持 1080P 30fps 以上视频录制。此外开发板还支持 USB 摄像头。
本文以 OV13850/OV5640 摄像头为例讲解在该开发板上的配置过程。 接口效果图 DTS 配置
isp0: ispff910000 {…status okay;
}
isp1: ispff920000 {…status okay;
}驱动说明
与摄像头相关的代码目录如下
Android- hardware/rockchip/camera/|- CameraHal // 摄像头的 HAL 源码- SiliconImage // ISP 库包括所有支持模组的驱动源码- isi/drv/OV13850 // OV13850 模组的驱动源码- calib/OV13850.xml // OV13850 模组的调校参数- device/rockchip/rk3399/|- rk3399_firefly_aio_box| - cam_board.xml // 摄像头的参数设置Kernel|- kernel/drivers/media/video/rk_camsys // CamSys 驱动源码- kernel/include/media/camsys_head.h配置原理
设置摄像头相关的引脚和时钟即可完成配置过程。
从以下摄像头接口原理图可知需要配置的引脚有AF_VDD28、DOVDD18、AVDD28、DVDD12、PWDN1、RST 和 MCLK。 MIPI 接口 AF_VDD28 可不做配置。 DOVDD18、AVDD28 由 DVP_PWR 控制DVP_PWR 对应 RK3399 的 GPIO1_C1 DVDD12 由 CIF_POWER 引脚控制CIF_POWER 对应 RK3399 上的 GPIO1_A1 引脚 MIPI CIFPWDN0(共用)、PWDN1、RST 对应 GPIO1_C1、GPIO1_A1、GPIO0_B0 引脚 在开发板中除了 DVDD12 (CIF_POWER) 要在 DTS 中设置以外其它引脚都是在 cam_board.xml 中设置。
配置步骤
配置 Android
修改 device/rockchip/rk3399/$(TARGET_PRODUCT)/cam_board.xml 来注册摄像头
BoardFile
BoardXmlVersion versionv0.0xf.0/BoardXmlVersion
CamDevie
HardWareInfo
Sensor
SensorName nameOV13850/
SensorLens name50013A1/
SensorDevID IDnameCAMSYS_DEVID_SENSOR_1B/
SensorHostDevID busnumCAMSYS_DEVID_MARVIN/
SensorI2cBusNum busnum1/
SensorI2cAddrByte byte2/
SensorI2cRate rate100000/
SensorAvdd nameNC min28000000 max28000000 delay0/
SensorDvdd nameNC min12000000 max12000000 delay0/
SensorDovdd nameNC min18000000 max18000000 delay5000/
SensorMclk mclk24000000 delay1000/
SensorGpioPwen ionameRK30_PIN1_PC1 active1 delay1000/
SensorGpioRst ionameRK30_PIN0_PB0 active0 delay1000/
SensorGpioPwdn ionameRK30_PIN1_PA1 active0 delay0/
SensorFacing facingback/
SensorInterface interface MIPI /
SensorMirrorFlip mirror0/
SensorOrientation orientation180/
SensorPowerupSequence seq1234/
SensorFovParemeter h60.0 v60.0/
SensorAWB_Frame_Skip fps15/
SensorPhy phyModeCamSys_Phy_Mipi lane2 phyIndex1 sensorFmtCamSys_Fmt_Raw_10b/
/Sensor
VCM
VCMDrvName nameDW9714/
VCMName nameHuaYong6505/
VCMI2cBusNum busnum1/
VCMI2cAddrByte byte0/
VCMI2cRate rate0/
VCMVdd nameNC min0 max0 delay0/
VCMGpioPower ionameNC active0 delay1000/
VCMGpioPwdn ionameNC active0 delay0/
VCMCurrent start20 rated80 vcmmax100 stepmode13 drivermax100/
/VCM
Flash
FlashName nameInternal/
FlashI2cBusNum busnum0/
FlashI2cAddrByte byte0/
FlashI2cRate rate0/
FlashTrigger ionameNC active0/
FlashEn ionameNC active0/
FlashModeType mode1/
FlashLuminance luminance0/
FlashColorTemp colortemp0/
/Flash
/HardWareInfo
SoftWareInfo
AWB
AWB_Auto support1/
AWB_Incandescent support1/
AWB_Fluorescent support1/
AWB_Warm_Fluorescent support1/
AWB_Daylight support1/
AWB_Cloudy_Daylight support1/
AWB_Twilight support1/
AWB_Shade support1/
/AWB
Sence
Sence_Mode_Auto support1/
Sence_Mode_Action support1/
Sence_Mode_Portrait support1/
Sence_Mode_Landscape support1/
Sence_Mode_Night support1/
Sence_Mode_Night_Portrait support1/
Sence_Mode_Theatre support1/
Sence_Mode_Beach support1/
Sence_Mode_Snow support1/
Sence_Mode_Sunset support1/
Sence_Mode_Steayphoto support1/
Sence_Mode_Pireworks support1/
Sence_Mode_Sports support1/
Sence_Mode_Party support1/
Sence_Mode_Candlelight support1/
Sence_Mode_Barcode support1/
Sence_Mode_HDR support1/
/Sence
Effect
Effect_None support1/
Effect_Mono support1/
Effect_Solarize support1/
Effect_Negative support1/
Effect_Sepia support1/
Effect_Posterize support1/
Effect_Whiteboard support1/
Effect_Blackboard support1/
Effect_Aqua support1/
/Effect
FocusMode
Focus_Mode_Auto support1/
Focus_Mode_Infinity support1/
Focus_Mode_Marco support1/
Focus_Mode_Fixed support1/
Focus_Mode_Edof support1/
Focus_Mode_Continuous_Video support0/
Focus_Mode_Continuous_Picture support1/
/FocusMode
FlashMode
Flash_Mode_Off support1/
Flash_Mode_On support1/
Flash_Mode_Torch support1/
Flash_Mode_Auto support1/
Flash_Mode_Red_Eye support1/
/FlashMode
AntiBanding
Anti_Banding_Auto support1/
Anti_Banding_50HZ support1/
Anti_Banding_60HZ support1/
Anti_Banding_Off support1/
/AntiBanding
HDR support1/
ZSL support1/
DigitalZoom support1/
Continue_SnapShot support1/
InterpolationRes resolution0/
PreviewSize width1920 height1080/
FaceDetect support0 MaxNum1/
DV
DV_QCIF nameqcif width176 height144 fps10 support1/
DV_QVGA nameqvga width320 height240 fps10 support1/
DV_CIF namecif width352 height288 fps10 support1/
DV_VGA name480p width640 height480 fps10 support0/
DV_480P name480p width720 height480 fps10 support0/
DV_720P name720p width1280 height720 fps10 support1/
DV_1080P name1080p width1920 height1080 fps10 support1/
/DV
/SoftWareInfo
/CamDevie
/BoardFile主要修改的内容如下 Sensor 名称
SensorName nameOV13850 /SensorName该名字必须与 Sensor 驱动的名字一致,目前提供的 Sensor 驱动格式如下
libisp_isi_drv_OV13850.soSensor 软件标识
SensorDevID IDnameCAMSYS_DEVID_SENSOR_1A/SensorDevID注册标识不一致即可,可填写以下值
CAMSYS_DEVID_SENSOR_1A
CAMSYS_DEVID_SENSOR_1B
CAMSYS_DEVID_SENSOR_2采集控制器名称
SensorHostDevID busnumCAMSYS_DEVID_MARVIN /SensorHostDevID目前只支持
CAMSYS_DEVID_MARVINSensor 所连接的主控 I2C 通道号
SensorI2cBusNum busnum3/SensorI2cBusNum具体通道号请参考摄像头原理图连接主控的 I2C 通道号。 Sensor 寄存器地址长度,单位字节
SensorI2cAddrByte byte2/SensorI2cAddrByteSensor 的 I2C 频率,单位Hz用于设置 I2C 的频率。
SensorI2cRate rate100000/SensorI2cRateSensor 输入时钟频率, 单位Hz用于设置摄像头的时钟。
SensorMclk mclk24000000/SensorMclkSensor AVDD 的 PMU LDO 名称。如果不是连接到 PMU那么只需填写 NC。
SensorAvdd nameNC min0 max0/SensorAvddSensor DOVDD 的 PMU LDO 名称。
SensorDovdd nameNC min18000000 max18000000/SensorDovdd如果不是连接到 PMU那么只需填写 NC。注意 min 以及 max 值必须填写这决定了 Sensor 的 IO 电压。 Sensor DVDD 的 PMU LDO 名称。
SensorDvdd nameNC min0 max0/SensorDvdd如果不是连接到 PMU那么只需填写 NC。 Sensor PowerDown 引脚。
SensorGpioPwdn ionameRK30_PIN2_PB6 active0/SensorGpioPwdn直接填写名称即可active 填写休眠的有效电平。 Sensor Reset 引脚。
SensorGpioRst ionameRK30_PIN3_PB0 active0/SensorGpioRst直接填写名称即可active 填写复位的有效电平。 Sensor Power 引脚。
SensorGpioPwen ionameRK30_PIN0_PB3 active1/SensorGpioPwen直接填写名称即可, active 填写电源有效电平。 选择 Sensor 作为前置还是后置。
SensorFacing facingfront/SensorFacing可填写 front 或 back。 Sensor 的接口方式
SensorInterface mode MIPI /SensorInterface可填写如下值
CCIR601
CCIR656
MIPI
SMIASensor 的镜像方式
SensorMirrorFlip mirror0/SensorMirrorFlip目前暂不支持。 Sensor 的角度信息
SensorOrientation orientation0/SensorOrientation物理接口设置
MIPI
SensorPhy phyModeCamSys_Phy_Mipi lane2 phyIndex1 sensorFmtCamSys_Fmt_Raw_10b/SensorPhyphyModeSensor 接口硬件连接方式对 MIPI Sensor 来说该值取 CamSys_Phy_Mipi laneSensor mipi 接口数据通道数 phyIndexSensor MIPI 连接的主控 MIPI phy 编号 sensorFmtSensor 输出数据格式,目前仅支持 CamSys_Fmt_Raw_10b
编译内核需将 drivers/media/video/rk_camsys 驱动源码编进内核其配置方法如下
在内核源码目录下执行命令
make menuconfig然后将以下配置项打开
Device Drivers ---Multimedia support ---camsys driverRockChip camera system driver ---camsys driver for marvin ispcamsys driver for cif最后执行
make ARCHarm64 rk3399-firefly-aio.img即可完成内核的编译。
调试方法
终端下可以直接修改 /system/etc/cam_board.xml 调试各参数并重启生效
FAQs 无法打开摄像头首先确定 sensor I2C 是否通信。若不通则可检查 mclk 以及供电是否正常Power/PowerDown/Reset/Mclk/I2cBus分别排查 支持列表ː 13Mː OV13850/IMX214-0AQH5 8Mː OV8825/OV8820/OV8858-Z(R1A)/OV8858-R2A 5Mː OV5648/OV5640 2Mː OV2680
详细资料可查询 SDK/RKDocs