Ксения (30.01.2017 22:18 - 22:22, просмотров: 221) ответил Evgeny_CD на Ксения, а Start: что там делает? У Вас goto использовано?
У меня выдача температуры "по требованию" - постоянно АЦП на эту задачу не гоняю. Тем более что дисплей только одно число может показывать. Поэтому, когда переключаю дисплей на индикацию температуры, то делаю Start:
ADCB.REFCTRL |= ADC_TEMPREF_bm; // Temp Sensor enable
ADCB.CTRLA |= ADC_ENABLE_bm; // enable adc
ADCB.CTRLA |= ADC_CH0START_bm; // start conversion
А когда переключаюсь на индикацию чего-то другого, то делаю Stop:
ADCB.REFCTRL &= ~ADC_TEMPREF_bm; // Temp Sensor disable
ADCB.CTRLB &= ~ADC_ENABLE_bm; // disable adc
Паузы у меня на самом деле нет, а просто дисплей обновляется раз в секунду по таймеру - к этому времени результат у АЦП будет готов.