ich hab hier mal nen beispiel für 2 sensoren, der NQC code ist mangels hardware leider ungetestet...
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);
}
else if(sl>=black)
{
OnFwd(OUT_A,60);
}
}
}