Astra MCU SDK Peripheral Driver Library
General Functions

ADC APIs

adc_status_en adc_init (adc_instance_en id)
 Initialize ADC instance and driver context.
adc_status_en adc_deinit (adc_instance_en id)
 Deinitialize ADC instance and release resources.
adc_status_en adc_config (adc_instance_en id, const adc_config_t *cfg)
 Apply ADC runtime configuration.
adc_status_en adc_select_channel (adc_instance_en id, adc_channel_en channel)
 Select ADC input channel.
adc_status_en adc_enable_interrupt (adc_instance_en id, uint32_t int_flags, bool enable)
 Enable or disable ADC interrupts.
adc_status_en adc_get_interrupt_status (adc_instance_en id, uint32_t *status)
 Read ADC interrupt/status flags.
adc_status_en adc_enable (adc_instance_en id)
 Enable ADC hardware block.
adc_status_en adc_disable (adc_instance_en id)
 Disable ADC hardware block.
adc_status_en adc_start_conversion (adc_instance_en id)
 Trigger ADC conversion sequence.
adc_status_en adc_read (adc_instance_en id, uint16_t *result)
 Read latest ADC conversion result.
adc_status_en adc_register_callback (adc_instance_en id, adc_event_cb_t cb, void *user_data)
 Register ADC ISR callback.
adc_status_en adc_bist_configure (adc_instance_en id, const adc_bist_config_t *cfg)
 Configure ADC BIST parameters.
adc_status_en adc_bist_start (adc_instance_en id)
 Start ADC BIST sequence.
adc_status_en adc_bist_get_status (adc_instance_en id, bool *done, bool *fail)
 Poll ADC BIST completion and fail status.

adc_init()

Initializes ADC hardware for the selected instance.

Parameters:

Return: adc_status_en status code.

Return values:

adc_deinit()

Deinitializes ADC hardware and clears driver state.

Parameters:

Return: adc_status_en status code.

Return values:

adc_config()

Programs conversion mode/type, clock divider, latency, and thresholds.

Parameters:

  • id: adc_instance_en instance identifier.
  • cfg: Pointer to ADC runtime configuration.

Return: adc_status_en status code.

Return values:

adc_select_channel()

Selects channel CH0..CH7 for subsequent conversions.

Parameters:

  • id: adc_instance_en instance identifier.
  • channel: ADC input channel to select.

Return: adc_status_en status code.

Return values:

adc_enable_interrupt()

Configures interrupt enable state for ADC_INT_* flags.

Parameters:

  • id: adc_instance_en instance identifier.
  • int_flags: Bitmask of interrupt flags to update.
  • enable: true to enable, false to disable selected interrupt flags.

Return: adc_status_en status code.

Return values:

adc_get_interrupt_status()

Returns ADC status register bits to the caller.

Parameters:

  • id: adc_instance_en instance identifier.
  • status: Pointer to receive ADC status bitmask.

Return: adc_status_en status code.

Return values:

adc_enable()

Enables the ADC analog/digital control path.

Parameters:

Return: adc_status_en status code.

Return values:

adc_disable()

Disables ADC and places block in low-power state.

Parameters:

Return: adc_status_en status code.

Return values:

adc_start_conversion()

Starts single/continuous/window conversion flow.

Parameters:

Return: adc_status_en status code.

Return values:

adc_read()

Reads 12-bit conversion value from ADC data register.

Parameters:

  • id: adc_instance_en instance identifier.
  • result: Pointer to receive 12-bit conversion result.

Return: adc_status_en status code.

Return values:

adc_register_callback()

Registers user callback invoked from ADC ISR context.

Parameters:

  • id: adc_instance_en instance identifier.
  • cb: Callback function, or NULL to unregister.
  • user_data: User context pointer passed to callback.

Return: adc_status_en status code.

Return values:

adc_bist_configure()

Configures BIST min/max reference values.

Parameters:

  • id: adc_instance_en instance identifier.
  • cfg: Pointer to BIST configuration structure.

Return: adc_status_en status code.

Return values:

adc_bist_start()

Triggers ADC built-in self-test execution.

Parameters:

Return: adc_status_en status code.

Return values:

adc_bist_get_status()

Reads BIST done/fail indicators.

Parameters:

  • id: adc_instance_en instance identifier.
  • done: Pointer to receive completion flag.
  • fail: Pointer to receive failure flag.

Return: adc_status_en status code.

Return values: