From 96fd915b76f8efbab84cd164f83b203a232c78df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A1nos=20Brodbeck?= Date: Fri, 7 Aug 2020 19:17:24 +0200 Subject: [PATCH] boards/same54-xpro: add ADC periph_conf --- boards/same54-xpro/Kconfig | 1 + boards/same54-xpro/Makefile.features | 1 + boards/same54-xpro/include/periph_conf.h | 22 ++++++++++++++++++++++ 3 files changed, 24 insertions(+) diff --git a/boards/same54-xpro/Kconfig b/boards/same54-xpro/Kconfig index 1bb42260da..e6342dfdc1 100644 --- a/boards/same54-xpro/Kconfig +++ b/boards/same54-xpro/Kconfig @@ -12,6 +12,7 @@ config BOARD_SAME54_XPRO default y select CPU_MODEL_SAME54P20A select HAS_PERIPH_DAC + select HAS_PERIPH_ADC select HAS_PERIPH_I2C select HAS_PERIPH_RTC select HAS_PERIPH_RTT diff --git a/boards/same54-xpro/Makefile.features b/boards/same54-xpro/Makefile.features index fbc66c1344..7bf9dac809 100644 --- a/boards/same54-xpro/Makefile.features +++ b/boards/same54-xpro/Makefile.features @@ -10,6 +10,7 @@ FEATURES_PROVIDED += periph_pwm FEATURES_PROVIDED += periph_spi FEATURES_PROVIDED += periph_timer FEATURES_PROVIDED += periph_uart +FEATURES_PROVIDED += periph_adc FEATURES_PROVIDED += periph_usbdev # Put other features for this board (in alphabetical order) diff --git a/boards/same54-xpro/include/periph_conf.h b/boards/same54-xpro/include/periph_conf.h index 29ecf99d83..4d9c75d781 100644 --- a/boards/same54-xpro/include/periph_conf.h +++ b/boards/same54-xpro/include/periph_conf.h @@ -309,6 +309,28 @@ static const sam0_common_usb_config_t sam_usbdev_config[] = { }; /** @} */ +/** + * @name ADC Configuration + * @{ + */ + +/* ADC Default values */ +#define ADC_PRESCALER ADC_CTRLA_PRESCALER_DIV128 + +#define ADC_NEG_INPUT ADC_INPUTCTRL_MUXNEG(0x18u) +#define ADC_REF_DEFAULT ADC_REFCTRL_REFSEL_INTVCC1 +#define ADC_DEV ADC0 + +static const adc_conf_chan_t adc_channels[] = { + /* port, pin, muxpos */ + {GPIO_PIN(PA, 3), ADC_INPUTCTRL_MUXPOS(ADC_INPUTCTRL_MUXPOS_AIN1)}, + {GPIO_PIN(PA, 5), ADC_INPUTCTRL_MUXPOS(ADC_INPUTCTRL_MUXPOS_AIN5)}, + {GPIO_PIN(PA, 7), ADC_INPUTCTRL_MUXPOS(ADC_INPUTCTRL_MUXPOS_AIN7)} +}; + +#define ADC_NUMOF ARRAY_SIZE(adc_channels) +/** @} */ + /** * @name DAC configuration * @{