http://www.youtube.com/watch?v=E1wt5ywUo9M
El código de Lego (diseñado en Bricx Command Center):
#define potencia 75
#define inactividad 200
#define activo 200
#define TimePerTarget 2000tarea main()
{girar durante mucho tiempo; / * la variable ángulo de grabación * /
largo nothit;
int welke;
int m;
int cuenta;
mucho tiempo, time2;TextOut (0, LCD_LINE2, "Ángulo PortA");
puntaje = 0;
TextOut(0,LCD_LINE7,"Score:");
NumOut(40,LCD_LINE7,score);mientras que (verdad) {}
OnFwd(OUT_ABC,Power);
Wait(downtime);
OFF(OUT_ABC);Wait(2000);
Welke = Random(3);
NumOut(0,LCD_LINE4,welke);Si (welke == 0) {m = OUT_A;}
Si (welke == 1) {m = OUT_B;}
Si (welke == 2) {m = OUT_C;}OnRev(m,Power);
Wait(uptime);
OFF(m);Wait(400);
nothit = MotorRotationCount (m);
rotación = nothit;
NumOut(0,LCD_LINE6,nothit);tiempo = CurrentTick();
mientras que (nothit == gire) {}
rotación = MotorRotationCount (m); / * Leer Motor ángulo [grados] * /
TextOut (0, LCD_LINE5,"");
NumOut(0,LCD_LINE5,rotate);
TextOut(40,LCD_LINE5,"deg");Si ((time+TimePerTarget) < CurrentTick())
{rotación = gira + 10;}}
OnFwd(m,Power);
Wait(downtime);
OFF(m);cuenta = cuenta + 1;
TextOut(0,LCD_LINE7,"Score:");
NumOut(40,LCD_LINE7,score);}
}