Hi,

tausend Dank für eure Hilfe bei meinem letzen Problem . Hab jetzt aber schon wieder ein neues. Wollte mal ein kleines Programm schreiben was einfach die FrontLED einschaltet wenn ein Odometriesensor hell bzw. Dunkel wird. Also das man an dem Rad dreht und die FrontLED geht an und aus. Hab jetzt schon stundenlang damit rumgemacht und bekomms einfach nicht hin
Vielleicht weiß ja jemand von euch Rat...

Code:
#include <avr/io.h>
#include <avr/interrupt.h>

volatile uint16_t speicher = 0x0000;
	
void init(void) {
	DDRD |= (1<<DD7);						//PD7 wird Ausgang
	DDRD |= (1<<DD6);						//PD6 wird Ausgang
	PORTD |= (1<<PD7);						//PD7 wird 1 gesetzt -> Odometrie LEDs an
	
	ADMUX |= (1<<0) | (1<<REFS0);			//ADC0 als eingang, Kondensator an AREF benutzen
	//ADMUX |= (1<<ADLAR);
	ADCSRA |= (1<<ADEN);					//ADC enablen
	ADCSRA |= (1<<2) | (1<<1) | (1<<0);	//Presacler auf 128 einstellen
}


int main(void) {
		
	init();
	while(1){ 
		ADCSRA |= (1<<ADSC);				//Messung starten
		while (! (ADCSRA & (1<<ADIF)))	//Warten bis Messung fertig ist
		speicher = ADCL + (ADCH<<8);		//Messwert in Speicher schreiben
		
		if (speicher < 600) {
			PORTD |= (1<<PD6);				//PD6 auf 1 setzen -> FrontLED an
			ADCSRA |= (1 << ADIF);
		}
		else {
			PORTD &= ~(1<<PD6);			//PD6 auf 0 setzen -> FrontLED aus
			ADCSRA |= (1 << ADIF);
		}
		
		speicher = 0x0000;					//Speicher löschen
	}
return 0;
}
lg Katja