File syn_adc.c¶
FileList > drivers > syn_adc.c
Go to the source code of this file
ADC abstraction implementation.
#include "../util/syn_assert.h"#include "syn_adc.h"#include <string.h>
Public Functions¶
| Type | Name |
|---|---|
| SYN_Status | syn_adc_init (SYN_ADC * adc, const SYN_ADC_Config * cfg) Initialize an ADC channel with oversampling and calibration. |
| int32_t | syn_adc_read (SYN_ADC * adc) Read the ADC (oversample + filter + calibrate). |
| int32_t | syn_adc_read_mv (SYN_ADC * adc) Read and convert to millivolts. |
| void | syn_adc_set_calibration (SYN_ADC * adc, int16_t offset, uint16_t scale, uint8_t shift) Update calibration at runtime. |
| void | syn_adc_set_stats (SYN_ADC * adc, SYN_Signal * stats) Attach a signal statistics window. |
Public Static Functions¶
| Type | Name |
|---|---|
| int16_t | apply_filter (SYN_ADC * adc, int16_t value) Apply the configured filter to an ADC reading. |
Public Functions Documentation¶
function syn_adc_init¶
Initialize an ADC channel with oversampling and calibration.
Parameters:
adcADC instance.cfgConfiguration.
Returns:
SYN_OK on success.
function syn_adc_read¶
Read the ADC (oversample + filter + calibrate).
Parameters:
adcADC instance.
Returns:
Calibrated value.
function syn_adc_read_mv¶
Read and convert to millivolts.
Uses the port's reference voltage and resolution for conversion.
Parameters:
adcADC instance.
Returns:
Value in millivolts.
function syn_adc_set_calibration¶
Update calibration at runtime.
Parameters:
adcADC instance.offsetNew zero-point offset.scaleNew scale numerator.shiftNew scale shift (denominator = 1 << shift).
function syn_adc_set_stats¶
Attach a signal statistics window.
Each syn_adc_read() pushes the calibrated value into the signal window, giving you noise stats (min/max/mean/variance) for free.
Parameters:
adcADC instance.statsInitialized SYN_Signal, or NULL to detach.
Public Static Functions Documentation¶
function apply_filter¶
Apply the configured filter to an ADC reading.
Parameters:
adcADC instance.valueRaw ADC value.
Returns:
Filtered value.
The documentation for this class was generated from the following file src/syntropic/drivers/syn_adc.c