




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
【移動應(yīng)用開發(fā)技術(shù)】如何進行RK3399camera驅(qū)動開發(fā)
如何進行RK3399camera驅(qū)動開發(fā),很多新手對此不是很清楚,為了幫助大家解決這個難題,下面在下將為大家詳細講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。Androidcamera驅(qū)動開發(fā)概述目前板子上有兩路mipirx,可以接雙攝像頭。DTS配置1、Enabled
isp&isp0
{
status
=
"okay";};&isp1
{
status
=
"okay";};&isp0_mmu
{
status
=
"okay";};&isp1_mmu
{
status
=
"okay";};&isp0
{
status
=
"okay";};&isp1
{
status
=
"okay";};&isp0_mmu
{
status
=
"okay";};&isp1_mmu
{
status
=
"okay";};2、Enabledmipi對應(yīng)的i2c&i2c1
{
status
=
"okay";};&i2c1
{
status
=
"okay";};camera驅(qū)動(默認(rèn)為OV9750)1、android驅(qū)動代碼路徑hardware/rockchip/camera/SiliconImage/isi/drv/OV9750_A2、編譯生成的libisp_isi_drv_OV9750_A.so放置于/vendor/lib/hw3、cphardware/rockchip/camera/SiliconImage/isi/drv/OV9750_A/calib/OV9750_A.xml
/vendor/etc/4、cphardware/rockchip/camera/Config/cam_board_rk3399.xml/vendor/etc/cam_board.xmlxml配置1、根據(jù)電路圖為camera上電,并配置rst,pdn,以下按mipi0配置電壓以及相關(guān)gpio,I2C通道(1),mipiphy通道(0),IO電壓1.8v、CORE電壓1.8v、模擬電壓:3.2v,具體請看電路圖、以及OV9750datasheet。Linuxcamera驅(qū)動開發(fā)概述RK3399Protoybrick
開發(fā)板分別帶有兩個MIPI,一個DVP攝像頭接口,MIPI支持最高4K拍照,并支持1080P30fps以上視頻錄制。此外,開發(fā)板還支持USB攝像頭。本文以
OV9750
攝像頭為例,講解在該開發(fā)板上的配置過程。配置原理由以下電路圖可知,兩路MIPI攝像頭連接的是不同的ISP和I2C通道。MIPI0:使用ISP0和I2C1,還需配置MIPI_MCLK0、MIPI_PDN、MIPI_RSTMIPI1:使用ISP1和I2C2,還需配置MIPI_MCLK_T2、JMIPI_PDN2、JMIPI_RST2DTS配置配置isp節(jié)點cif_isp0:
cif_isp@ff910000
{
compatible
=
"rockchip,rk3399-cif-isp";
rockchip,grf
=
<&grf>;
reg
=
<0x0
0xff910000
0x0
0x4000>,
<0x0
0xff968000
0x0
0x8000>;
reg-names
=
"register",
"dsihost-register";
clocks
=
<&cru
ACLK_ISP0_NOC>,
<&cru
ACLK_ISP0_WRAPPER>,
<&cru
HCLK_ISP0_NOC>,
<&cru
HCLK_ISP0_WRAPPER>,
<&cru
SCLK_ISP0>,
<&cru
SCLK_DPHY_RX0_CFG>,
<&cru
SCLK_CIF_OUT>,
<&cru
SCLK_CIF_OUT>,
<&cru
SCLK_MIPIDPHY_REF>;
clock-names
=
"aclk_isp0_noc",
"aclk_isp0_wrapper",
"hclk_isp0_noc",
"hclk_isp0_wrapper",
"clk_isp0",
"pclk_dphyrx",
"clk_cif_out",
"clk_cif_pll",
"pclk_dphy_ref";
interrupts
=
<GIC_SPI
43
IRQ_TYPE_LEVEL_HIGH
0>;
interrupt-names
=
"cif_isp10_irq";
power-domains
=
<&power
RK3399_PD_ISP0>;
rockchip,isp,iommu-enable
=
<1>;
iommus
=
<&isp0_mmu>;
status
=
"disabled";
};&isp0
{
status
=
"okay";
};
&isp0_mmu
{
status
=
"okay";
};&cif_isp0{rockchip,camera-modules-attached=<&camera0>;
status="okay";};cif_isp0:
cif_isp@ff910000
{
compatible
=
"rockchip,rk3399-cif-isp";
rockchip,grf
=
<&grf>;
reg
=
<0x0
0xff910000
0x0
0x4000>,
<0x0
0xff968000
0x0
0x8000>;
reg-names
=
"register",
"dsihost-register";
clocks
=
<&cru
ACLK_ISP0_NOC>,
<&cru
ACLK_ISP0_WRAPPER>,
<&cru
HCLK_ISP0_NOC>,
<&cru
HCLK_ISP0_WRAPPER>,
<&cru
SCLK_ISP0>,
<&cru
SCLK_DPHY_RX0_CFG>,
<&cru
SCLK_CIF_OUT>,
<&cru
SCLK_CIF_OUT>,
<&cru
SCLK_MIPIDPHY_REF>;
clock-names
=
"aclk_isp0_noc",
"aclk_isp0_wrapper",
"hclk_isp0_noc",
"hclk_isp0_wrapper",
"clk_isp0",
"pclk_dphyrx",
"clk_cif_out",
"clk_cif_pll",
"pclk_dphy_ref";
interrupts
=
<GIC_SPI
43
IRQ_TYPE_LEVEL_HIGH
0>;
interrupt-names
=
"cif_isp10_irq";
power-domains
=
<&power
RK3399_PD_ISP0>;
rockchip,isp,iommu-enable
=
<1>;
iommus
=
<&isp0_mmu>;
status
=
"disabled";
};&isp0
{
status
=
"okay";
};
&isp0_mmu
{
status
=
"okay";
};&cif_isp0{rockchip,camera-modules-attached=<&camera0>;
status="okay";};設(shè)置CPUMCLK引腳功能&pinctrl
{/*
*/
cam_mclk
{
cam_default_pins:
cam-default-pins
{
rockchip,pins
=
<2
11
RK_FUNC_3
&pcfg_pull_none>;
};
};
};&pinctrl
{/*
*/
cam_mclk
{
cam_default_pins:
cam-default-pins
{
rockchip,pins
=
<2
11
RK_FUNC_3
&pcfg_pull_none>;
};
};
};在i2c上配置camera節(jié)點,mipi0camera連接到i2c1上&i2c1
{
status
=
"okay";
/*
使能i2c1
*/
/*
*
一般寫成cameraX:camera-module@ID,其中X為序號,ID為camera的7bit
I2C地址
*
camera0表示節(jié)點名,綁定isp節(jié)點時,將camera0
attach到isp0
*/
camera0:
camera-module@10
{
status
=
"okay";
compatible
=
"omnivision,ov9750-v4l2-i2c-subdev";
reg
=
<0x10>;
/*
7bit
I2C地址
*/
device_type
=
"v4l2-i2c-subdev";
/*
無需修改
*/
clocks
=
<&cru
SCLK_CIF_OUT>;
/*
無需修改,時鐘源選擇
*/
clock-names
=
"clk_cif_out";
/*
無需修改,時鐘源名字
*/
pinctrl-names
=
"default";
/*
無需修改,通過pinctrl配置MCLK引腳
*/
pinctrl-0
=
<&cam_default_pins>;
/*
無需修改,與上文的pinctrl定義一致
*/
rockchip,pd-gpio
=
<&gpio4
RK_PD1
GPIO_ACTIVE_LOW>;
/*
PD管腳分配及有效電平
*/
rockchip,rst-gpio
=
<&gpio4
RK_PD2
GPIO_ACTIVE_LOW>;
/*
RST管腳分配及有效電平
*/
rockchip,camera-module-mclk-name
=
"clk_cif_out";
/*
無需修改
*/
rockchip,camera-module-facing
=
"back";
//前后置配置
rockchip,camera-module-name
=
"MDG001";
//Camera
模組名稱
rockchip,camera-module-len-name
=
"NONE";
//Camera
模組鏡頭
rockchip,camera-module-fov-h
=
"80";
//模組水平可視角度配置
rockchip,camera-module-fov-v
=
"65";
//模組垂直可視角度配置
rockchip,camera-module-orientation
=
<0>;
//模組角度設(shè)置
rockchip,camera-module-iq-flip
=
<0>;
//IQ
上下翻轉(zhuǎn)
rockchip,camera-module-iq-mirror
=
<0>;
//IQ
左右鏡像
//以上
2
個屬性控制攝像頭的效果參數(shù)鏡像配置,一般都是設(shè)置成
0,但是發(fā)現(xiàn)以下現(xiàn)象:拍攝白墻,圖片的上半部偏色與下半部偏色不一致,或者左右半部偏不一致,即可以將這2個屬性置成1。
rockchip,camera-module-flip
=
<1>;
rockchip,camera-module-mirror
=
<1>;
//以上
2
個屬性控制攝像頭驅(qū)動中的鏡像配置,如果圖像旋轉(zhuǎn)
180
度,可以將這
2
個屬性修改成相反的值即可旋轉(zhuǎn)
180。
rockchip,camera-module-defrect0
=
<1280
960
0
0
1280
960>;
//根據(jù)攝像頭分辨率進行設(shè)置
rockchip,camera-module-flash-support
=
<0>;
//閃光燈支持
rockchip,camera-module-mipi-dphy-index
=
<0>;
//mipi口配置,根據(jù)物理連接定義
as-master
=
<0>;
};};&i2c1
{
status
=
"okay";
/*
使能i2c1
*/
/*
*
一般寫成cameraX:camera-module@ID,其中X為序號,ID為camera的7bit
I2C地址
*
camera0表示節(jié)點名,綁定isp節(jié)點時,將camera0
attach到isp0
*/
camera0:
camera-module@10
{
status
=
"okay";
compatible
=
"omnivision,ov9750-v4l2-i2c-subdev";
reg
=
<0x10>;
/*
7bit
I2C地址
*/
device_type
=
"v4l2-i2c-subdev";
/*
無需修改
*/
clocks
=
<&cru
SCLK_CIF_OUT>;
/*
無需修改,時鐘源選擇
*/
clock-names
=
"clk_cif_out";
/*
無需修改,時鐘源名字
*/
pinctrl-names
=
"default";
/*
無需修改,通過pinctrl配置MCLK引腳
*/
pinctrl-0
=
<&cam_default_pins>;
/*
無需修改,與上文的pinctrl定義一致
*/
rockchip,pd-gpio
=
<&gpio4
RK_PD1
GPIO_ACTIVE_LOW>;
/*
PD管腳分配及有效電平
*/
rockchip,rst-gpio
=
<&gpio4
RK_PD2
GPIO_ACTIVE_LOW>;
/*
RST管腳分配及有效電平
*/
rockchip,camera-module-mclk-name
=
"clk_cif_out";
/*
無需修改
*/
rockchip,camera-module-facing
=
"back";
//前后置配置
rockchip,camera-module-name
=
"MDG001";
//Camera
模組名稱
rockchip,camera-module-len-name
=
"NONE";
//Camera
模組鏡頭
rockchip,camera-module-fov-h
=
"80";
//模組水平可視角度配置
rockchip,camera-module-fov-v
=
"65";
//模組垂直可視角度配置
rockchip,camera-module-orientation
=
<0>;
//模組角度設(shè)置
rockchip,camera-module-iq-flip
=
<0>;
//IQ
上下翻轉(zhuǎn)
rockchip,camera-module-iq-mirror
=
<0>;
//IQ
左右鏡像
//以上
2
個屬性控制攝像頭的效果參數(shù)鏡像配置,一般都是設(shè)置成
0,但是發(fā)現(xiàn)以下現(xiàn)象:拍攝白墻,圖片的上半部偏色與下半部偏色不一致,或者左右半部偏不一致,即可以將這2個屬性置成1。
rockchip,camera-module-flip
=
<1>;
rockchip,camera-module-mirror
=
<1>;
//以上
2
個屬性控制攝像頭驅(qū)動中的鏡像配置,如果圖像旋轉(zhuǎn)
180
度,可以將這
2
個屬性修改成相反的值即可旋轉(zhuǎn)
180。
ro
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 書憤(課件)-中職高二語文教學(xué)資源(高教版2023職業(yè)模塊)
- 2025年幼兒園教育:《水果拼盤》教案實踐
- 房地產(chǎn)估價委托協(xié)議書(6篇)
- 三農(nóng)產(chǎn)品衛(wèi)生標(biāo)準(zhǔn)與監(jiān)管辦法
- 公司日常運營規(guī)章制度
- 2025年國際轉(zhuǎn)化醫(yī)學(xué)大會課件
- 工業(yè)互聯(lián)網(wǎng)平臺架構(gòu)設(shè)計與實施方案設(shè)計
- 婚姻介紹所服務(wù)合同
- 2025年貨運駕駛員從業(yè)資格證在哪里考
- 冷藏冷凍食品展示柜溫控
- 第07講 兩個基本計數(shù)原理(七大題型)(解析版)
- 武漢大學(xué)高等工程數(shù)學(xué)課件
- 加油站自動化控制系統(tǒng)
- 健康教育知識講座高血壓
- BLM(含樣例)教學(xué)課件
- 企業(yè)數(shù)字化轉(zhuǎn)型之路燈塔工廠專題報告
- 低溫恒溫槽日常維護保養(yǎng)
- 市政道路工程城市道路施工組織設(shè)計
- 動物免疫接種技術(shù)課件
- 最全食堂菜譜、-公司食堂菜譜大全、-大鍋菜:522道菜+35道湯
- 線下庭審申請書
評論
0/150
提交評論