Files

96 lines
2.6 KiB
C
Executable File

#ifndef __SC850SL_H__
#define __SC850SL_H__
#include "sns_comm.h"
#ifdef __cplusplus
extern "C" {
#endif
#define SC850SL_REG_ADDR_EXP_H 0x3E00
#define SC850SL_REG_ADDR_EXP_M 0x3E01
#define SC850SL_REG_ADDR_EXP_L 0x3E02
#define SC850SL_REG_ADDR_DGAIN_H 0x3E06
#define SC850SL_REG_ADDR_DGAIN_L 0x3E07
#define SC850SL_REG_ADDR_AGAIN_H 0x3e08
#define SC850SL_REG_ADDR_AGAIN_L 0x3e09
#define SC850SL_REG_ADDR_VMAX_H 0x320e
#define SC850SL_REG_ADDR_VMAX_L 0x320F
#define SC850SL_REG_ADDR_S_EXP_H 0x3E22
#define SC850SL_REG_ADDR_S_EXP_M 0x3E04
#define SC850SL_REG_ADDR_S_EXP_L 0x3E05
#define SC850SL_REG_ADDR_S_AGAIN_H 0x3e12
#define SC850SL_REG_ADDR_S_AGAIN_L 0x3e13
#define SC850SL_REG_ADDR_S_DGAIN_H 0x3e10
#define SC850SL_REG_ADDR_S_DGAIN_L 0x3e11
#define SC850SL_SEXP_MAX_ADDR_H 0x3E23
#define SC850SL_SEXP_MAX_ADDR_L 0x3E24
#define SC850SL_REG_ADDR_VMAX_H1 0x3230
#define SC850SL_REG_ADDR_VMAX_L1 0x3231
#define SC850SL_REG_ADDR_GRPH 0x3800
#define SC850SL_FRAME_RATE_MIN 0x6978 //Min:2.5fps
#define EXP_OFFSET_LINEAR 4
#define EXP_OFFSET_WDR 8
#define SC850SL_SEXP_MAX_DEFAULT 0x180
#define SC850SL_RATIO 64
// the value of the sc850sl exposure register is in half line units, (<< 1) for AE calculation, (>> 1) for EXP reg
#define SC850SL_EXP_SHIFT 1
typedef enum {
SC850SL_REG_EXP_H = 0,
SC850SL_REG_EXP_M,
SC850SL_REG_EXP_L,
SC850SL_REG_DGC_H,
SC850SL_REG_DGC_L,
SC850SL_REG_AGC_H,
SC850SL_REG_AGC_L,
SC850SL_REG_VMAX_H,
SC850SL_REG_VMAX_L,
SC850SL_REG_NUM1,
SC850SL_REG_NUM2,
SC850SL_REG_NUM3,
SC850SL_REG_NUM4,
SC850SL_REG_NUM5,
SC850SL_REG_NUM6,
SC850SL_REG_NUM7,
SC850SL_REG_NUM8,
SC850SL_REG_L_MAX_NUM,
// short frame reg info from here
SC850SL_REG_S_EXP_H = SC850SL_REG_L_MAX_NUM,
SC850SL_REG_S_EXP_M,
SC850SL_REG_S_EXP_L,
SC850SL_REG_S_DGAIN_H,
SC850SL_REG_S_DGAIN_L,
SC850SL_REG_S_AGAIN_H,
SC850SL_REG_S_AGAIN_L,
SC850SL_REG_VMAX_H1,
SC850SL_REG_VMAX_L1,
// SC850SL_REG_GROUP_HOLD_0,
SC850SL_REG_S_EXP_MAX_H,
SC850SL_REG_S_EXP_MAX_L,
// SC850SL_REG_GROUP_HOLD_1,
// SC850SL_REG_GROUP_HOLD_2,
SC850SL_REG_MAX_NUM
} sc850sl_reg_info;
#define SC850SL_VMAX_8M_LINEAR 2250
#define SC850SL_VMAX_5M_LINEAR SC850SL_VMAX_8M_LINEAR
#define SC850SL_VMAX_4M_LINEAR SC850SL_VMAX_8M_LINEAR
#define SC850SL_VMAX_8M_WDR 4500
#define SC850SL_VMAX_5M_WDR SC850SL_VMAX_8M_WDR
#define SC850SL_VMAX_4M_WDR SC850SL_VMAX_8M_WDR
#define SC850SL_FULL_LINES_MAX 0xFFFFF
#ifdef __cplusplus
}
#endif
#endif // __SC850SL_H__