pull/31674/head
Comma Device 1 year ago
parent 0e73a1827a
commit 78f16a8ed5
  1. 8
      system/camerad/sensors/os04c10.cc
  2. 10
      system/camerad/sensors/os04c10_registers.h

@ -46,7 +46,7 @@ OS04C10::OS04C10() {
dc_gain_on_grey = 0.9; dc_gain_on_grey = 0.9;
dc_gain_off_grey = 1.0; dc_gain_off_grey = 1.0;
exposure_time_min = 2; // 1x exposure_time_min = 2; // 1x
exposure_time_max = 3200; exposure_time_max = 2200;
analog_gain_min_idx = 0x0; analog_gain_min_idx = 0x0;
analog_gain_rec_idx = 0x0; // 1x analog_gain_rec_idx = 0x0; // 1x
analog_gain_max_idx = 0x36; analog_gain_max_idx = 0x36;
@ -65,13 +65,13 @@ std::vector<i2c_random_wr_payload> OS04C10::getExposureRegisters(int exposure_ti
uint32_t long_time = exposure_time; uint32_t long_time = exposure_time;
uint32_t real_gain = os04c10_analog_gains_reg[new_exp_g]; uint32_t real_gain = os04c10_analog_gains_reg[new_exp_g];
uint32_t short_time = long_time > exposure_time_min*8 ? long_time / 8 : exposure_time_min; // uint32_t short_time = long_time > exposure_time_min*8 ? long_time / 8 : exposure_time_min;
return { return {
{0x3501, long_time>>8}, {0x3502, long_time&0xFF}, {0x3501, long_time>>8}, {0x3502, long_time&0xFF},
{0x3511, short_time>>8}, {0x3512, short_time&0xFF}, // {0x3511, short_time>>8}, {0x3512, short_time&0xFF},
{0x3508, real_gain>>8}, {0x3509, real_gain&0xFF}, {0x3508, real_gain>>8}, {0x3509, real_gain&0xFF},
{0x350c, real_gain>>8}, {0x350d, real_gain&0xFF}, // {0x350c, real_gain>>8}, {0x350d, real_gain&0xFF},
}; };
} }

@ -263,10 +263,10 @@ const struct i2c_random_wr_payload init_array_os04c10[] = {
{0x3817, 0x01}, {0x3817, 0x01},
{0x380c, 0x08}, {0x380d, 0x5c}, // HTS {0x380c, 0x08}, {0x380d, 0x5c}, // HTS
{0x380e, 0x06}, {0x380f, 0x26}, // VTS {0x380e, 0x09}, {0x380f, 0x38}, // VTS
{0x3820, 0xb0}, {0x3820, 0xb0},
{0x3821, 0x04}, {0x3821, 0x00},
{0x3880, 0x25}, {0x3880, 0x25},
{0x3882, 0x20}, {0x3882, 0x20},
{0x3c91, 0x0b}, {0x3c91, 0x0b},
@ -299,9 +299,9 @@ const struct i2c_random_wr_payload init_array_os04c10[] = {
{0x350a, 0x04}, {0x350b, 0x00}, {0x350a, 0x04}, {0x350b, 0x00},
// short // short
{0x3510, 0x00}, {0x3511, 0x00}, {0x3512, 0x10}, // {0x3510, 0x00}, {0x3511, 0x00}, {0x3512, 0x10},
{0x350c, 0x00}, {0x350d, 0x80}, // {0x350c, 0x00}, {0x350d, 0x80},
{0x350e, 0x04}, {0x350f, 0x00}, // {0x350e, 0x04}, {0x350f, 0x00},
// wb // wb
{0x5100, 0x06}, {0x5101, 0xcb}, {0x5100, 0x06}, {0x5101, 0xcb},

Loading…
Cancel
Save