簡(jiǎn)介
AIO-3399J 開發(fā)板分別帶有兩個(gè)MIPI,一個(gè)DVP攝像頭接口,MIPI最高支持支持4K拍照,并支持1080P 30FPS以上視頻錄制。此外,開發(fā)板還支持 USB 攝像頭。
本文以 OV13850 攝像頭為例,講解在該開發(fā)板上的配置過程。
接口效果圖
DTS配置
isp0: isp@ff910000 { … status = "okay"; } isp1: isp@ff920000 { … status = "okay"; }
驅(qū)動(dòng)說明
與攝像頭相關(guān)的代碼目錄如下:
Android: `- hardware/rockchip/camera/ |- CameraHal // 攝像頭的 HAL 源碼 `- SiliconImage // ISP 庫(kù),包括所有支持模組的驅(qū)動(dòng)源碼 `- isi/drv/OV13850 // OV13850 模組的驅(qū)動(dòng)源碼 `- calib/OV13850.xml // OV13850 模組的調(diào)校參數(shù) `- device/rockchip/rk3399/ |- rk3399_firefly_aio_box | `- cam_board.xml // 攝像頭的參數(shù)設(shè)置 Kernel: |- kernel/drivers/media/video/rk_camsys // CamSys 驅(qū)動(dòng)源碼 `- kernel/include/media/camsys_head.h
配置原理
設(shè)置攝像頭相關(guān)的引腳和時(shí)鐘,即可完成配置過程。
從以下攝像頭接口原理圖可知,需要配置的引腳有:AF_VDD28、DOVDD18、AVDD28、DVDD12、PWDN1、RST 和 MCLK。
mipi接口
AF_VDD28 可不做配置。
DOVDD18、AVDD28 由 DVP_PWR 控制,DVP_PWR 對(duì)應(yīng) RK3399 的 GPIO1_C7:
DVDD12 由 CIF_POWER 引腳控制,CIF_POWER 對(duì)應(yīng) RK3399 上的 GPIO1_C6 引腳:
MIPI CIF:PWDN0(共用)、PWDN1、RST 對(duì)應(yīng) GPIO2_B4、GPIO2_D4、GPIO0_B0 引腳:
在開發(fā)板中,除了 DVDD12 (CIF_POWER) 要在 DTS中設(shè)置以外,其它引腳都是在 cam_board.xml 中設(shè)置。
配置步驟
配置 Android
修改device/rockchip/rk3399/$(TARGET_PRODUCT)/cam_board.xml 來注冊(cè)攝像頭:
主要修改的內(nèi)容如下:
Sensor 名稱
該名字必須與 Sensor 驅(qū)動(dòng)的名字一致,目前提供的 Sensor 驅(qū)動(dòng)格式如下:
libisp_isi_drv_OV13850.so
Sensor 軟件標(biāo)識(shí)
注冊(cè)標(biāo)識(shí)不一致即可,可填寫以下值:
CAMSYS_DEVID_SENSOR_1A CAMSYS_DEVID_SENSOR_1B CAMSYS_DEVID_SENSOR_2
采集控制器名稱
目前只支持:
CAMSYS_DEVID_MARVIN
Sensor 所連接的主控 I2C 通道號(hào)
具體通道號(hào)請(qǐng)參考攝像頭原理圖連接主控的 I2C 通道號(hào)。
Sensor 寄存器地址長(zhǎng)度,單位:字節(jié)
Sensor 的 I2C 頻率,單位:Hz,用于設(shè)置 I2C 的頻率。
Sensor 輸入時(shí)鐘頻率, 單位:Hz,用于設(shè)置攝像頭的時(shí)鐘。
Sensor AVDD 的 PMU LDO 名稱。如果不是連接到 PMU,那么只需填寫 NC。
Sensor DOVDD 的 PMU LDO 名稱。
如果不是連接到 PMU,那么只需填寫 NC。注意 min 以及 max 值必須填寫,這決定了 Sensor 的 IO 電壓。
Sensor DVDD 的 PMU LDO 名稱。
如果不是連接到 PMU,那么只需填寫 NC。
Sensor PowerDown 引腳。
直接填寫名稱即可,active 填寫休眠的有效電平。
Sensor Reset 引腳。
直接填寫名稱即可,active 填寫復(fù)位的有效電平。
Sensor Power 引腳。
直接填寫名稱即可, active 填寫電源有效電平。
選擇 Sensor 作為前置還是后置。
可填寫 “front” 或 “back”。
Sensor 的接口方式
可填寫如下值:
CCIR601 CCIR656 MIPI SMIA
Sensor 的鏡像方式
目前暫不支持。
Sensor 的角度信息
物理接口設(shè)置
MIPI
hyMode:Sensor 接口硬件連接方式,對(duì) MIPI Sensor 來說,該值取 “CamSys_Phy_Mipi” Lane:Sensor mipi 接口數(shù)據(jù)通道數(shù) Phyindex:Sensor mipi 連接的主控 mipi phy 編號(hào) sensorFmt:Sensor 輸出數(shù)據(jù)格式,目前僅支持 CamSys_Fmt_Raw_10b
編譯內(nèi)核需將 drivers/media/video/rk_camsys 驅(qū)動(dòng)源碼編進(jìn)內(nèi)核,其配置方法如下:
在內(nèi)核源碼目錄下執(zhí)行命令:
make menuconfig
然后將以下配置項(xiàng)打開:
Device Drivers ---> Multimedia support ---> camsys driver RockChip camera system driver ---> camsys driver for marvin isp camsys driver for cif
最后執(zhí)行:
make ARCH=arm64 rk3399-firefly-aio.img
即可完成內(nèi)核的編譯。
調(diào)試方法
終端下可以直接修改/system/etc/cam_board.xml調(diào)試各參數(shù)并重啟生效
FAQs
1.無法打開攝像頭,首先確定sensor I2C是否通信。若不通則可檢查mclk以及供電是否正常(Power/PowerDown/Reset/Mclk/I2cBus)分別排查 2.支持列表? 13M? OV13850/IMX214-0AQH5 8M? OV8825/OV8820/OV8858-Z(R1A)/OV8858-R2A 5M? OV5648/OV5640 2M? OV2680 詳細(xì)資料可查詢SDK/RKDocs
-
嵌入式主板
+關(guān)注
關(guān)注
7文章
6085瀏覽量
35336 -
安卓
+關(guān)注
關(guān)注
5文章
2130瀏覽量
57198 -
Firefly
+關(guān)注
關(guān)注
2文章
538瀏覽量
7045
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論