54 uint8_t high_threshold;
55 uint8_t low_threshold;
56 uint8_t high_threshold_check;
57 uint8_t low_threshold_check;
129 reg16 = rand() % 256 | 0x100;
215 reg16 = (rand() % 256) | (uint16_t)((uint16_t)1 << 8);
238 reg16 = (rand() % 256) | (uint16_t)((uint16_t)2 << 8);
347 reg16 = rand() % 0xFFFFU;
368 ov2640_interface_debug_print(
"ov2640: ov2640_set_frame_exposure_pre_charge_row_number/ov2640_get_frame_exposure_pre_charge_row_number test.\n");
689 ov2640_interface_debug_print(
"ov2640: ov2640_set_clock_output_power_down_pin_status/ov2640_get_clock_output_power_down_pin_status test.\n");
777 reg8 = rand() % 0x3F;
1536 reg8 = rand() % 256;
1559 reg8 = rand() % 256;
1582 high_threshold = rand() % 0xF;
1583 low_threshold = rand() % 0xF;
1602 ov2640_interface_debug_print(
"ov2640: check fast mode large step range high threshold %s.\n", high_threshold == high_threshold_check ?
"ok" :
"error");
1603 ov2640_interface_debug_print(
"ov2640: check fast mode large step range low threshold %s.\n", low_threshold == low_threshold_check ?
"ok" :
"error");
1608 reg16 = rand() % 0xFFF;
1629 ov2640_interface_debug_print(
"ov2640: ov2640_set_hsync_position_and_width_end_point/ov2640_get_hsync_position_and_width_end_point test.\n");
1631 reg16 = rand() % 0x3FF;
1652 ov2640_interface_debug_print(
"ov2640: ov2640_set_hsync_position_and_width_start_point/ov2640_get_hsync_position_and_width_start_point test.\n");
1654 reg16 = rand() % 0x3FF;
1677 reg16 = rand() % 0xFFF;
1700 reg8 = rand() % 256;
1723 reg16 = rand() % 0x7FF;
1746 reg16 = rand() % 0x7FF;
1830 ov2640_interface_debug_print(
"ov2640: ov2640_set_zoom_window_horizontal_start_point/ov2640_get_zoom_window_horizontal_start_point test.\n");
1875 reg16 = rand() % 0x3FF;
1896 ov2640_interface_debug_print(
"ov2640: ov2640_set_zoom_mode_vertical_window_start_point/ov2640_get_zoom_mode_vertical_window_start_point test.\n");
1898 reg16 = rand() % 0x3FF;
1921 reg8 = rand() % 256;
1944 reg16 = rand() % 0x3FF;
1967 reg16 = rand() % 0x3FF;
1990 reg32 = rand() % 0xFFFFFFF;
2013 reg8 = rand() % 256;
2036 reg8 = rand() % 256;
2145 reg8 = rand() % 0x7F;
2506 reg8 = rand() % 256;
3092 ov2640_interface_debug_print(
"ov2640: ov2640_set_program_memory_pointer_access_address/ov2640_get_program_memory_pointer_access_address test.\n");
4178 reg8 = rand() % 256;
4201 reg16 = rand() % 0xFFF;
4224 reg16 = rand() % 0x7FF;
4402 reg16 = (rand() % 0x3FF) / 4;
4425 reg16 = (rand() % 0x1FF) / 4;
4449 reg16 = rand() % 0x7FF;
4473 reg16 = rand() % 0x7FF;
4497 reg8 = rand() % 0xF;
4521 reg8 = rand() % 0xF;
4545 reg16 = rand() % 0x3FF;
4569 reg16 = rand() % 0x1FF;
driver ov2640 register test header file
uint8_t ov2640_get_awb(ov2640_handle_t *handle, ov2640_bool_t *enable)
get awb status
uint8_t ov2640_set_offset_y(ov2640_handle_t *handle, uint16_t size)
set offset y
uint8_t ov2640_set_aec_enable(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable aec enable
uint8_t ov2640_set_vertical_size(ov2640_handle_t *handle, uint16_t size)
set vertical size
uint8_t ov2640_set_awb_gain(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable awb gain
uint8_t ov2640_get_byte_swap(ov2640_handle_t *handle, ov2640_byte_swap_t *byte_swap)
get byte swap
uint8_t ov2640_set_cip(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable cip
uint8_t ov2640_set_vfirst(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable vfirst
uint8_t ov2640_set_output_width(ov2640_handle_t *handle, uint16_t size)
set output width
ov2640_dvp_output_format_t
ov2640 dvp output format enumeration definition
uint8_t ov2640_get_sde(ov2640_handle_t *handle, ov2640_bool_t *enable)
get sde status
uint8_t ov2640_set_rgb(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable rgb
uint8_t ov2640_set_pre(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable pre
uint8_t ov2640_get_quantization_scale_factor(ov2640_handle_t *handle, uint8_t *factor)
get quantization scale factor
uint8_t ov2640_set_sccb_protocol_command(ov2640_handle_t *handle, uint8_t cmd)
set sccb protocol command
uint8_t ov2640_get_wpc(ov2640_handle_t *handle, ov2640_bool_t *enable)
get wpc status
uint8_t ov2640_get_yuv(ov2640_handle_t *handle, ov2640_bool_t *enable)
get yuv status
uint8_t ov2640_set_dg(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable dg
uint8_t ov2640_get_image_vertical(ov2640_handle_t *handle, uint16_t *size)
get image vertical
uint8_t ov2640_get_offset_x(ov2640_handle_t *handle, uint16_t *size)
get offset x
uint8_t ov2640_set_uv_avg(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable uv avg
uint8_t ov2640_get_aec_sel(ov2640_handle_t *handle, ov2640_bool_t *enable)
get aec sel status
uint8_t ov2640_get_sensor_pass_through_access(ov2640_handle_t *handle, ov2640_bool_t *enable)
get sensor pass through access status
uint8_t ov2640_get_dmy(ov2640_handle_t *handle, ov2640_bool_t *enable)
get dmy status
uint8_t ov2640_set_dvp_y8(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable dvp y8
uint8_t ov2640_set_sde(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable sde
uint8_t ov2640_set_sccb_master_access(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable sccb master access
uint8_t ov2640_get_cmx(ov2640_handle_t *handle, ov2640_bool_t *enable)
get cmx status
uint8_t ov2640_get_dvp_y8(ov2640_handle_t *handle, ov2640_bool_t *enable)
get dvp y8 status
uint8_t ov2640_set_address_auto_increase(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable address auto increase
uint8_t ov2640_set_round(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable round
uint8_t ov2640_get_dsp_bypass(ov2640_handle_t *handle, ov2640_bool_t *enable)
get dsp bypass status
uint8_t ov2640_get_dg(ov2640_handle_t *handle, ov2640_bool_t *enable)
get dg status
uint8_t ov2640_set_sccb_master_clock_delay(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable sccb master clock delay
uint8_t ov2640_set_sccb(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable sccb
uint8_t ov2640_get_sccb_master_clock_delay(ov2640_handle_t *handle, ov2640_bool_t *enable)
get sccb master clock delay status
uint8_t ov2640_get_stat_sel(ov2640_handle_t *handle, ov2640_bool_t *enable)
get stat sel status
uint8_t ov2640_set_lp_dp(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable lp dp
uint8_t ov2640_set_horizontal_divider(ov2640_handle_t *handle, uint8_t divider)
set horizontal divider
uint8_t ov2640_get_raw_gma(ov2640_handle_t *handle, ov2640_bool_t *enable)
get raw gma status
uint8_t ov2640_set_dvp_pclk(ov2640_handle_t *handle, uint8_t pclk)
set dvp pclk
uint8_t ov2640_get_lp_dp(ov2640_handle_t *handle, ov2640_bool_t *enable)
get lp dp status
uint8_t ov2640_set_bist(ov2640_handle_t *handle, ov2640_bist_t bist, ov2640_bool_t enable)
enable or disable bist
uint8_t ov2640_get_sde_indirect_register_address(ov2640_handle_t *handle, uint8_t *addr)
get sde indirect register address
uint8_t ov2640_get_vertical_divider(ov2640_handle_t *handle, uint8_t *divider)
get vertical divider
uint8_t ov2640_get_output_width(ov2640_handle_t *handle, uint16_t *size)
get output width
uint8_t ov2640_get_sccb_master_access(ov2640_handle_t *handle, ov2640_bool_t *enable)
get sccb master access status
uint8_t ov2640_set_program_memory_pointer_address(ov2640_handle_t *handle, uint16_t addr)
set program memory pointer address
uint8_t ov2640_set_raw(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable raw
uint8_t ov2640_set_yuv422(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable yuv422
uint8_t ov2640_set_uv_adj(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable uv adj
uint8_t ov2640_set_dp_selx(ov2640_handle_t *handle, uint8_t size)
set dp selx
uint8_t ov2640_get_sccb_protocol_command(ov2640_handle_t *handle, uint8_t *cmd)
get sccb protocol command
uint8_t ov2640_get_jpeg_output(ov2640_handle_t *handle, ov2640_bool_t *enable)
get jpeg output status
uint8_t ov2640_set_quantization_scale_factor(ov2640_handle_t *handle, uint8_t factor)
set quantization scale factor
uint8_t ov2640_set_horizontal_size(ov2640_handle_t *handle, uint16_t size)
set horizontal size
uint8_t ov2640_get_uv_avg(ov2640_handle_t *handle, ov2640_bool_t *enable)
get uv avg status
uint8_t ov2640_set_vertical_divider(ov2640_handle_t *handle, uint8_t divider)
set vertical divider
uint8_t ov2640_set_raw_gma(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable raw gma
uint8_t ov2640_set_stat_sel(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable stat sel
uint8_t ov2640_set_sensor_pass_through_access(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable sensor pass through access
uint8_t ov2640_get_output_height(ov2640_handle_t *handle, uint16_t *size)
get output height
ov2640_byte_swap_t
ov2640 byte sawp enumeration definition
uint8_t ov2640_set_output_height(ov2640_handle_t *handle, uint16_t size)
set output height
uint8_t ov2640_get_sccb_protocol_status(ov2640_handle_t *handle, uint8_t *status)
get sccb protocol status
uint8_t ov2640_get_vertical_size(ov2640_handle_t *handle, uint16_t *size)
get vertical size
uint8_t ov2640_set_reset(ov2640_handle_t *handle, ov2640_reset_t type, ov2640_bool_t enable)
enable or disable reset
uint8_t ov2640_set_image_horizontal(ov2640_handle_t *handle, uint16_t size)
set image horizontal
uint8_t ov2640_set_cmx(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable cmx
uint8_t ov2640_get_raw(ov2640_handle_t *handle, ov2640_bool_t *enable)
get raw status
uint8_t ov2640_get_image_horizontal(ov2640_handle_t *handle, uint16_t *size)
get image horizontal
uint8_t ov2640_set_bpc(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable bpc
uint8_t ov2640_get_sccb(ov2640_handle_t *handle, ov2640_bool_t *enable)
get sccb status
uint8_t ov2640_get_program_memory_pointer_access_address(ov2640_handle_t *handle, uint8_t *addr)
get program memory pointer access address
uint8_t ov2640_get_address_auto_increase(ov2640_handle_t *handle, ov2640_bool_t *enable)
get address auto increase status
uint8_t ov2640_set_byte_swap(ov2640_handle_t *handle, ov2640_byte_swap_t byte_swap)
set byte swap
uint8_t ov2640_get_zoom_speed(ov2640_handle_t *handle, uint8_t *speed)
get zoom speed
uint8_t ov2640_get_dcw(ov2640_handle_t *handle, ov2640_bool_t *enable)
get dcw status
uint8_t ov2640_get_round(ov2640_handle_t *handle, ov2640_bool_t *enable)
get round status
uint8_t ov2640_get_lenc(ov2640_handle_t *handle, ov2640_bool_t *enable)
get lenc status
uint8_t ov2640_set_zoom_speed(ov2640_handle_t *handle, uint8_t speed)
set zoom speed
ov2640_href_timing_t
ov2640 href timing enumeration definition
uint8_t ov2640_get_rgb(ov2640_handle_t *handle, ov2640_bool_t *enable)
get rgb status
uint8_t ov2640_set_dvp_jpeg_output_href_timing(ov2640_handle_t *handle, ov2640_href_timing_t timing)
set dvp jpeg output href timing
uint8_t ov2640_get_reset(ov2640_handle_t *handle, ov2640_reset_t type, ov2640_bool_t *enable)
get reset status
uint8_t ov2640_set_aec_sel(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable aec sel
uint8_t ov2640_set_awb(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable awb
uint8_t ov2640_set_offset_x(ov2640_handle_t *handle, uint16_t size)
set offset x
uint8_t ov2640_get_pre(ov2640_handle_t *handle, ov2640_bool_t *enable)
get pre status
uint8_t ov2640_set_sde_indirect_register_data(ov2640_handle_t *handle, uint8_t data)
set sde indirect register data
uint8_t ov2640_set_jpeg_output(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable jpeg output
uint8_t ov2640_get_sde_indirect_register_data(ov2640_handle_t *handle, uint8_t *data)
get sde indirect register data
uint8_t ov2640_set_sde_indirect_register_address(ov2640_handle_t *handle, uint8_t addr)
set sde indirect register address
uint8_t ov2640_set_image_vertical(ov2640_handle_t *handle, uint16_t size)
set image vertical
uint8_t ov2640_get_sccb_slave_id(ov2640_handle_t *handle, uint8_t *id)
get sccb slave id
uint8_t ov2640_get_bist(ov2640_handle_t *handle, ov2640_bist_t bist, ov2640_bool_t *enable)
get bist status
uint8_t ov2640_set_lenc(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable lenc
uint8_t ov2640_get_program_memory_pointer_address(ov2640_handle_t *handle, uint16_t *addr)
get program memory pointer address
uint8_t ov2640_get_uv_adj(ov2640_handle_t *handle, ov2640_bool_t *enable)
get uv adj status
uint8_t ov2640_set_dsp_bypass(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable dsp bypass
uint8_t ov2640_get_dvp_jpeg_output_href_timing(ov2640_handle_t *handle, ov2640_href_timing_t *timing)
get dvp jpeg output href timing
uint8_t ov2640_get_vfirst(ov2640_handle_t *handle, ov2640_bool_t *enable)
get vfirst status
uint8_t ov2640_get_horizontal_divider(ov2640_handle_t *handle, uint8_t *divider)
get horizontal divider
uint8_t ov2640_get_dvp_pclk(ov2640_handle_t *handle, uint8_t *pclk)
get dvp pclk
uint8_t ov2640_get_yuv422(ov2640_handle_t *handle, ov2640_bool_t *enable)
get yuv422 status
uint8_t ov2640_get_cip(ov2640_handle_t *handle, ov2640_bool_t *enable)
get cip status
uint8_t ov2640_get_dp_selx(ov2640_handle_t *handle, uint8_t *size)
get dp selx
uint8_t ov2640_set_auto_mode(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable auto_mode
uint8_t ov2640_set_sccb_slave_id(ov2640_handle_t *handle, uint8_t id)
set sccb slave id
uint8_t ov2640_get_bpc(ov2640_handle_t *handle, ov2640_bool_t *enable)
get bpc status
uint8_t ov2640_get_horizontal_size(ov2640_handle_t *handle, uint16_t *size)
get horizontal size
uint8_t ov2640_set_wpc(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable wpc
uint8_t ov2640_set_yuv(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable yuv
uint8_t ov2640_get_auto_mode(ov2640_handle_t *handle, ov2640_bool_t *enable)
get auto mode status
uint8_t ov2640_get_sccb_master_speed(ov2640_handle_t *handle, uint8_t *speed)
get sccb master speed
uint8_t ov2640_get_dvp_output_format(ov2640_handle_t *handle, ov2640_dvp_output_format_t *format)
get dvp output format
uint8_t ov2640_get_awb_gain(ov2640_handle_t *handle, ov2640_bool_t *enable)
get awb gain status
uint8_t ov2640_set_program_memory_pointer_access_address(ov2640_handle_t *handle, uint8_t addr)
set program memory pointer access address
uint8_t ov2640_set_sccb_master_speed(ov2640_handle_t *handle, uint8_t speed)
set sccb master speed
uint8_t ov2640_set_dmy(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable dmy
uint8_t ov2640_get_aec_enable(ov2640_handle_t *handle, ov2640_bool_t *enable)
get aec enable status
uint8_t ov2640_set_sccb_protocol_status(ov2640_handle_t *handle, uint8_t status)
set sccb protocol status
uint8_t ov2640_set_dcw(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable dcw
uint8_t ov2640_set_dvp_output_format(ov2640_handle_t *handle, ov2640_dvp_output_format_t format)
set dvp output format
uint8_t ov2640_set_dp_sely(ov2640_handle_t *handle, uint8_t size)
set dp sely
uint8_t ov2640_get_offset_y(ov2640_handle_t *handle, uint16_t *size)
get offset y
uint8_t ov2640_get_dp_sely(ov2640_handle_t *handle, uint8_t *size)
get dp sely
@ OV2640_DVP_OUTPUT_FORMAT_YUV422
@ OV2640_DVP_OUTPUT_FORMAT_RGB565
@ OV2640_DVP_OUTPUT_FORMAT_RAW10
@ OV2640_BIST_RW_1_ERROR_512_BYTE
@ OV2640_BIST_RW_1_ERROR_12K_BYTE
@ OV2640_BIST_RW_0_ERROR_12K_BYTE
@ OV2640_BIST_BUSY_OR_SHOT_RESET
@ OV2640_BIST_MICROCONTROLLER_RESET
@ OV2640_BIST_RW_0_ERROR_512_BYTE
@ OV2640_RESET_MICROCONTROLLER
@ OV2640_HREF_TIMING_VSYNC
@ OV2640_HREF_TIMING_SENSOR
uint8_t ov2640_set_special_effect(ov2640_handle_t *handle, ov2640_special_effect_t effect)
set special effect
uint8_t ov2640_set_light_mode(ov2640_handle_t *handle, ov2640_light_mode_t mode)
set light mode
uint8_t ov2640_set_color_saturation(ov2640_handle_t *handle, ov2640_color_saturation_t color)
set color saturation
uint8_t ov2640_set_contrast(ov2640_handle_t *handle, ov2640_contrast_t contrast)
set contrast
uint8_t ov2640_set_brightness(ov2640_handle_t *handle, ov2640_brightness_t brightness)
set brightness
@ OV2640_SPECIAL_EFFECT_ANTIQUE
@ OV2640_SPECIAL_EFFECT_BW_NEGATIVE
@ OV2640_SPECIAL_EFFECT_GREENISH
@ OV2640_SPECIAL_EFFECT_BLUISH
@ OV2640_SPECIAL_EFFECT_REDDISH
@ OV2640_SPECIAL_EFFECT_NEGATIVE
@ OV2640_SPECIAL_EFFECT_NORMAL
@ OV2640_SPECIAL_EFFECT_BW
@ OV2640_CONTRAST_POSITIVE_1
@ OV2640_CONTRAST_NEGATIVE_1
@ OV2640_CONTRAST_POSITIVE_2
@ OV2640_CONTRAST_NEGATIVE_2
@ OV2640_BRIGHTNESS_NEGATIVE_1
@ OV2640_BRIGHTNESS_NEGATIVE_2
@ OV2640_BRIGHTNESS_POSITIVE_2
@ OV2640_BRIGHTNESS_POSITIVE_1
@ OV2640_COLOR_SATURATION_NEGATIVE_1
@ OV2640_COLOR_SATURATION_POSITIVE_2
@ OV2640_COLOR_SATURATION_POSITIVE_1
@ OV2640_COLOR_SATURATION_0
@ OV2640_COLOR_SATURATION_NEGATIVE_2
@ OV2640_LIGHT_MODE_OFFICE
@ OV2640_LIGHT_MODE_CLOUDY
@ OV2640_LIGHT_MODE_SUNNY
uint8_t ov2640_interface_sccb_deinit(void)
interface sccb bus deinit
uint8_t ov2640_interface_reset_init(void)
interface reset init
uint8_t ov2640_interface_power_down_deinit(void)
interface power down deinit
void ov2640_interface_debug_print(const char *const fmt,...)
interface print format data
uint8_t ov2640_interface_power_down_write(uint8_t level)
interface power down write
uint8_t ov2640_interface_power_down_init(void)
interface power down init
void ov2640_interface_delay_ms(uint32_t ms)
interface delay ms
uint8_t ov2640_interface_sccb_read(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
interface sccb bus read
uint8_t ov2640_interface_reset_deinit(void)
interface reset deinit
uint8_t ov2640_interface_sccb_write(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
interface sccb bus write
uint8_t ov2640_interface_sccb_init(void)
interface sccb bus init
uint8_t ov2640_interface_reset_write(uint8_t level)
interface reset write
#define DRIVER_OV2640_LINK_POWER_DOWN_INIT(HANDLE, FUC)
link power_down_init function
#define DRIVER_OV2640_LINK_POWER_DOWN_WRITE(HANDLE, FUC)
link power_down_write function
#define DRIVER_OV2640_LINK_INIT(HANDLE, STRUCTURE)
initialize ov2640_handle_t structure
#define DRIVER_OV2640_LINK_SCCB_INIT(HANDLE, FUC)
link sccb_init function
#define DRIVER_OV2640_LINK_POWER_DOWN_DEINIT(HANDLE, FUC)
link power_down_deinit function
#define DRIVER_OV2640_LINK_DELAY_MS(HANDLE, FUC)
link delay_ms function
#define DRIVER_OV2640_LINK_SCCB_READ(HANDLE, FUC)
link sccb_read function
#define DRIVER_OV2640_LINK_SCCB_WRITE(HANDLE, FUC)
link sccb_write function
#define DRIVER_OV2640_LINK_RESET_WRITE(HANDLE, FUC)
link reset_write function
#define DRIVER_OV2640_LINK_SCCB_DEINIT(HANDLE, FUC)
link sccb_deinit function
#define DRIVER_OV2640_LINK_RESET_DEINIT(HANDLE, FUC)
link reset_deinit function
#define DRIVER_OV2640_LINK_RESET_INIT(HANDLE, FUC)
link reset_init function
#define DRIVER_OV2640_LINK_DEBUG_PRINT(HANDLE, FUC)
link debug_print function
uint8_t ov2640_get_power_reset_pin_remap(ov2640_handle_t *handle, ov2640_bool_t *enable)
get power reset pin remap status
uint8_t ov2640_get_line_interval_adjust(ov2640_handle_t *handle, uint16_t *adjust)
get line interval adjust
uint8_t ov2640_get_luminance_signal_high_range(ov2640_handle_t *handle, uint8_t *range)
get luminance signal high range
uint8_t ov2640_set_vertical_flip(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable vertical flip
ov2640_edge_t
ov2640 edge enumeration definition
uint8_t ov2640_get_hsync_position_and_width_end_point(ov2640_handle_t *handle, uint16_t *position)
get hsync position and width end point
uint8_t ov2640_get_agc_gain(ov2640_handle_t *handle, uint16_t *gain)
get agc gain
uint8_t ov2640_get_luminance_average(ov2640_handle_t *handle, uint8_t *average)
get luminance average
uint8_t ov2640_set_hsync_polarity(ov2640_handle_t *handle, ov2640_polarity_t polarity)
set hsync polarity
uint8_t ov2640_set_60hz_banding_aec(ov2640_handle_t *handle, uint16_t aec)
set 60hz banding aec
uint8_t ov2640_set_horizontal_window_end(ov2640_handle_t *handle, uint16_t end)
set horizontal window end
uint8_t ov2640_set_mode(ov2640_handle_t *handle, ov2640_mode_t mode)
set mode
uint8_t ov2640_get_16_zone_average_weight_option(ov2640_handle_t *handle, uint32_t *avg)
get 16 zone average weight option
uint8_t ov2640_get_band_filter(ov2640_handle_t *handle, ov2640_bool_t *enable)
get band filter status
uint8_t ov2640_get_href_chsync_swap(ov2640_handle_t *handle, ov2640_bool_t *enable)
get href chsync swap status
uint8_t ov2640_set_frame_length_adjustment(ov2640_handle_t *handle, uint16_t frame)
set frame length adjustment
ov2640_resolution_t
ov2640 resolution enumeration definition
struct ov2640_info_s ov2640_info_t
ov2640 information structure definition
uint8_t ov2640_set_hsync_position_and_width_end_point(ov2640_handle_t *handle, uint16_t position)
set hsync position and width end point
uint8_t ov2640_set_clock_rate_double(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable double clock rate
uint8_t ov2640_set_href_chsync_swap(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable href chsync swap
uint8_t ov2640_set_pclk(ov2640_handle_t *handle, ov2640_pclk_t pclk)
set pclk
uint8_t ov2640_get_clock_divider(ov2640_handle_t *handle, uint8_t *divider)
get clock divider
uint8_t ov2640_deinit(ov2640_handle_t *handle)
close the chip
ov2640_agc_gain_t
ov2640 agc gain enumeration definition
uint8_t ov2640_set_output_drive(ov2640_handle_t *handle, ov2640_output_drive_t select)
set output drive
uint8_t ov2640_set_flash_light(ov2640_handle_t *handle, uint8_t control)
set flash light
uint8_t ov2640_get_histogram_algorithm_high_level(ov2640_handle_t *handle, uint8_t *level)
get histogram algorithm high level
uint8_t ov2640_get_frame_length_adjustment(ov2640_handle_t *handle, uint16_t *frame)
get frame length adjustment
uint8_t ov2640_get_horizontal_window_start(ov2640_handle_t *handle, uint16_t *start)
get horizontal window start
uint8_t ov2640_set_vertical_window_line_start(ov2640_handle_t *handle, uint16_t start)
set vertical window line start
uint8_t ov2640_get_luminance_signal_low_range(ov2640_handle_t *handle, uint8_t *range)
get luminance signal low range
uint8_t ov2640_set_zoom(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable zoom
uint8_t ov2640_get_zoom_mode_vertical_window_start_point(ov2640_handle_t *handle, uint16_t *point)
get zoom mode vertical window start point
uint8_t ov2640_set_vertical_window_line_end(ov2640_handle_t *handle, uint16_t end)
set vertical window line end
uint8_t ov2640_get_resolution(ov2640_handle_t *handle, ov2640_resolution_t *resolution)
get resolution
ov2640_pin_status_t
ov2640 pin status enumeration definition
uint8_t ov2640_get_pclk(ov2640_handle_t *handle, ov2640_pclk_t *pclk)
get pclk
uint8_t ov2640_set_live_video_after_snapshot(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable live video after snapshot
uint8_t ov2640_get_zoom_window_horizontal_start_point(ov2640_handle_t *handle, ov2640_bool_t *enable)
get zoom window horizontal start point status
uint8_t ov2640_get_output_drive(ov2640_handle_t *handle, ov2640_output_drive_t *select)
get output drive
uint8_t ov2640_set_pclk_edge(ov2640_handle_t *handle, ov2640_edge_t edge)
set pclk edge
uint8_t ov2640_get_fast_mode_large_step_range(ov2640_handle_t *handle, uint8_t *high_threshold, uint8_t *low_threshold)
get fast mode large step range
uint8_t ov2640_set_band(ov2640_handle_t *handle, ov2640_band_t band)
set band
ov2640_control_t
ov2640 control enumeration definition
uint8_t ov2640_set_aec(ov2640_handle_t *handle, uint16_t aec)
set aec
uint8_t ov2640_info(ov2640_info_t *info)
get chip's information
uint8_t ov2640_set_clock_output_power_down_pin_status(ov2640_handle_t *handle, ov2640_pin_status_t status)
set clock output power down pin status
uint8_t ov2640_get_vertical_window_line_start(ov2640_handle_t *handle, uint16_t *start)
get vertical window line start
uint8_t ov2640_get_60hz_banding_aec(ov2640_handle_t *handle, uint16_t *aec)
get 60hz banding aec
uint8_t ov2640_set_line_interval_adjust(ov2640_handle_t *handle, uint16_t adjust)
set line interval adjust
uint8_t ov2640_set_pclk_output_qualified_by_href(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable pclk output qualified by href
uint8_t ov2640_set_auto_band(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable auto band
uint8_t ov2640_get_horizontal_window_end(ov2640_handle_t *handle, uint16_t *end)
get horizontal window end
uint8_t ov2640_set_zoom_mode_vertical_window_start_point(ov2640_handle_t *handle, uint16_t point)
set zoom mode vertical window start point
uint8_t ov2640_get_vsync_polarity(ov2640_handle_t *handle, ov2640_polarity_t *polarity)
get vsync polarity
uint8_t ov2640_get_chsync_href_swap(ov2640_handle_t *handle, ov2640_bool_t *enable)
get chsync href swap status
uint8_t ov2640_set_exposure_control(ov2640_handle_t *handle, ov2640_control_t control)
set exposure control
uint8_t ov2640_set_luminance_signal_low_range(ov2640_handle_t *handle, uint8_t range)
set luminance signal low range
uint8_t ov2640_get_frame_exposure_pre_charge_row_number(ov2640_handle_t *handle, uint8_t *num)
get frame exposure pre charge row number
uint8_t ov2640_get_flash_light(ov2640_handle_t *handle, uint8_t *control)
get flash light
uint8_t ov2640_get_aec(ov2640_handle_t *handle, uint16_t *aec)
get aec
uint8_t ov2640_set_dummy_frame(ov2640_handle_t *handle, ov2640_dummy_frame_t frame)
set dummy frame
uint8_t ov2640_get_hsync_position_and_width_start_point(ov2640_handle_t *handle, uint16_t *position)
get hsync position and width start point
uint8_t ov2640_set_16_zone_average_weight_option(ov2640_handle_t *handle, uint32_t avg)
set 16 zone average weight option
uint8_t ov2640_set_color_bar_test(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable color bar test
uint8_t ov2640_get_vsync_pulse_width(ov2640_handle_t *handle, uint16_t *width)
get vsync pulse width
ov2640_bool_t
ov2640 bool enumeration definition
ov2640_output_drive_t
ov2640 output drive enumeration definition
uint8_t ov2640_set_chsync_href_swap(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable chsync href swap
struct ov2640_handle_s ov2640_handle_t
ov2640 handle structure definition
uint8_t ov2640_set_frame_exposure_pre_charge_row_number(ov2640_handle_t *handle, uint8_t num)
set frame exposure pre charge row number
uint8_t ov2640_get_hsync_polarity(ov2640_handle_t *handle, ov2640_polarity_t *polarity)
get hsync polarity
uint8_t ov2640_set_50hz_banding_aec(ov2640_handle_t *handle, uint16_t aec)
set 50hz banding aec
uint8_t ov2640_get_agc_control(ov2640_handle_t *handle, ov2640_control_t *control)
get agc control
uint8_t ov2640_set_resolution(ov2640_handle_t *handle, ov2640_resolution_t resolution)
set resolution
uint8_t ov2640_init(ov2640_handle_t *handle)
initialize the chip
uint8_t ov2640_set_clock_divider(ov2640_handle_t *handle, uint8_t divider)
set clock divider
ov2640_mode_t
ov2640 mode enumeration definition
uint8_t ov2640_set_fast_mode_large_step_range(ov2640_handle_t *handle, uint8_t high_threshold, uint8_t low_threshold)
set fast mode large step range
uint8_t ov2640_set_agc_gain_ceiling(ov2640_handle_t *handle, ov2640_agc_gain_t agc)
set agc
uint8_t ov2640_get_pclk_edge(ov2640_handle_t *handle, ov2640_edge_t *edge)
get pclk edge
uint8_t ov2640_set_horizontal_mirror(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable horizontal mirror
uint8_t ov2640_get_zoom(ov2640_handle_t *handle, ov2640_bool_t *enable)
get zoom status
uint8_t ov2640_get_exposure_control(ov2640_handle_t *handle, ov2640_control_t *control)
get exposure control
uint8_t ov2640_set_vsync_polarity(ov2640_handle_t *handle, ov2640_polarity_t polarity)
set vsync polarity
uint8_t ov2640_get_vertical_flip(ov2640_handle_t *handle, ov2640_bool_t *enable)
get vertical flip status
uint8_t ov2640_set_agc_control(ov2640_handle_t *handle, ov2640_control_t control)
set agc control
uint8_t ov2640_get_auto_band(ov2640_handle_t *handle, ov2640_bool_t *enable)
get auto band status
uint8_t ov2640_set_histogram_algorithm_high_level(ov2640_handle_t *handle, uint8_t level)
set histogram algorithm high level
uint8_t ov2640_set_band_filter(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable band filter
uint8_t ov2640_get_histogram_algorithm_low_level(ov2640_handle_t *handle, uint8_t *level)
get histogram algorithm low level
uint8_t ov2640_get_clock_output_power_down_pin_status(ov2640_handle_t *handle, ov2640_pin_status_t *status)
get clock output power down pin status
uint8_t ov2640_get_pclk_output_qualified_by_href(ov2640_handle_t *handle, ov2640_bool_t *enable)
get pclk output qualified by href status
ov2640_polarity_t
ov2640 polarity enumeration definition
uint8_t ov2640_get_mode(ov2640_handle_t *handle, ov2640_mode_t *mode)
get mode
ov2640_band_t
ov2640 band enumeration definition
uint8_t ov2640_set_luminance_signal_high_range(ov2640_handle_t *handle, uint8_t range)
set luminance signal high range
uint8_t ov2640_set_luminance_average(ov2640_handle_t *handle, uint8_t average)
set luminance average
uint8_t ov2640_get_50hz_banding_aec(ov2640_handle_t *handle, uint16_t *aec)
get 50hz banding aec
uint8_t ov2640_get_horizontal_mirror(ov2640_handle_t *handle, ov2640_bool_t *enable)
get horizontal mirror status
uint8_t ov2640_set_horizontal_window_start(ov2640_handle_t *handle, uint16_t start)
set horizontal window start
uint8_t ov2640_get_agc_gain_ceiling(ov2640_handle_t *handle, ov2640_agc_gain_t *agc)
get agc
uint8_t ov2640_set_hsync_position_and_width_start_point(ov2640_handle_t *handle, uint16_t position)
set hsync position and width start point
uint8_t ov2640_set_href_polarity(ov2640_handle_t *handle, ov2640_polarity_t polarity)
set href polarity
uint8_t ov2640_get_href_polarity(ov2640_handle_t *handle, ov2640_polarity_t *polarity)
get href polarity
uint8_t ov2640_get_band(ov2640_handle_t *handle, ov2640_band_t *band)
get band
uint8_t ov2640_set_zoom_window_horizontal_start_point(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable zoom window horizontal start point
uint8_t ov2640_set_power_reset_pin_remap(ov2640_handle_t *handle, ov2640_bool_t enable)
enable or disable power reset pin remap
uint8_t ov2640_set_agc_gain(ov2640_handle_t *handle, uint16_t gain)
set agc gain
uint8_t ov2640_soft_reset(ov2640_handle_t *handle)
soft reset
uint8_t ov2640_get_live_video_after_snapshot(ov2640_handle_t *handle, ov2640_bool_t *enable)
get live video after snapshot status
uint8_t ov2640_set_histogram_algorithm_low_level(ov2640_handle_t *handle, uint8_t level)
set histogram algorithm low level
uint8_t ov2640_get_color_bar_test(ov2640_handle_t *handle, ov2640_bool_t *enable)
get color bar test status
ov2640_pclk_t
ov2640 pclk enumeration definition
uint8_t ov2640_get_dummy_frame(ov2640_handle_t *handle, ov2640_dummy_frame_t *frame)
get dummy frame
ov2640_dummy_frame_t
ov2640 dummy frame enumeration definition
uint8_t ov2640_set_vsync_pulse_width(ov2640_handle_t *handle, uint16_t width)
set vsync pulse width
uint8_t ov2640_get_vertical_window_line_end(ov2640_handle_t *handle, uint16_t *end)
get vertical window line end
uint8_t ov2640_get_clock_rate_double(ov2640_handle_t *handle, ov2640_bool_t *enable)
get clock rate double status
@ OV2640_PIN_STATUS_LAST_STATE
@ OV2640_PIN_STATUS_TRI_STATE
@ OV2640_OUTPUT_DRIVE_3_CAPABILITY
@ OV2640_OUTPUT_DRIVE_1_CAPABILITY
@ OV2640_OUTPUT_DRIVE_2_CAPABILITY
@ OV2640_OUTPUT_DRIVE_4_CAPABILITY
@ OV2640_POLARITY_NEGATIVE
@ OV2640_POLARITY_POSITIVE
uint8_t ov2640_register_test(void)
register test
float supply_voltage_max_v
char manufacturer_name[32]
float supply_voltage_min_v