#ifndef __OS08A20_H__ #define __OS08A20_H__ #include "sns_comm.h" #ifdef __cplusplus extern "C" { #endif #define OS08A20_BIT_WIDTH_10 #ifdef OS08A20_BIT_WIDTH_10 #define OS08A20_VMAX_8M_LINEAR 2314 // 10bit #define OS08A20_VMAX_5M_LINEAR OS08A20_VMAX_8M_LINEAR // crop from 8M #define OS08A20_VMAX_4M_LINEAR OS08A20_VMAX_8M_LINEAR #define OS08A20_VMAX_4M_1440P_LINEAR OS08A20_VMAX_8M_LINEAR #define OS08A20_VMAX_3M_LINEAR OS08A20_VMAX_8M_LINEAR #define OS08A20_VMAX_2M_LINEAR 4628 #else #ifdef FPGA #define OS08A20_VMAX_8M_LINEAR 4000 // 0xfa0 12bit #else #define OS08A20_VMAX_8M_LINEAR 2314 #endif #define OS08A20_VMAX_5M_LINEAR OS08A20_VMAX_8M_LINEAR // crop from 8M #define OS08A20_VMAX_4M_LINEAR OS08A20_VMAX_8M_LINEAR #define OS08A20_VMAX_4M_1440P_LINEAR OS08A20_VMAX_8M_LINEAR #define OS08A20_VMAX_3M_LINEAR OS08A20_VMAX_8M_LINEAR #define OS08A20_VMAX_2M_LINEAR OS08A20_VMAX_8M_LINEAR #endif #define OS08A20_VMAX_8M_WDR 2317 // 10bit #define OS08A20_VMAX_5M_WDR OS08A20_VMAX_8M_WDR // crop from 8M #define OS08A20_VMAX_4M_WDR OS08A20_VMAX_8M_WDR #define OS08A20_VMAX_4M_1440P_WDR OS08A20_VMAX_8M_WDR #define OS08A20_VMAX_3M_WDR OS08A20_VMAX_8M_WDR #define OS08A20_VMAX_2M_WDR OS08A20_VMAX_8M_WDR #define OS08A20_EXP_OFFSET_LINEAR 10 #define OS08A20_EXP_OFFSET_WDR 18 #define OS08A20_REG_DELAY_CONFIG_NUM 0 // OS08A20 Register Address #define OS08A20_REG_ADDR_EXP_H 0x3501 #define OS08A20_REG_ADDR_EXP_L 0x3502 #define OS08A20_REG_ADDR_AGAIN_H 0x3508 #define OS08A20_REG_ADDR_AGAIN_L 0x3509 #define OS08A20_REG_ADDR_DGAIN_H 0x350a #define OS08A20_REG_ADDR_DGAIN_L 0x350b #define OS08A20_REG_ADDR_VMAX_H 0x380e #define OS08A20_REG_ADDR_VMAX_L 0x380f #define OS08A20_REG_ADDR_S_EXP_H 0x3511 #define OS08A20_REG_ADDR_S_EXP_L 0x3512 #define OS08A20_REG_ADDR_S_AGAIN_H 0x350c #define OS08A20_REG_ADDR_S_AGAIN_L 0x350d #define OS08A20_REG_ADDR_S_DGAIN_H 0x350e #define OS08A20_REG_ADDR_S_DGAIN_L 0x350f typedef enum { OS08A20_REG_EXP_H_IDX = 0, OS08A20_REG_EXP_L_IDX, OS08A20_REG_AGAIN_H_IDX, OS08A20_REG_AGAIN_L_IDX, OS08A20_REG_DGAIN_H_IDX, OS08A20_REG_DGAIN_L_IDX, OS08A20_REG_VMAX_H_IDX, OS08A20_REG_VMAX_L_IDX, OS08A20_REG_L_MAX_NUM, OS08A20_REG_S_EXP_H_IDX = OS08A20_REG_L_MAX_NUM, OS08A20_REG_S_EXP_L_IDX, OS08A20_REG_S_AGAIN_H_IDX, OS08A20_REG_S_AGAIN_L_IDX, OS08A20_REG_S_DGAIN_H_IDX, OS08A20_REG_S_DGAIN_L_IDX, OS08A20_REG_MAX_NUM } os08a20_reg_index; #ifdef __cplusplus } #endif #endif // __OS08A20_H__