Hallo

Die Überprüfung der Tasten muss umfangreicher sein. Bei eurem Ansatz

Code:
int t1=0; 
while(1) 
{ 
   t1= PollSwitch(); 
   if (PollSwitch()==0 &&  t1==0) 
   { 
      //mach was 
   } else { 
      //mach was anderes 
   } 
}
wird eine Ungleichheit als Tastendruck interpretiert. Besser wäre vielleicht so:
Code:
#include "asuro.h"

int main(void)
{
	unsigned int data[2];
	int t1; // braucht nicht mit 0 vorbelegt zu werden
	int t2;

	Init();
	FrontLED(ON);
	MotorDir(FWD,FWD);

	while (1) // Hauptschleife
	{
		t1= PollSwitch();
		t2= PollSwitch();

		if(t1==t2) //nur wenn beide Tastenwerte gleich sind ist t1 gültig!
		{
	   	if (t1==0)
			{
				LineData(data);

				if (data[0]>data[1])
				{MotorSpeed(120,80);}
				else
				{MotorSpeed(80,120);}

			} // if(t1==0)
			else
			{
				MotorDir(RWD,RWD);
				MotorSpeed(80,80);
			} // else von if(t1==0)

		} // if(t1==t2)

	} //while(1)

	return 0; // diese Zeile wird nie erreicht
}
(nicht getestet weil mein asuro eingemottet ist)

Die Struktur und der Ablauf eines Programms wird deutlicher wenn man mit Einrückungen und Kommentaren arbeitet.

Gruß

mic