- Код: Выделить всё • Развернуть
//Инициализация:
ADCSR |= (( 1 << ADEN ) | ( 1 << ADSC ) | ( 1 << ADPS2 ) | ( 1 << ADPS1 ));
while ( ADCSR & ( 1 << ADSC ) ); /* wait for complete conversion */
uint16_t ADCIN( uint8_t channel )
{
ADMUX = ( 1 << ADLAR ) | ( 1 << REFS0 ) | channel;
ADCSRA = ( 1 << ADEN ) | ( 1 << ADSC );
DELAY_US( 64 ); // 64 microseconds delay
while ( ADCSR & ( 1 << ADSC ) );
return ADCH;
}