Einzelnen Beitrag anzeigen
Ungelesen 05.05.11, 18:14   #17
flotti
Mitglied
 
Registriert seit: Mar 2009
Beiträge: 314
Bedankt: 21
flotti ist noch neu hier! | 0 Respekt Punkte
Standard

Code:
/*Belegung: 
	1 := rechter Lichtsensor
	2 := linker Lichtsensor
	A := rechter Motor
	B := linker Motor
*/

#define black 50 //muss noch angepasst werden 
int sr; //wert von rechtem Infarotsensor 
int sl;

void init()
{
	SetSensorLight(IN_1); //Eingang in richtigen Modus setzten 
	SetSensorLight(IN_2);
}

task scan()	//task um nebenläufig zum Hauptprogramm die Sensoren abzufragen
			// muss man nicht so machen
{
    while(1)
    {
	sr = Sensor(IN_1); 
	sl = Sensor(IN_2);
    }
}

task main()
{
	init(); 
	start scan;
	while(1) //endlosschleife
	{
		
		// Schienenprinzip, wenn der rechte Sensor schwarz sieht wird nach links gefahren...
		// grade aus fahren ist in der praxis nicht so wichtig 
		if(sr>=black) 
		{
			OnFwd(OUT_B,60);
                        OnFwd(OUT_A,30);

		}
		else if(sl>=black)
		{
			OnFwd(OUT_A,60);
                        OnFwd(OUT_B,30);
		}
	}
}
noch nen bug gesehen
flotti ist offline   Mit Zitat antworten