曙海教育集团论坛3G手机技术专区MTK开发 → 回复帖子

  回复帖子
用户名:   *您没有注册?
密码:   *忘记论坛密码?    标题采用“回复:XXX....”
主题标题:  *不得超过 200 个汉字
当前心情
上一页 发帖表情 下一页
内容
高级设置: 签名: 回帖通知:
 

主题新回顾(发布时间:2010-12-2 10:22:39)
--  作者:wangxinxin
--  添加mtk sensor驱动
MTK SENSOR
1)SENSOR_ID
The sequence number of the sensor that is ported in maui system, starts from 100. It is used for CCT (Camera Calibration Tool) and map to corresponding sensors parmeters when we calibrate sensor!¡¥s setting. It shouldbe assigned by MTK, The mapping is defined in ..\mcu\media\camera_v2\include\camera_para_v2.h.

2) CAMERA_SENSOR_REG_DEFAULT_VALUE
The default value format follows the structure  of sensor_para_struct and sensor_reg_para. For default registers are determined and by sensor porting engineer and the values are put in camera_sensor_para.c. It is strongly recommended not to modify them exclude senor porting engineers.

3) CAMERA_SENSOR_CCT_DEFAULT_VALUE
The default value format follows the structure of sensor_para_struct and sensor_reg_para introduced in

typedef struct {
sensor_reg_struct reg[ENGINEER_END];
sensor_reg_struct cct[FACTORY_END_ADDR];
} sensor_data_struct;

typedef struct {
kal_uint32 addr;
kal_uint32 para;
} sensor_reg_struct;

For default registers are determined and by camera tuning engineer and the values are put in camera_tuning_para.c. It is strongly recommended not to modify them exclude camera tuning engineers.

Functions:
void image_sensor_func_config(void)
void (* sensor_init)(void); //kal_int8 init_MT9T012(void)
  void (* get_sensor_id)(kal_uint8 *sensor_write_id, kal_uint8 *sensor_read_id); //void get_MT9T012_id(kal_uint8 *sensor_write_id, kal_uint8 *sensor_read_id)
  void (* get_sensor_size)(kal_uint16 *sensor_width, kal_uint16 *sensor_height);
  //void get_MT9D011_size(kal_uint16 *sensor_width, kal_uint16 *sensor_height)
     void (* get_sensor_period) (kal_uint16 *pixel_number, kal_uint16 *line_number);
  //void get_MT9T012_period(kal_uint16 *pixel_number, kal_uint16 *line_number)
  void (* sensor_preview_setting)(image_sensor_exposure_window_struct *image_window, image_sensor_config_struct *sensor_config_data);
  //void MT9T012_preview(image_sensor_exposure_window_struct *image_window, image_sensor_config_struct *sensor_config_data)
   void (* sensor_capture_setting)(image_sensor_exposure_window_struct *image_window, image_sensor_config_struct *sensor_config_data);
   //void MT9T012_capture(image_sensor_exposure_window_struct *image_window, image_sensor_config_struct *sensor_config_data)
   
void (* write_sensor_reg)(kal_uint8 cmd, kal_uint8 para);
//void write_MT9T012_reg(kal_uint32 addr, kal_uint32 para)
kal_uint8 (* read_sensor_reg)(kal_uint8 cmd); //kal_uint32 read_MT9T012_reg(kal_uint32 addr)

void (* set_sensor_eshutter)(kal_uint16 eshutter); //void set_MT9T012_shutter(kal_uint16 shutter)

    kal_uint16 (* set_sensor_gain) (kal_uint16 gain);
    //kal_uint16 set_MT9T012_gain(kal_uint16 gain)
     void (* set_camera_night_mode) (kal_bool enable); //void MT9T012_night_mode(kal_bool enable)
     void (* sensor_power_off) (void);
     //void power_off_MT9T012(void)
     void (* set_flashlight) (kal_bool enable)
     //void set_flashlight (kal_bool enable)
     kal_uint32 (* yuv_sensor_setting)(kal_uint32 cmd, kal_uint32 para);
     //kal_uint32 OV760_yuv_sensor_setting(kal_uint32 cmd, kal_uint32 para)
     void camera_para_to_sensor(void) ;
     void sensor_to_camera_para(void) ;