30typedef enum : uint16_t {
34typedef enum : uint8_t {
40typedef enum : uint8_t {
46typedef enum : uint8_t {
167 uint8_t quant_scale);
Error Code Definitions for ra8-firmware.
ra8_err_codes_t ra8_err_t
Canonical error-return type used by every ra8-firmware API.
ra8_err_t ra8_ov5640_read_reg(ra8_ov5640_t *dev, uint16_t reg, uint8_t *out_value)
Read one sensor register through the bound transport.
ra8_ov5640_id_t
OV5640 identity and SCCB address constants.
@ k_ra8_ov5640_chip_id
Expected combined chip identifier.
ra8_err_t ra8_ov5640_write_reg(ra8_ov5640_t *dev, uint16_t reg, uint8_t value)
Write one sensor register through the bound transport.
ra8_err_t(* ra8_ov5640_read_fn_t)(void *ctx, uint8_t address, uint16_t reg, uint8_t *out_value)
ra8_err_t ra8_ov5640_stream_set(ra8_ov5640_t *dev, bool enabled)
Enter software standby or resume sensor streaming.
ra8_err_t ra8_ov5640_configure(ra8_ov5640_t *dev, ra8_ov5640_mode_t mode)
Software-reset and program one validated output mode.
ra8_err_t ra8_ov5640_jpeg_status_get(ra8_ov5640_t *dev, ra8_ov5640_jpeg_status_t *out_status)
Snapshot sensor JPEG length, overflow, and routing controls.
ra8_err_t ra8_ov5640_probe(ra8_ov5640_t *dev, uint16_t *out_id)
Probe both legal SCCB addresses and verify chip ID 0x5640.
ra8_ov5640_mode_t
Sensor output modes with validated register tables.
@ k_ra8_ov5640_mode_vga_jpeg
Sensor-encoded VGA JPEG stream.
@ k_ra8_ov5640_mode_vga_uyvy
Packed VGA UYVY DVP stream.
ra8_err_t ra8_ov5640_init(ra8_ov5640_t *dev, const ra8_ov5640_bus_t *bus)
Bind a caller-supplied SCCB transport without touching the sensor.
ra8_err_t ra8_ov5640_set_jpeg_quantization_scale(ra8_ov5640_t *dev, uint8_t quant_scale)
Set the sensor JPEG encoder's raw quantization scale.
ra8_ov5640_jpeg_quant_scale_t
Raw OV5640 JPEG quantization-scale bounds and documented presets.
@ k_ra8_ov5640_jpeg_quant_scale_max
Lowest-quality raw scale.
@ k_ra8_ov5640_jpeg_quant_scale_default
Vendor reset-scale value.
@ k_ra8_ov5640_jpeg_quant_scale_min
Highest-quality raw scale.
void(* ra8_ov5640_delay_fn_t)(void *ctx, uint32_t milliseconds)
ra8_err_t(* ra8_ov5640_write_fn_t)(void *ctx, uint8_t address, uint16_t reg, uint8_t value)
@ k_ra8_ov5640_addr_primary
Default seven-bit SCCB address.
@ k_ra8_ov5640_addr_secondary
Alternate seven-bit SCCB address.
Injected SCCB and time services.
ra8_ov5640_write_fn_t write_reg
Injected single-register write.
ra8_ov5640_delay_fn_t delay_ms
Injected millisecond delay.
void * ctx
Caller-owned transport context.
ra8_ov5640_read_fn_t read_reg
Injected single-register read.
Snapshot of the OV5640 JPEG pipeline and its most recent frame.
uint16_t compression_height
Mode-2 compressed-output height.
uint8_t vfifo_ctrl00
Raw VFIFO mode-2 height control.
uint16_t compression_width
Mode-2 compressed-output width.
bool header_output
JPEG header generation is enabled.
bool compression_enabled
Timing pipeline selects JPEG output.
bool fifo_overflow
JPEG output FIFO overflow indicator.
uint8_t jpeg_ctrl01
Raw JPEG CTRL01 pacing controls.
bool input_is_yuv422
JPEG input format selects YUV422.
uint32_t encoded_bytes
Sensor-reported JPEG payload length.
uint8_t href_minimum_blanking
Raw JPEG HREF blanking control.
Caller-owned sensor instance; supports multiple independent parts.
uint8_t address
Selected seven-bit SCCB address.
bool initialized
Successful binding marker.
ra8_ov5640_bus_t bus
Copied transport callbacks.