




已閱讀5頁(yè),還剩20頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
Contents一、 手機(jī) CAMERA 的物理結(jié)構(gòu): . - 4 -二、 CAMERA 的成像原理: . - 4 -三、 CAMERA 常見(jiàn)的數(shù)據(jù)輸出格式:. - 5 -四、 閱讀 CAMERA 的規(guī)格書(shū)(以 TRULY 模組 OV5647_RAW 為例): . - 6 -五、 CAMERA 的硬件原理圖及引腳 . - 7 - 1、 電源部分:. - 7 - 2、 SENSOR INPUT 部分: . - 7 - 3、 SENSOR OUTPUT 部分: . - 7 - 4、 I2C 部分:SCL,I2C 時(shí)鐘信號(hào)線和 SDA,I2C 數(shù)據(jù)信號(hào)線。 . - 7 -六、 MTK 平臺(tái) CAMERA 驅(qū)動(dòng)架構(gòu): . - 8 -七、 MTK 平臺(tái) CAMERA 相關(guān)代碼文件(以下代碼均為 MTK6575 平臺(tái)): . - 9 - 1、 CAMERASENSOR 驅(qū)動(dòng)相關(guān)文件 . - 9 - 2、 SENSOR ID 和一些枚舉類型的定義 . - 9 - 3、 SENSOR 供電 . - 9 - 4、 KERNEL SPACE 的 SENSORLIST,IMGSENSOR 模塊注冊(cè) . - 9 - 5、 USER SPACE 的 SENSORLIST,向用戶空間提供支持的 SENSORLIST . - 10 - 6、 SENSOR 效果調(diào)整的接口 . - 10 -八、 CAMERA 模塊驅(qū)動(dòng)、設(shè)備與總線結(jié)構(gòu): . - 11 - A) 驅(qū)動(dòng)的注冊(cè): . - 11 - B) 設(shè)備的注冊(cè): . - 11 - C) 總線的匹配: . - 12 -九、 CAMERA 驅(qū)動(dòng)工作流程: . - 13 -十、 CAMERA 驅(qū)動(dòng)添加、調(diào)試流程:. - 17 -Ghong ConfidentialRevision 0.1-Feb.14 2012- 3 -2012 Ghong inc.Camera Driver analysis in the platform of MTKPreliminary Information一、 手機(jī) Camera 的物理結(jié)構(gòu):FPC: Flexible Printed Circuit 可撓性印刷電路板Sensor:圖象傳感器IR:紅外濾波片Holder:基座Lens:鏡頭二、 Camera 的成像原理:景物通過(guò)鏡頭(LENS)生成的光學(xué)圖像投射到圖像傳感器(Sensor)表面上,然后轉(zhuǎn)為模擬的電信號(hào),經(jīng)過(guò) A/D(模數(shù)轉(zhuǎn)換)轉(zhuǎn)換后變?yōu)閿?shù)字圖像信號(hào),再送到數(shù)字信號(hào)處理芯片(DSP)中加工處理,再通過(guò) IO 接口傳輸?shù)?CPU 中處理,通過(guò) LCD 就可以看到圖像了。Ghong ConfidentialRevision 0.1-Feb.14 2012- 4 -2012 Ghong inc.Camera Driver analysis in the platform of MTKPreliminary Information圖像傳感器(SENSOR)是一種半導(dǎo)體芯片,其表面包含有幾十萬(wàn)到幾百萬(wàn)的光電二極管。光電二極管受到光照射時(shí),就會(huì)產(chǎn)生電荷。目前的 SENSOR 類型有兩種:CCD(Charge Couple Device), 電荷耦合器件,它是目前高像素類 sensor 中比較成熟的成像器件,是以一行為單位的電流信號(hào)。CMOS(Complementary Metal Oxide Semiconductor),互補(bǔ)金屬氧化物半導(dǎo)體。CMOS的信號(hào)是以點(diǎn)為單位的電荷信號(hào),更為敏感,速度也更快,更為省電。ISP 的性能是決定影像流暢的關(guān)鍵,JPEG encoder 的性能也是關(guān)鍵指標(biāo)之一。而 JPEGencoder 又分為硬件 JPEG 壓縮方式,和軟件 RGB 壓縮方式。DSP 控制芯片的作用是:將感光芯片獲取的數(shù)據(jù)及時(shí)快速地傳到 baseband 中并刷新感光芯片,因此控制芯片的好壞,直接決定畫(huà)面品質(zhì)(比如色彩飽和度、清晰度)與流暢度。三、 Camera 常見(jiàn)的數(shù)據(jù)輸出格式:常見(jiàn)的數(shù)據(jù)輸出格式有:Rawdata 格式、YUV 格式、RGB 格式。RGB 格式:采用這種編碼方法,每種顏色都可用三個(gè)變量來(lái)表示紅色、綠色以及藍(lán)色的強(qiáng)度。每一個(gè)像素有三原色 R 紅色、G 綠色、B 藍(lán)色組成。YUV 格式:其中“Y”表示明亮度(Luminance 或 Luma),就是灰階值;而“U”和“V”表示色度(Chrominance 或 Chroma),是描述影像色彩及飽和度,用于指定像素的顏色。RAW DATA 格式:是 CCD 或 CMOS 在將光信號(hào)轉(zhuǎn)換為電信號(hào)時(shí)的電平高低的原始記 錄,單純地將沒(méi)有進(jìn)行任何處理的圖像數(shù)據(jù),即攝像元件直接得到的電信號(hào)進(jìn)行數(shù)字化處理而得到的。支持 YUV/RGB 格式的模組,一般會(huì)在模組上集成 ISP(Image Single Processor),經(jīng)過(guò)A/D 轉(zhuǎn)換過(guò)的原始數(shù)據(jù)經(jīng)過(guò) ISP 處理生成 YUV 標(biāo)準(zhǔn)格式傳到 BB。一般來(lái)說(shuō),這種設(shè)計(jì)適 用于低像素 Camera 的要求,會(huì)在主板上省去一個(gè) DSP,可降低成本。在調(diào)試過(guò)程中,YUV/RGB 格式的攝像頭,其所有參數(shù)都可在 kernel 層通過(guò)寄存器來(lái)控制。調(diào)試一般由 sensor的原廠支持。支持 RawData 格式的模組,由于感光區(qū)域的需求,不會(huì)再模組內(nèi)集成 ISP 以最大程度 的增大感光區(qū)域的面積,提高照片質(zhì)量。模組把原始的數(shù)字信號(hào)傳給 BB 上的 DSP 進(jìn)行處 理,MTK 自帶的 DSP 一般包含 ISP、JPEG encoder、和 DSP 控制芯片。在調(diào)試的時(shí)候圖像的效果需要 MTK 在 HAL 層的參數(shù)進(jìn)行支持。Ghong ConfidentialRevision 0.1-Feb.14 2012- 5 -2012 Ghong inc.Camera Driver analysis in the platform of MTKPreliminary Information四、 閱讀 Camera 的規(guī)格書(shū)(以 Truly 模組 OV5647_Raw 為例):Ghong ConfidentialRevision 0.1-Feb.14 2012- 6 -2012 Ghong inc.Camera Driver analysis in the platform of MTKPreliminary Information五、 Camera 的硬件原理圖及引腳(以 W19S 項(xiàng)目 MainCameraOV5647 為例):從上面可看出,連接 Camera 的 30 根 Pin 腳可大致分為以下幾類:1、 電源部分:a) VCAMD 就是 DVDD 數(shù)字供電,主要給 ISP 供電,由于 RAWDATA 格式 的 sensor 其 ISP 是在 BB 端,所以將其引腳將其 NC。從上面的規(guī)格書(shū)上 可以看出 DVDD 是內(nèi)部 BB 端供電。模組已將其 NC 掉了; b) VCAM_IO 就是 VDDIO 數(shù)字 IO 電源主要給 I2C 部分供電; c) VCAMA 就是 AVDD 模擬供電,主要給感光區(qū)和 ADC 部分供電; d) VCAM_AF 是對(duì) Camera 自動(dòng)對(duì)焦馬達(dá)的供電。 2、 Sensor Input 部分:a) Reset 信號(hào),用于復(fù)位、初始化。 b) Standby/PowerDown 信號(hào),用于進(jìn)入待機(jī)模式,降低功耗。 c) Mclk,即 MasterClock 信號(hào),是由 BB 端提供。 3、 Sensor OutPut 部分:a) Pclk,即 PixelClock 信號(hào),由 MCLK 分頻得到,作為外部時(shí)鐘控制圖像 傳輸幀率 b) HSYNC,行同步信號(hào),其上升沿表示新一列行圖像數(shù)據(jù)的開(kāi)始。 c) VSYNC,幀同步信號(hào),其下降沿表示新的一幀圖片的開(kāi)始。 d) D0-D9 一共 10 根數(shù)據(jù)線(8/10 根等); 4、 I2C 部分:SCL,I2C 時(shí)鐘信號(hào)線和 SDA,I2C 數(shù)據(jù)信號(hào)線。Ghong ConfidentialRevision 0.1-Feb.14 2012- 7 -2012 Ghong inc.Camera Driver analysis in the platform of MTKPreliminary Information六、 MTK 平臺(tái) Camera 驅(qū)動(dòng)架構(gòu):上圖的架構(gòu)相信大家都有了一定的了解,android 將系統(tǒng)大致分為應(yīng)用層、庫(kù)文件和硬件抽象層、Linux 內(nèi)核三層。在底層的內(nèi)核空間,Camera 的 driver 將其驅(qū)動(dòng)起來(lái)以后,將硬件驅(qū)動(dòng)的接口交給硬件抽象層(hal:Hardware Abstraction Layer),android 上層的 Camera 應(yīng)用程序在 android 實(shí)時(shí)系統(tǒng)中的虛擬機(jī)中,加載 android 留給 Camera 公用的一些庫(kù)文件,調(diào)用硬件抽象層(hal)的接口來(lái)控制 Camera硬件來(lái)實(shí)現(xiàn)功能。當(dāng)然,如果是 Raw 模式的 Camera,還需要在硬件抽象層(hal)調(diào)用一些參數(shù)來(lái)控制 Camera 的效果。Ghong ConfidentialRevision 0.1-Feb.14 2012- 8 -2012 Ghong inc.Camera Driver analysis in the platform of MTKPreliminary Information七、 MTK 平臺(tái) Camera 相關(guān)代碼文件(以下代碼均為 MTK6575 平臺(tái)):1、 CameraSensor 驅(qū)動(dòng)相關(guān)文件kernel-3.10/drivers/misc/mediatek/imgsensor/src/platform/2、 Sensor ID 和一些枚舉類型的定義vendor/mediatek/proprietary/custom/common/kernel/imgsensor/inc/kd_imgsensor.h3、 Sensor 供電kernel-3.10/drivers/misc/mediatek/mach/platform/project/camera/camera/kd_camera_hw.c4、 Kernel Space 的 SensorList,imgsensor 模塊注冊(cè)kernel-3.10/drivers/misc/mediatek/imgsensor/src/platform/kd_sensorlist.hGhong ConfidentialRevision 0.1-Feb.14 2012- 9 -2012 Ghong inc.Camera Driver analysis in the platform of MTKPreliminary Information5、 User Space 的 SensorList,向用戶空間提供支持的 SensorListvendor/mediatek/proprietary/custom/platform/hal/D1(D2)/imgsensor_src/sensorlist.cpp6、 Sensor 效果調(diào)整的接口Ghong ConfidentialRevision 0.1-Feb.14 2012- 10 -2012 Ghong inc.Camera Driver analysis in the platform of MTKPreliminary Information八、 Camera 模塊驅(qū)動(dòng)、設(shè)備與總線結(jié)構(gòu):一般在 Linux 設(shè)備驅(qū)動(dòng)模型中,我們只需要關(guān)心總線、設(shè)備、驅(qū)動(dòng)這三個(gè)實(shí)體??偩€會(huì)充當(dāng)紅娘對(duì)加載于其上的設(shè)備與驅(qū)動(dòng)進(jìn)行配對(duì),對(duì)于 Camera 模塊也不例外,下面從總線、設(shè)備、驅(qū)動(dòng)的角度來(lái)分析 Camera 模塊驅(qū)動(dòng)的注冊(cè)、匹配與加載過(guò)程。a) 驅(qū)動(dòng)的注冊(cè):在(customcommonkernelimgsensorsrcKd_sensorlist.c)CAMERA_HW_i2C_init 這個(gè)函數(shù)里通過(guò) Platform_driver_register(&g_stCAMERA_HW_Driver)把 Camera 模塊驅(qū)動(dòng)注冊(cè) 到 Platform 總線上。而 g_stCAMERA_HW_Driver 是對(duì)結(jié)構(gòu)體 Platform_driver 這個(gè)結(jié)構(gòu)體的填充。(KernelincludelinuxPlatform_device.h)Platform_driver 這個(gè)結(jié)構(gòu)體包含 Probe()、Remove()等函數(shù)來(lái)完成驅(qū)動(dòng)的填充。b) 設(shè)備的注冊(cè):對(duì) platform_device 的定義通常在 BSP 的板級(jí)文件:(kernelarchshboardsmach-ap325rxaSetup.c)中實(shí)現(xiàn),在板級(jí)文件中,將 platform_device歸納為一個(gè)數(shù)組,最終通過(guò) platform_add_device()函數(shù)統(tǒng)一注冊(cè):Ghong ConfidentialRevision 0.1-Feb.14 2012- 11 -2012 Ghong inc.Camera Driver analysis in the platform of MTKPreliminary Informationc) 總線的匹配:既 然 是 驅(qū) 動(dòng) Platform_device 那 對(duì) 應(yīng) 的 設(shè) 備 必 然 是 掛 載 Platform 總 線 上 的Platform_device,Platform 總線是 Linux 系統(tǒng)提供的一種機(jī)制,不同于 I2C、I2S 等總線,它 是一種虛擬的總線。Linux 系統(tǒng)為 Platform 總線定義了一個(gè) bus_type 的實(shí)例 Platform_bus_type:(Kerneldriversbaseplatform.c)Platform 總線通過(guò) platform_match 這個(gè)成員函數(shù)來(lái)確定 platform_device 與 platform_driver 如何進(jìn)行匹配:Ghong ConfidentialRevision 0.1-Feb.14 2012- 12 -2012 Ghong inc.Camera Driver analysis in the platform of MTKPreliminary Information九、 Camera 驅(qū)動(dòng)工作流程:下載Capture下載PreviewPower On 參數(shù)為拍照 參數(shù)為預(yù) 做準(zhǔn)備 覽做準(zhǔn)備PowerOffIICINITReset軟件ResetPDN讀ID判斷是否連接到需要的Sensor從上圖可以清晰的了解到 Camera 的一個(gè)工作流程主要分為這么七步:1. 打開(kāi) Camera Power LDO,讓 Camera 有能量保證。 2. 打開(kāi) IIC,設(shè)置 PDN 引腳,使 Camera 退出出 Standby 模式,按照要求讓 Reset 腳 做一個(gè)復(fù)位動(dòng)作。 3. 讀一下 sensor 的版本 ID,這樣可以讓你確認(rèn)是否連接上你想要的 sensor。 4. 對(duì) Sensor 進(jìn)行初始化下載最基本的參數(shù)讓 Sensor 工作起來(lái),可能包括軟復(fù)位。 5. 下載 preview 的參數(shù),為預(yù)覽動(dòng)作準(zhǔn)備。 6. 下載 Capture 的參數(shù),為拍照動(dòng)作準(zhǔn)備。 7. 設(shè)置 PDN 引腳,使 Sensor 進(jìn)入 Standby 模式,或者關(guān)掉 LDO 等動(dòng)作,退出 Camera。 我們都知道,Linux 內(nèi)核是通過(guò)模塊的機(jī)制來(lái)加載設(shè)備驅(qū)動(dòng)的,那么接下來(lái)我們就從設(shè)備模塊加載的角度來(lái)看下 Camera 工作流程的驅(qū)動(dòng)代碼是如何工作的。在-alpsmediatekcustomcommonkernelimgsensorsrckd_sensorlist.c 中可以看到:module_init(CAMERA_HW_i2C_init);module_exit(CAMERA_HW_i2C_exit);在這里 Linux 內(nèi)核加載和卸載 Camera 模塊。Ghong ConfidentialRevision 0.1-Feb.14 2012- 13 -2012 Ghong inc.Camera Driver analysis in the platform of MTKPreliminary Informationstatic struct platform_driver g_stCAMERA_HW_Driver = .probe= CAMERA_HW_probe,.remove= CAMERA_HW_remove,.suspend = CAMERA_HW_suspend,.resume= CAMERA_HW_resume,.driver= .name= image_sensor,.owner= THIS_MODULE,;Camera 模塊初始化開(kāi)始向總線注冊(cè)驅(qū)動(dòng),在 Platform_driver 的成員函數(shù).probe()中,通過(guò) i2c_add_driver(&CAMERA_HW_i2c_driver)向 I2C 申請(qǐng),而 CAMERA_HW_i2c_driver 這個(gè)結(jié)構(gòu)體里填充的是將 Camera 作為一個(gè)字符設(shè)備在 I2C 上進(jìn)行注冊(cè):在 RegisterCAMERA_HWCharDrv()中cdev_init(g_pCAMERA_HW_CharDrv, &g_stCAMERA_HW_fops);對(duì)設(shè)備進(jìn)行初始化,并將g_stCAMERA_HW_fops 這個(gè)文件操作函數(shù)作為上層對(duì) Camera 設(shè)備操作的接口留給上層進(jìn) 行調(diào)用:Ghong ConfidentialRevision 0.1-Feb.14 2012- 14 -2012 Ghong inc.Camera Driver analysis in the platform of MTKPreliminary Information其中成員函數(shù) open()只是初始化一個(gè)原子變量留給系統(tǒng)調(diào)用。ioctl()才是整個(gè) Camera驅(qū)動(dòng)的入口:CAMERA_HW_Ioctl()是上層文件操作系統(tǒng)操作底層硬件的方法,它先對(duì) Camera 需要的Buffer 做一個(gè)初始化,然后建立對(duì) Cameraopen、getinfo 等操作的接口:通過(guò)判斷 Sensor 狀態(tài)的邏輯值來(lái)進(jìn)行具體的操作,對(duì)于這個(gè)值的定義在:MediatekcustomcommonkernelimgsensorincKd_imgsensor.h 中Ghong ConfidentialRevision 0.1-Feb.14 2012- 15 -2012 Ghong inc.Camera Driver analysis in the platform of MTKPreliminary Information在 KdSetDriver()中通過(guò)判斷 name 和 ID 匹配具體型號(hào)的 sensor 的驅(qū)動(dòng),判斷它是主攝還 是次攝,并對(duì)它進(jìn)行初始化:通過(guò) NAME 和 ID 匹配完成后會(huì)將 PSENSOR_FUNCTION_STRUCT *pfFunc 這個(gè)結(jié)構(gòu)體匹 配到具體型號(hào)的驅(qū)動(dòng)代碼中:kernel-3.10/drivers/misc/mediatek/imgsensor/src/platform/kd_camera_hw.c到這里,整個(gè) Camera 驅(qū)動(dòng)從總線注冊(cè)到完成具體 sensor 的初始化的流程就完成了,CAMERA_HW_Ioctl()中其他的 ioctl 操作函數(shù)最后都會(huì)在$sensor$_sensor.c 中實(shí)現(xiàn)。Ghong ConfidentialRevision 0.1-Feb.14 2012- 16 -2012 Ghong inc.Camera Driver analysis in the platform of MTKPreliminary Information十、 Camera 驅(qū)動(dòng)添加、調(diào)試流程:1、 修改系統(tǒng)配置文件 ProjectConfig.mk:-alpsmediatekconfig$project$ProjectConfig.mk Ghong ConfidentialRevision 0.1-Feb.14 2012- 17 -2012 Ghong inc.Camera Driver analysis in the platform of MTKPreliminary Information2、 檢查、配置供電文件:(-alpsmediatekcustom$project$KernelCameraCamerakd_camera_hw.c)kernel-3.10/drivers/misc/mediatek/mach/platform/project/camera/camera/kd_camera_hw.hCamera 供電流程(以 3M 前攝 MT9V114+5M 后攝 OV5647 為例):其實(shí)在 kd_camera_hw.c 中只有一個(gè)函數(shù) kdCISModulePowerOn(),在這個(gè) 函數(shù)中需要注意的是通過(guò) GPIO 口控制 PDN 和 RST 引腳的時(shí)候,對(duì)于其相關(guān)的定義,由其在切換平臺(tái)的時(shí)候。例如 MT6573 和 MT6575 的定義順序就不同。Ghong ConfidentialRevision 0.1-Feb.14 2012- 18 -2012 Ghong inc.Camera Driver analysis in the platform of MTKPreliminary Information3、 添加 Camera 驅(qū)動(dòng)(以 ov5647 為例):創(chuàng)建 SensorFuncOV5647 這樣一個(gè)數(shù)據(jù)結(jié)構(gòu)SENSOR_FUNCTION_STRUCT SensorFuncOV5647= OV5647Open, OV5647GetInfo, OV5647GetResolution, OV5647FeatureControl, OV5647Control, OV5647Close; Ghong ConfidentialRevision 0.1-Feb.14 2012- 19 -2012 Ghong inc.Camera Driver analysis in the platform of MTKPreliminary Informationa) OV5647Open 初始化操作就是對(duì) SensorIC 中寄存器的操作,調(diào)試主要由 IC 原廠支持。Open 函數(shù)結(jié)束后返回 ERROR_NONE 表示初始化成功,可以正常使用。b) OV5647GetInfo UINT32 OV5647GetInfo(MSDK_SCENARIO_ID_ENUM ScenarioId,MSDK_SENSOR_INFO_STRUCT *pSensorInfo,MSDK_SENSOR_CONFIG_STRUCT *pSensorConfigData)第一個(gè)參數(shù) ScenarioId 來(lái)自于 MSDK_SCENARIO_ID_ENUM 這個(gè)數(shù)組,在kd_imgsensor_define.h 中是這樣定義的:#define MSDK_SCENARIO_ID_ENUMACDK_SCENARIO_ID_ENUMtypedef enumACDK_SCENARIO_ID_CAMERA_PREVIEW=0,ACDK_SCENARIO_ID_VIDEO_PREVIEW,ACDK_SCENARIO_ID_VIDEO_CAPTURE_MPEG4,ACDK_SCENARIO_ID_CAMERA_CAPTURE_JPEG,ACDK_SCENARIO_ID_CAMERA_CAPTURE_MEM,ACDK_SCENARIO_ID_CAMERA_BURST_CAPTURE_JPEG,ACDK_SCENARIO_ID_VIDEO_DECODE_MPEG4,ACDK_SCENARIO_ID_VIDEO_DECODE_H263,ACDK_SCENARIO_ID_VIDEO_DECODE_H264,ACDK_SCENARIO_ID_VIDEO_DECODE_WMV78,ACDK_SCENARIO_ID_VIDEO_DECODE_WMV9,ACDK_SCENARIO_ID_VIDEO_DECODE_MPEG2,ACDK_SCENARIO_ID_IMAGE_YUV2RGB,ACDK_SCENARIO_ID_IMAGE_RESIZE,ACDK_SCENARIO_ID_IMAGE_ROTATE,Ghong ConfidentialRevision 0.1-Feb.14 2012- 20 -2012 Ghong inc.Camera Driver analysis in the platform of MTKPreliminary InformationACDK_SCENARIO_ID_IMAGE_POST_PROCESS, ACDK_SCENARIO_ID_JPEG_RESIZE, ACDK_SCENARIO_ID_JPEG_DECODE, ACDK_SCENARIO_ID_JPEG_PARSE, ACDK_SCENARIO_ID_JPEG_ENCODE, ACDK_SCENARIO_ID_JPEG_ENCODE_THUMBNAIL, ACDK_SCENARIO_ID_DRIVER_IO_CONTROL, ACDK_SCENARIO_ID_DO_NOT_CARE, ACDK_SCENARIO_ID_IMAGE_DSPL_BUFFER_ALLOC, ACDK_SCENARIO_ID_TV_OUT, ACDK_SCENARIO_ID_MAX,ACDK_SCENARIO_ID_VIDOE_ENCODE_WITHOUT_PREVIEW, ACDK_SCENARIO_ID_CAMERA_CAPTURE_JPEG_BACK_PREVIEW, ACDK_SCENARIO_ID_VIDEO_DECODE_RV8, ACDK_SCENARIO_ID_VIDEO_DECODE_RV9, ACDK_SCENARIO_ID_CAMERA_ZSD, ACDK_SCENARIO_ID_ENUM; 通過(guò)這個(gè)數(shù)組定義 Camera 的各種模式,并且給他們從 0 開(kāi)始給一個(gè)模擬的 ID,通過(guò)這個(gè)ScenarioID 來(lái)控制 Camera 的工作模式是在拍照、攝像等等。想要了解*pSensorInfo 這個(gè)指針的內(nèi)容就得看 MSDK_SENSOR_INFO_STRUCT 的定義#define MSDK_SENSOR_INFO_STRUCT ACDK_SENSOR_INFO_STRUCT typedef structMUINT16 SensorPreviewResolutionX;MUINT16 SensorPreviewResolutionY;MUINT16 SensorFullResolutionX;MUINT16 SensorFullResolutionY;MUINT8 SensorClockFreq;/* MHz */MUINT8 SensorCameraPreviewFrameRate;MUINT8 SensorVideoFrameRate;MUINT8 SensorStillCaptureFrameRate;MUINT8 SensorWebCamCaptureFrameRate;MUINT8SensorClockPolarity;/*SENSOR_CLOCK_POLARITY_HIGH/SENSOR_CLOCK_POLARITY_Low */Ghong ConfidentialRevision 0.1-Feb.14 2012- 21 -2012 Ghong inc.Camera Driver analysis in the platform of MTKPreliminary InformationMUINT8 SensorClockFallingPolarity;MUINT8 SensorClockRisingCount;/* 0.15 */MUINT8 SensorClockFallingCount;/* 0.15 */MUINT8 SensorClockDividCount;/* 0.15 */MUINT8 SensorPixelClockCount;/* 0.15 */MUINT8 SensorDataLatchCount;/* 0.15 */MUINT8 SensorHsyncPolarity;MUINT8 SensorVsyncPolarity;MUINT8 SensorInterruptDelayLines;MINT32SensorResetActiveHigh;MUINT32 SensorResetDelayCount;ACDK_SENSOR_INTERFACE_TYPE_ENUM SensroInterfaceType;ACDK_SENSOR_OUTPUT_DATA_FORMAT_ENUM SensorOutputDataFormat;ACDK_SENSOR_MIPI_LANE_NUMBER_ENUM SensorMIPILaneNumber;CAMERA_ISO_BINNING_INFO_STRUCT SensorISOBinningInfo;MUINT32 CaptureDelayFrame;MUINT32 PreviewDelayFrame;MUINT32 VideoDelayFrame;MUINT16 SensorGrabStartX;MUINT16 SensorGrabStartY;MUINT16 SensorDrivingCurrent;MUINT8SensorMasterClockSwitch;MUINT8AEShutDelayFrame;/* The frame of setting shutter default 0 for TGint */MUINT8AESensorGainDelayFrame;/* The frame of setting sensor gain */MUINT8AEISPGainDelayFrame;MUINT8MIPIDataLowPwr2HighSpeedTermDelayCount;MUINT8MIPIDataLowPwr2HighSpeedSettleDelayCount;MUINT8MIPICLKLowPwr2HighSpeedTermDelayCount;MUINT8SensorWidthSampling;MUINT8SensorHightSampling;MUINT8SensorPacketECCOrder;MUINT8SensorDriver3D; ACDK_SENSOR_INFO_STRUCT, *PACDK_SENSOR_INFO_STRUCT;Ghong ConfidentialRevision 0.1-Feb.14 2012- 22 -2012 Ghong inc.Camera Driver analysis in the platform of MTKPreliminary Information這個(gè)結(jié)構(gòu)體列取了 Sensor 的時(shí)鐘頻率、預(yù)覽時(shí)的幀率、行同步/幀同步頻率等參數(shù)。第三個(gè)參數(shù)*pSensorConfigData 同樣根據(jù) MSDK_SENSOR_CONFIG_STRUCT 結(jié)構(gòu)體#define MSDK_SENSOR_CONFIG_STRUCT ACDK_SENSOR_CONFIG_STRUCT typedef structACDK_SENSOR_IMAGE_MIRROR_ENUM SensorImageMirror;MINT32 EnableShutterTansfer;/* Capture 時(shí)的快門設(shè)置 */MINT32 EnableFlashlight
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 45828-2025共享閑置物品質(zhì)量信息描述
- TD/T 1044-2014生產(chǎn)項(xiàng)目土地復(fù)墾驗(yàn)收規(guī)程
- JJG(煙草)15-2010煙草專用吸阻標(biāo)準(zhǔn)棒檢定規(guī)程
- 2025學(xué)年環(huán)翠區(qū)八年級(jí)上學(xué)期歷史期末試題:中外歷史時(shí)間軸歷史人物解讀
- 化學(xué)●廣東卷丨2022年廣東省普通高中學(xué)業(yè)水平選擇性考試化學(xué)試卷及答案
- 被害人陳述38課件
- 考研復(fù)習(xí)-風(fēng)景園林基礎(chǔ)考研試題附參考答案詳解【培優(yōu)】
- 考研復(fù)習(xí)-風(fēng)景園林基礎(chǔ)考研試題(研優(yōu)卷)附答案詳解
- 風(fēng)景園林基礎(chǔ)考研資料試題及參考答案詳解【基礎(chǔ)題】
- 《風(fēng)景園林招投標(biāo)與概預(yù)算》試題A帶答案詳解(研優(yōu)卷)
- 4-02-02-01 國(guó)家職業(yè)標(biāo)準(zhǔn)客運(yùn)車輛駕駛員 (2025年版)
- 2024北京西城區(qū)四年級(jí)(下)期末語(yǔ)文試題及答案
- 【航線補(bǔ)貼績(jī)效評(píng)估實(shí)證研究-以華夏航空公司為例19000字(論文)】
- 《中國(guó)老年高血壓管理指南(2023版)》解讀
- 電梯五方對(duì)講設(shè)計(jì)方案
- 24 唐詩(shī)三首 《茅屋為秋風(fēng)所破歌》課件
- 小升初英語(yǔ)作文寫(xiě)作專題訓(xùn)練題100題(含范文詳解)
- 國(guó)際化創(chuàng)新型人才培養(yǎng)模式與中俄合作辦學(xué)實(shí)踐案例分析
- 附件6工貿(mào)高風(fēng)險(xiǎn)企業(yè)高危領(lǐng)域較大以上安全風(fēng)險(xiǎn)管控清單
- 一次性使用無(wú)菌醫(yī)療器械管理制度
評(píng)論
0/150
提交評(píng)論