pub struct ISP { /* private fields */ }
Expand description
ISP Peripheral
Implementations§
Source§impl ISP
impl ISP
Sourcepub const PTR: *const RegisterBlock = {0x500a1000 as *const isp::RegisterBlock}
pub const PTR: *const RegisterBlock = {0x500a1000 as *const isp::RegisterBlock}
Pointer to the register block
Sourcepub const fn ptr() -> *const RegisterBlock
pub const fn ptr() -> *const RegisterBlock
Return the pointer to the register block
Sourcepub unsafe fn steal() -> Self
pub unsafe fn steal() -> Self
Steal an instance of this peripheral
§Safety
Ensure that the new instance of the peripheral cannot be used in a way that may race with any existing instances, for example by only accessing read-only or write-only registers, or by consuming the original peripheral and using critical sections to coordinate access between multiple new instances.
Additionally, other software such as HALs may rely on only one peripheral instance existing to ensure memory safety; ensure no stolen instances are passed to such software.
Methods from Deref<Target = RegisterBlock>§
Sourcepub fn bf_matrix_ctrl(&self) -> &BF_MATRIX_CTRL
pub fn bf_matrix_ctrl(&self) -> &BF_MATRIX_CTRL
0x28 - bf pix2matrix ctrl
Sourcepub fn dpc_matrix_ctrl(&self) -> &DPC_MATRIX_CTRL
pub fn dpc_matrix_ctrl(&self) -> &DPC_MATRIX_CTRL
0x40 - dpc pix2matrix ctrl
Sourcepub fn dpc_deadpix_cnt(&self) -> &DPC_DEADPIX_CNT
pub fn dpc_deadpix_cnt(&self) -> &DPC_DEADPIX_CNT
0x44 - DPC dead-pix number register
Sourcepub fn lsc_tablesize(&self) -> &LSC_TABLESIZE
pub fn lsc_tablesize(&self) -> &LSC_TABLESIZE
0x54 - LSC point in x-direction
Sourcepub fn demosaic_matrix_ctrl(&self) -> &DEMOSAIC_MATRIX_CTRL
pub fn demosaic_matrix_ctrl(&self) -> &DEMOSAIC_MATRIX_CTRL
0x58 - demosaic pix2matrix ctrl
Sourcepub fn demosaic_grad_ratio(&self) -> &DEMOSAIC_GRAD_RATIO
pub fn demosaic_grad_ratio(&self) -> &DEMOSAIC_GRAD_RATIO
0x5c - demosaic gradient select ratio
Sourcepub fn median_matrix_ctrl(&self) -> &MEDIAN_MATRIX_CTRL
pub fn median_matrix_ctrl(&self) -> &MEDIAN_MATRIX_CTRL
0x60 - median pix2matrix ctrl
Sourcepub fn gamma_ctrl(&self) -> &GAMMA_CTRL
pub fn gamma_ctrl(&self) -> &GAMMA_CTRL
0x74 - gamma control register
Sourcepub fn gamma_ry1(&self) -> &GAMMA_RY1
pub fn gamma_ry1(&self) -> &GAMMA_RY1
0x78 - point of Y-axis of r channel gamma curve register 1
Sourcepub fn gamma_ry2(&self) -> &GAMMA_RY2
pub fn gamma_ry2(&self) -> &GAMMA_RY2
0x7c - point of Y-axis of r channel gamma curve register 2
Sourcepub fn gamma_ry3(&self) -> &GAMMA_RY3
pub fn gamma_ry3(&self) -> &GAMMA_RY3
0x80 - point of Y-axis of r channel gamma curve register 3
Sourcepub fn gamma_ry4(&self) -> &GAMMA_RY4
pub fn gamma_ry4(&self) -> &GAMMA_RY4
0x84 - point of Y-axis of r channel gamma curve register 4
Sourcepub fn gamma_gy1(&self) -> &GAMMA_GY1
pub fn gamma_gy1(&self) -> &GAMMA_GY1
0x88 - point of Y-axis of g channel gamma curve register 1
Sourcepub fn gamma_gy2(&self) -> &GAMMA_GY2
pub fn gamma_gy2(&self) -> &GAMMA_GY2
0x8c - point of Y-axis of g channel gamma curve register 2
Sourcepub fn gamma_gy3(&self) -> &GAMMA_GY3
pub fn gamma_gy3(&self) -> &GAMMA_GY3
0x90 - point of Y-axis of g channel gamma curve register 3
Sourcepub fn gamma_gy4(&self) -> &GAMMA_GY4
pub fn gamma_gy4(&self) -> &GAMMA_GY4
0x94 - point of Y-axis of g channel gamma curve register 4
Sourcepub fn gamma_by1(&self) -> &GAMMA_BY1
pub fn gamma_by1(&self) -> &GAMMA_BY1
0x98 - point of Y-axis of b channel gamma curve register 1
Sourcepub fn gamma_by2(&self) -> &GAMMA_BY2
pub fn gamma_by2(&self) -> &GAMMA_BY2
0x9c - point of Y-axis of b channel gamma curve register 2
Sourcepub fn gamma_by3(&self) -> &GAMMA_BY3
pub fn gamma_by3(&self) -> &GAMMA_BY3
0xa0 - point of Y-axis of b channel gamma curve register 3
Sourcepub fn gamma_by4(&self) -> &GAMMA_BY4
pub fn gamma_by4(&self) -> &GAMMA_BY4
0xa4 - point of Y-axis of b channel gamma curve register 4
Sourcepub fn gamma_rx1(&self) -> &GAMMA_RX1
pub fn gamma_rx1(&self) -> &GAMMA_RX1
0xa8 - point of X-axis of r channel gamma curve register 1
Sourcepub fn gamma_rx2(&self) -> &GAMMA_RX2
pub fn gamma_rx2(&self) -> &GAMMA_RX2
0xac - point of X-axis of r channel gamma curve register 2
Sourcepub fn gamma_gx1(&self) -> &GAMMA_GX1
pub fn gamma_gx1(&self) -> &GAMMA_GX1
0xb0 - point of X-axis of g channel gamma curve register 1
Sourcepub fn gamma_gx2(&self) -> &GAMMA_GX2
pub fn gamma_gx2(&self) -> &GAMMA_GX2
0xb4 - point of X-axis of g channel gamma curve register 2
Sourcepub fn gamma_bx1(&self) -> &GAMMA_BX1
pub fn gamma_bx1(&self) -> &GAMMA_BX1
0xb8 - point of X-axis of b channel gamma curve register 1
Sourcepub fn gamma_bx2(&self) -> &GAMMA_BX2
pub fn gamma_bx2(&self) -> &GAMMA_BX2
0xbc - point of X-axis of b channel gamma curve register 2
Sourcepub fn ae_monitor(&self) -> &AE_MONITOR
pub fn ae_monitor(&self) -> &AE_MONITOR
0xc4 - ae monitor control register
Sourcepub fn ae_winpixnum(&self) -> &AE_WINPIXNUM
pub fn ae_winpixnum(&self) -> &AE_WINPIXNUM
0xd0 - ae sub-window pix num register
Sourcepub fn ae_win_reciprocal(&self) -> &AE_WIN_RECIPROCAL
pub fn ae_win_reciprocal(&self) -> &AE_WIN_RECIPROCAL
0xd4 - reciprocal of ae sub-window pixel number
Sourcepub fn ae_block_mean_0(&self) -> &AE_BLOCK_MEAN_0
pub fn ae_block_mean_0(&self) -> &AE_BLOCK_MEAN_0
0xd8 - ae statistic result register 0
Sourcepub fn ae_block_mean_1(&self) -> &AE_BLOCK_MEAN_1
pub fn ae_block_mean_1(&self) -> &AE_BLOCK_MEAN_1
0xdc - ae statistic result register 1
Sourcepub fn ae_block_mean_2(&self) -> &AE_BLOCK_MEAN_2
pub fn ae_block_mean_2(&self) -> &AE_BLOCK_MEAN_2
0xe0 - ae statistic result register 2
Sourcepub fn ae_block_mean_3(&self) -> &AE_BLOCK_MEAN_3
pub fn ae_block_mean_3(&self) -> &AE_BLOCK_MEAN_3
0xe4 - ae statistic result register 3
Sourcepub fn ae_block_mean_4(&self) -> &AE_BLOCK_MEAN_4
pub fn ae_block_mean_4(&self) -> &AE_BLOCK_MEAN_4
0xe8 - ae statistic result register 4
Sourcepub fn ae_block_mean_5(&self) -> &AE_BLOCK_MEAN_5
pub fn ae_block_mean_5(&self) -> &AE_BLOCK_MEAN_5
0xec - ae statistic result register 5
Sourcepub fn ae_block_mean_6(&self) -> &AE_BLOCK_MEAN_6
pub fn ae_block_mean_6(&self) -> &AE_BLOCK_MEAN_6
0xf0 - ae statistic result register 6
Sourcepub fn sharp_ctrl0(&self) -> &SHARP_CTRL0
pub fn sharp_ctrl0(&self) -> &SHARP_CTRL0
0xf4 - sharp control register 0
Sourcepub fn sharp_filter0(&self) -> &SHARP_FILTER0
pub fn sharp_filter0(&self) -> &SHARP_FILTER0
0xf8 - sharp usm config register 0
Sourcepub fn sharp_filter1(&self) -> &SHARP_FILTER1
pub fn sharp_filter1(&self) -> &SHARP_FILTER1
0xfc - sharp usm config register 1
Sourcepub fn sharp_filter2(&self) -> &SHARP_FILTER2
pub fn sharp_filter2(&self) -> &SHARP_FILTER2
0x100 - sharp usm config register 2
Sourcepub fn sharp_matrix_ctrl(&self) -> &SHARP_MATRIX_CTRL
pub fn sharp_matrix_ctrl(&self) -> &SHARP_MATRIX_CTRL
0x104 - sharp pix2matrix ctrl
Sourcepub fn sharp_ctrl1(&self) -> &SHARP_CTRL1
pub fn sharp_ctrl1(&self) -> &SHARP_CTRL1
0x108 - sharp control register 1
Sourcepub fn dma_raw_data(&self) -> &DMA_RAW_DATA
pub fn dma_raw_data(&self) -> &DMA_RAW_DATA
0x110 - isp dma source total raw number set register
Sourcepub fn af_gen_th_ctrl(&self) -> &AF_GEN_TH_CTRL
pub fn af_gen_th_ctrl(&self) -> &AF_GEN_TH_CTRL
0x124 - af gen threshold control register
Sourcepub fn af_env_user_th_sum(&self) -> &AF_ENV_USER_TH_SUM
pub fn af_env_user_th_sum(&self) -> &AF_ENV_USER_TH_SUM
0x128 - af monitor user sum threshold register
Sourcepub fn af_env_user_th_lum(&self) -> &AF_ENV_USER_TH_LUM
pub fn af_env_user_th_lum(&self) -> &AF_ENV_USER_TH_LUM
0x12c - af monitor user lum threshold register
Sourcepub fn af_threshold(&self) -> &AF_THRESHOLD
pub fn af_threshold(&self) -> &AF_THRESHOLD
0x130 - af threshold register
Sourcepub fn af_hscale_a(&self) -> &AF_HSCALE_A
pub fn af_hscale_a(&self) -> &AF_HSCALE_A
0x134 - h-scale of af window a register
Sourcepub fn af_vscale_a(&self) -> &AF_VSCALE_A
pub fn af_vscale_a(&self) -> &AF_VSCALE_A
0x138 - v-scale of af window a register
Sourcepub fn af_hscale_b(&self) -> &AF_HSCALE_B
pub fn af_hscale_b(&self) -> &AF_HSCALE_B
0x13c - h-scale of af window b register
Sourcepub fn af_vscale_b(&self) -> &AF_VSCALE_B
pub fn af_vscale_b(&self) -> &AF_VSCALE_B
0x140 - v-scale of af window b register
Sourcepub fn af_hscale_c(&self) -> &AF_HSCALE_C
pub fn af_hscale_c(&self) -> &AF_HSCALE_C
0x144 - v-scale of af window c register
Sourcepub fn af_vscale_c(&self) -> &AF_VSCALE_C
pub fn af_vscale_c(&self) -> &AF_VSCALE_C
0x148 - v-scale of af window c register
Sourcepub fn awb_hscale(&self) -> &AWB_HSCALE
pub fn awb_hscale(&self) -> &AWB_HSCALE
0x168 - h-scale of awb window
Sourcepub fn awb_vscale(&self) -> &AWB_VSCALE
pub fn awb_vscale(&self) -> &AWB_VSCALE
0x16c - v-scale of awb window
Sourcepub fn awb_th_lum(&self) -> &AWB_TH_LUM
pub fn awb_th_lum(&self) -> &AWB_TH_LUM
0x170 - awb lum threshold register
Sourcepub fn awb0_white_cnt(&self) -> &AWB0_WHITE_CNT
pub fn awb0_white_cnt(&self) -> &AWB0_WHITE_CNT
0x17c - result of awb white point number
Sourcepub fn awb0_acc_r(&self) -> &AWB0_ACC_R
pub fn awb0_acc_r(&self) -> &AWB0_ACC_R
0x180 - result of accumulate of r channel of all white points
Sourcepub fn awb0_acc_g(&self) -> &AWB0_ACC_G
pub fn awb0_acc_g(&self) -> &AWB0_ACC_G
0x184 - result of accumulate of g channel of all white points
Sourcepub fn awb0_acc_b(&self) -> &AWB0_ACC_B
pub fn awb0_acc_b(&self) -> &AWB0_ACC_B
0x188 - result of accumulate of b channel of all white points
Sourcepub fn color_ctrl(&self) -> &COLOR_CTRL
pub fn color_ctrl(&self) -> &COLOR_CTRL
0x18c - color control register
Sourcepub fn hist_coeff(&self) -> &HIST_COEFF
pub fn hist_coeff(&self) -> &HIST_COEFF
0x1a8 - histogram rgb to gray coefficients register
Sourcepub fn hist_weight0(&self) -> &HIST_WEIGHT0
pub fn hist_weight0(&self) -> &HIST_WEIGHT0
0x1c4 - histogram sub-window weight register 0
Sourcepub fn hist_weight1(&self) -> &HIST_WEIGHT1
pub fn hist_weight1(&self) -> &HIST_WEIGHT1
0x1c8 - histogram sub-window weight register 1
Sourcepub fn hist_weight2(&self) -> &HIST_WEIGHT2
pub fn hist_weight2(&self) -> &HIST_WEIGHT2
0x1cc - histogram sub-window weight register 2
Sourcepub fn hist_weight3(&self) -> &HIST_WEIGHT3
pub fn hist_weight3(&self) -> &HIST_WEIGHT3
0x1d0 - histogram sub-window weight register 3
Sourcepub fn hist_weight4(&self) -> &HIST_WEIGHT4
pub fn hist_weight4(&self) -> &HIST_WEIGHT4
0x1d4 - histogram sub-window weight register 4
Sourcepub fn hist_weight5(&self) -> &HIST_WEIGHT5
pub fn hist_weight5(&self) -> &HIST_WEIGHT5
0x1d8 - histogram sub-window weight register 5
Sourcepub fn hist_weight6(&self) -> &HIST_WEIGHT6
pub fn hist_weight6(&self) -> &HIST_WEIGHT6
0x1dc - histogram sub-window weight register 6
Sourcepub fn hist_bin10(&self) -> &HIST_BIN10
pub fn hist_bin10(&self) -> &HIST_BIN10
0x208 - result of histogram bin 10
Sourcepub fn hist_bin11(&self) -> &HIST_BIN11
pub fn hist_bin11(&self) -> &HIST_BIN11
0x20c - result of histogram bin 11
Sourcepub fn hist_bin12(&self) -> &HIST_BIN12
pub fn hist_bin12(&self) -> &HIST_BIN12
0x210 - result of histogram bin 12
Sourcepub fn hist_bin13(&self) -> &HIST_BIN13
pub fn hist_bin13(&self) -> &HIST_BIN13
0x214 - result of histogram bin 13
Sourcepub fn hist_bin14(&self) -> &HIST_BIN14
pub fn hist_bin14(&self) -> &HIST_BIN14
0x218 - result of histogram bin 14
Sourcepub fn hist_bin15(&self) -> &HIST_BIN15
pub fn hist_bin15(&self) -> &HIST_BIN15
0x21c - result of histogram bin 15
Sourcepub fn mem_aux_ctrl_0(&self) -> &MEM_AUX_CTRL_0
pub fn mem_aux_ctrl_0(&self) -> &MEM_AUX_CTRL_0
0x220 - mem aux control register 0
Sourcepub fn mem_aux_ctrl_1(&self) -> &MEM_AUX_CTRL_1
pub fn mem_aux_ctrl_1(&self) -> &MEM_AUX_CTRL_1
0x224 - mem aux control register 1
Sourcepub fn mem_aux_ctrl_2(&self) -> &MEM_AUX_CTRL_2
pub fn mem_aux_ctrl_2(&self) -> &MEM_AUX_CTRL_2
0x228 - mem aux control register 2
Sourcepub fn mem_aux_ctrl_3(&self) -> &MEM_AUX_CTRL_3
pub fn mem_aux_ctrl_3(&self) -> &MEM_AUX_CTRL_3
0x22c - mem aux control register 3
Sourcepub fn mem_aux_ctrl_4(&self) -> &MEM_AUX_CTRL_4
pub fn mem_aux_ctrl_4(&self) -> &MEM_AUX_CTRL_4
0x230 - mem aux control register 4
Sourcepub fn yuv_format(&self) -> &YUV_FORMAT
pub fn yuv_format(&self) -> &YUV_FORMAT
0x234 - yuv format control register
Sourcepub fn rdn_eco_cs(&self) -> &RDN_ECO_CS
pub fn rdn_eco_cs(&self) -> &RDN_ECO_CS
0x238 - rdn eco cs register
Sourcepub fn rdn_eco_low(&self) -> &RDN_ECO_LOW
pub fn rdn_eco_low(&self) -> &RDN_ECO_LOW
0x23c - rdn eco all low register
Sourcepub fn rdn_eco_high(&self) -> &RDN_ECO_HIGH
pub fn rdn_eco_high(&self) -> &RDN_ECO_HIGH
0x240 - rdn eco all high register