а дядя посоветовал ему
в его коде
#define F_CPU 1200000UL
//#include <inttypes.h>
#include <avr/io.h>
#include <util/delay.h>
#include <avr/interrupt.h>
//#include <avr/sleep.h>
volatile uint16_t analogData;
ISR (ADC_vect) {
analogData = ADCL + (ADCH<<8);
}
int main(void) {
DDRB &= ~(1<<PORTB4); // PB4 на вход
// Настраиваем работу с ADC (АЦП)
ADMUX |= (1<<REFS0) | (1<<ADLAR) | (1<<MUX1); // опорное напряжение - Internal, левое ориентирование данных, выбран вход ADC2 (на него подается измеряемое напряжение)
ADCSRA |= (1<<ADEN) | (1<<ADSC) | (1<<ADATE) | (1<<ADIE) | (1<<ADPS2); // АЦП включен, запуск преобразования, режим автоизмерения, прерывание по окончанию преобразования, частота CLK/4
ADCSRB = 0x00; // режим автоизмерения: постоянно запущено
DIDR0 |= (1<<ADC2D); // запрещаем цифровой вход на ноге аналогового входа
sei(); //разрешаем глобально прерывания
while (1) {
}
}