zephyr/drivers/adc
Song Qiang 7c7db00a77 drivers: adc: add driver support for ADC1 of stm32
This commit adds driver support for ADC1 on all 8 supported series of
stm32 with resolution and conversion time selection and calibration.

Currently DMA is not supported for all series, and without it, zephyr
won't be able to catch up ADC's end of conversion interrupt, so this
version of the driver supports one channel conversion only. Users want
multi-channel conversion should use multiple sequences in their app
code.

This driver uses LL lib rather than HAL because the current HAL lib for
ADC will call HAL_DMA_* functions rather than using zephyr's common DMA
interface, so that way the driver will break the consistency of the
code.

This driver has been tested on multiple nucleo boards including
NUCLEO_F091RC/F103RB/F207ZG/F302R8/F401RE/F746ZG/L073RZ/L476RG and all
passed the test cases in tests/drivers/adc/adc_api. If the external ADC
line is floating, it may fail the tests since ADC may get 0V and the
test cases think 0 is failing. Connect it to any voltage source between
0-3.3V will help passing the test cases.

Signed-off-by: Song Qiang <songqiang1304521@gmail.com>
2019-05-07 23:15:58 -04:00
..
CMakeLists.txt drivers: adc: add driver support for ADC1 of stm32 2019-05-07 23:15:58 -04:00
Kconfig drivers: adc: add driver support for ADC1 of stm32 2019-05-07 23:15:58 -04:00
Kconfig.intel_quark adc: overhaul adc_dw and rename it to adc_intel_quark_se_c1000_ss 2019-03-20 18:11:33 -07:00
Kconfig.mcux drivers: adc_mcux: improve initialization of the ADC 2018-12-13 08:32:18 -06:00
Kconfig.nrfx drivers: nrf: Enable nRF drivers by default in Kconfig 2018-12-21 21:01:37 +01:00
Kconfig.sam0 drivers: adc: Add SAM0 ADC driver 2019-05-07 08:41:27 -04:00
Kconfig.sam_afec
Kconfig.stm32 drivers: adc: add driver support for ADC1 of stm32 2019-05-07 23:15:58 -04:00
adc_context.h drivers: Rename reserved function names 2019-04-03 17:31:00 -04:00
adc_handlers.c adc: add syscall for adc_read_async() 2019-04-02 14:17:37 -04:00
adc_intel_quark_d2000.c drivers: adc: make a copy of sequence struct 2019-04-02 14:17:37 -04:00
adc_intel_quark_se_c1000_ss.c drivers: adc: make a copy of sequence struct 2019-04-02 14:17:37 -04:00
adc_intel_quark_se_c1000_ss.h drivers: adc: fix license 2019-04-07 08:45:22 -04:00
adc_mcux_adc16.c drivers: adc: make a copy of sequence struct 2019-04-02 14:17:37 -04:00
adc_nrfx_adc.c all: Add 'U' suffix when using unsigned variables 2019-03-28 17:15:58 -05:00
adc_nrfx_saadc.c all: Add 'U' suffix when using unsigned variables 2019-03-28 17:15:58 -05:00
adc_sam0.c drivers: adc: Add SAM0 ADC driver 2019-05-07 08:41:27 -04:00
adc_sam_afec.c drivers: adc: make a copy of sequence struct 2019-04-02 14:17:37 -04:00
adc_stm32.c drivers: adc: add driver support for ADC1 of stm32 2019-05-07 23:15:58 -04:00