sam0/adc: assert resolution check fix

This commit is contained in:
Dan Evans 2017-05-31 10:39:32 -06:00
parent a75e7df541
commit 4cc0e585d1

View File

@ -76,7 +76,11 @@ static void _adc_poweroff(void)
static int _adc_configure(adc_res_t res)
{
assert(res >= ADC_RES_8BIT && res <= ADC_RES_12BIT);
/* Individual comparison necessary because ADC Resolution Bits are not
* numerically in order and 16Bit (averaging - not currently supported)
* falls between 12bit and 10bit. See datasheet for details */
assert((res == ADC_RES_8BIT) || (res == ADC_RES_10BIT) ||
(res == ADC_RES_12BIT));
_adc_poweroff();
if (ADC_0_DEV->CTRLA.reg & ADC_CTRLA_SWRST ||
ADC_0_DEV->CTRLA.reg & ADC_CTRLA_ENABLE ) {