Einfaches Testprogramm für LEGO Mindstorms NXT:
//Testprogramm für NXT
#define SPEED1 50
#define SPEED2 75
// Noten-Definition für Musikausgabe
#define C 262
#define D 294
#define E 330
#define F 349
#define G 392
#define A 440
#define H 494
#define C2 523
// Notenlängen definieren
#define VIERTEL 400
#define ACHTEL 200
#define PAUSE 500
task main()
{
TextOut(0, LCD_LINE1, "Testprogramm");
TextOut(0, LCD_LINE2, "fuer LEGO");
TextOut(0, LCD_LINE3, "Mindstorms");
Wait(3000);
// Vorwärts fahren
TextOut(0, LCD_LINE5, "Vorwaerts ");
OnFwd(OUT_AC, SPEED1);
Wait(2000);
Off(OUT_AC);
Wait(1000);
// Drehen auf der Stelle, ca. 180 Grad
TextOut(0, LCD_LINE5, "Drehung ");
OnFwd(OUT_A, SPEED1);
OnRev(OUT_C, SPEED1);
Wait(1000);
Off(OUT_AC);
Wait(1000);
// Musik abspielen
TextOut(0, LCD_LINE5, "Musik ");
PlayTone(C, VIERTEL);
Wait(PAUSE);
PlayTone(D, VIERTEL);
Wait(PAUSE);
PlayTone(C, VIERTEL);
Wait(PAUSE);
// Test Ultraschallsensor an IN4
// Ausgabe auf dem LC-Display
SetSensorLowspeed(IN_4);
while(true)
{
ClearScreen();
TextOut(0, LCD_LINE5, "Entfernung =");
NumOut(80, LCD_LINE5, SensorUS(IN_4));
Wait(300);
}
}
Programmcode "Fahren bis Tastsensor gedrückt wird""
Benötigt wird nur ein Tastsensor:
task main()
{
TextOut(0, LCD_LINE1, "Fahren, bis");
TextOut(0, LCD_LINE2, "Tastsensor");
TextOut(0, LCD_LINE3, "gedrueckt wird");
Wait(3000);
SetSensor(IN_1, SENSOR_TOUCH);
OnFwd(OUT_AC, 75);
until(SENSOR_1 == 1);
Off(OUT_AC);
}
Programmcode "Losfahren auf Tastendruck - Stoppen vor Hindernis"
Benötigt werden der Ultraschall- und der Tastsensor:
// Tastsensor und Ultraschallsensor verwenden
#define DISTANZ 20 // in Zentimeter
task main()
{
TextOut(0, LCD_LINE1, "Losfahren, wenn");
TextOut(0, LCD_LINE2, "Tastsensor ge-");
TextOut(0, LCD_LINE3, "drueckt wird.");
TextOut(0, LCD_LINE5, "Stoppen vor einem");
TextOut(0, LCD_LINE6, "Hindernis.");
Wait(100);
SetSensorTouch(IN_1);
SetSensorLowspeed(IN_4);
while(SENSOR_1 == 0)
{
}
OnFwd(OUT_AC, 75);
until(SensorUS(IN_4) < DISTANZ);
Off(OUT_AC);
}
.