Hallo Bernhard,
vielen, vielen Dank für deine Antwort !!!!

Es funktioniert einwandfrei !!!!

Hier der Code für die anderen Leute, die es interessiert und die eine Lösung suchen.

Code:
#include <avr/io.h>


void adc_init (void){

	//interne Referenzspannung
	//ADMUX = 0xC0;

	//AVCC
	//ADMUX = 0x40;

	//AREF
	ADMUX = 0xC0;


	ADCSRA = 0x80; //ADC aktivieren, Rest 0 setzen

	//ADCSRA |= 0x01; //Vorteiler 2
	//ADCSRA |= 0x02; //Vorteiler 4
	//ADCSRA |= 0x03; //Vorteiler 8
	//ADCSRA |= 0x04; //Vorteiler 16
	ADCSRA |= 0x05; //Vorteiler 32
	//ADCSRA |= 0x06; //Vorteiler 64
	//ADCSRA |= 0x07; //Vorteiler 128

	ADCSRA |= (1<<6); //Konvertierung starten

while(ADCSRA & (1<<6)){}; //Kovertierung beendet

uint16_t ergebnis = 0;

ergebnis = ADCL;
ergebnis += (ADCH<<8);

}



uint16_t adc_read (uint8_t kanal){

static uint8_t init = 0;

if(init==0){adc_init(); init++;} //beim ersten Aufruf zunaechst initialisieren

ADMUX &= (0xE0); //Vorhandenen Wert fuer den Kanal loeschen

//den Wert fuer den Kanal schreiben, dabei die vorderen 3 Bits vor evtl. fehlern schuetzen

ADMUX |= (kanal&(0x1F));

ADCSRA |= (1<<6); //Konvertierung starten



while(ADCSRA & (1<<6)){}; //Kovertierung beendet

uint16_t ergebnis = 0;

ergebnis = ADCL;
ergebnis += (ADCH<<8);

return ergebnis; //Ergebnis zurueckgeben

}

int main(void)
{
	float messung;
	
	DDRD = 0b00111111;
	while(1)
	{
		messung = adc_read(2);
		
		if( messung<=500 ){
			PORTD = 0b00000001;
		}
		else {
			PORTD = 0b00000010;
		}
		
	}
}

Gruß
Fabi