Camera驱动中添加新的mode模式,本文以全景模式SENSOR_PANORAMA_MODE例进行说明: { .x_output = 2100, .y_output = 1560, ... .mode = SENSOR_PANORAMA_MODE, .... } 1、 在sensor_lib.h中添加SENSOR_PANORAMA_MODE的定义。 #define SENSOR_PANORAMA_MODE 1<<12、 在sensor_pick_res.h中在下面的结构体中添加相对应的变量, typedef enum { 。。。 SEN_USECASE_PANORAMA, ... }sensor_usecase_t typedef enum{ ... SEN_COND_PANORAMA, ... }sensor_pick_condition_t typedef struct{int32_t panorama_enable;...}sensor_pick_usecase_t;在这两个结构体中添加变量的时候,最好在第一个添加,修改pick_v1表的时候方便,不能再最后一个添加,SEN_USECASE_VP对应的函数默认总是TRUE,所以如果在最后添加,则会出现不会走到所添加的值。 3、Sensor.h 中的结构体sensor_data_t 中也需要添加一个panorama_enable变量, 此结构体中的panorama_enable 是为了接收来自上层传递下来的指令用的。通过此变量可以修改sensor_pick_usecase_t 并定义声明is_usecase_func_t中对应的函数boolean sensor_pick_res_is_panoranama(sensor_pick_usecase_t *sctrl); 4、 根据在2中两个结构体中对应变量的位置和和其他变量之间的相互关系,修改pick_v1[SEN_COND_MAX][SEN_USECASE_MAX] 5、 修改sensor_pick_get_mode 函数,把新添加的PANORAMA模式加入进来。 。。。。 else if(usecase ==SEN_USECASE_PANORAMA) return SENSOR_PANORAMA_MODE 。。。。