Код АЦП с Atmega32 - PullRequest
       13

Код АЦП с Atmega32

0 голосов
/ 10 мая 2010
uint read_adc(uchar adc_input)

{

ADMUX=adc_input | (0x00 & 0xff);

delay_us(10);

ADCSRA|=0x40;     //START THE CONVERSION

while ((ADCSRA & 0x10)==0);     // wait for the conversion to complete

ADCSRA|=0x10;   //clear the ADC flag

return ADCW;

}

В: Что означает «ADMUX = adc_input | (0x00 & 0xff)»? какой входной канал мы выбрали здесь?

1 Ответ

1 голос
/ 10 мая 2010

0x00 & 0xFF не имеет смысла, так как всегда будет иметь значение 0. Вы можете переписать эту строку как ADCMUX = adc_input;

Выбранный вами канал будет значением, сохраненным в adc_input

...