Hallo

Code:
	  if (data[1] > 500)
	  { if (data[1] >1024)
			StatusLED(GREEN);
		else
			StatusLED(YELLOW); 
		
		}
	  else
		if (data[1] >1 || data[0] > 1)
		StatusLED(RED);
		else StatusLED(OFF);
Da die Linienwerte beim orginal bestückten asuro nie 500 erreichen, sollte der erste if-Zweig nie ausgeführt werden. Mehr als 1023 werden es sicher auch nie sein, denn die Funktion liefert nur einen 10-Bit-Wert. Also reduzieren wir mal aufs wesentliche:

Code:
unsigned int data[2];
	while (1) 
	{ 
	LineData(data);
	data[0]=2; // Test der Funktionalität der Anzeige
	if (data[1] >1 || data[0] > 1)
	StatusLED(RED);
	else {StatusLED(OFF); while(1);} // Programmende! 
	
	while(PollSwitch() < 1) warte(1); 
	}
Funktioniert die Anzeige mit der StatusLED wie erwartet, wenn man data[0] auf 2 setzt?

Gruß

mic