Увелчение частоты дискретизации АЦП ARDUINO

RomanG95
Offline
Зарегистрирован: 18.10.2016

Доброго всем времени суток) Увидел статью, в которой описан вариант поднятия частоты дискретизации встроенного в микроконтроллер atmega АЦП, но не могу понять, где в коде указано какой АНАЛОГОВЫЙ ВХОД используется

int analogValue = 0; // значение аналогового сигнала
 
void setup() 
{
 DDRB = B01000000; // pin 12 в режиме OUTPUT
 DIDR0 = 0x3F; // отключаем цифровые входы
 ADMUX = 0x43; // измеряем на ADC3, используем внутреннее опорное напр.= 1.1В
 ADCSRA = 0xAC; // включаем АЦП, разрешаем прерывания, делитель = 16
 ADCSRB = 0x40; // включаем АЦ коналы MUX, режим скользящей выборки
 bitWrite(ADCSRA, 6, 1); // Запускаем преобразование установкой бита 6 (=ADSC) в ADCSRA
 sei(); // устанавливаем флаг прерывания
}
 
void loop() 
{
}
 
/*** Процедура обработки прерывания АЦП ***/
ISR(ADC_vect) 
{
 PORTB = B00000000; // пин 12 переводим в состояние LOW
 analogValue = ADCL; // сохраняем младший байт результата АЦП
 analogValue += ADCH << 8; // сохраняем старший байт АЦП
 PORTB = B01000000; // пин 12 переводим в состояние HIGH
}

ссылка на статью http://robotosha.ru/arduino/analog-measurements-arduino.html

 

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

7 строка