void ADC_Init(){
DDRC = 0x00; /* Make ADC port as input */
ADCSRA = (1<<ADEN)|(1<<ADPS2)|(1<<ADPS1)|(1<< ADPS0);
/* Enable ADC, with freq/128 */
ADMUX = (1<<REFS0); /* Vref: Avcc, ADC channel: 0 */
}
int ADC_Read(char channel)
{
ADMUX = 0x40 | (channel & 0x07); // set input channel to read
ADCSRA |= (1<<ADSC); // Start ADC conversion
while (!(ADCSRA & (1<<ADIF)));
// Wait until end of conversion by polling ADC interrupt flag
ADCSRA |= (1<<ADIF); // Clear interrupt flag
_delay_ms(1); // Wait a little bit
return ADCW; // Return ADC word
}
int main()
{
char Voltage[10];
float volt;
while (1) {
volt = (ADC_Read(0)*0.0488);
volt = (volt/10.00);
_delay_ms(10);
}}