Programmieren von LegoMindstorms-Robotern mit NQC
Programmieren von LegoMindstorms-Robotern mit NQC
Programmieren von LegoMindstorms-Robotern mit NQC
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
<strong>Programmieren</strong> <strong>von</strong> LEGO-MindStorms- <strong>Robotern</strong> <strong>mit</strong> <strong>NQC</strong><br />
int aa, bb; // gleichzeitige Definition der Variablen aa und bb<br />
int wahr, falsch; // die Variablen wahr und falsch (Variablen 2 und 3 im Datatlog<br />
task main()<br />
{<br />
aa = 5; bb = 5;<br />
CreateDatalog (10); //reserviere einen Speicherbereich <strong>von</strong> 100 Plätzen im Datalog<br />
wahr = 0 ;falsch = 0;<br />
// setzt Variablen zurück<br />
if (true) wahr = 1; else falsch =1; /* "true" ist immer wahr,<br />
also ist wahr = 1 und falsch = 0 */<br />
AddToDatalog (wahr);<br />
AddToDatalog (falsch);<br />
wahr = 0; falsch = 0;<br />
if (aa == bb) wahr = 1; else falsch =1; /* aa und bb sind beide 5 und da<strong>mit</strong><br />
gleich,<br />
also ist wahr = 1 und falsch = 0 */<br />
AddToDatalog (wahr);<br />
AddToDatalog (falsch);<br />
wahr = 0; falsch = 0;<br />
if (aa != bb) wahr = 1; else falsch =1; /* aa und bb sind beide 5, und da<strong>mit</strong> nicht<br />
ungleich, also ist wahr = 0<br />
und falsch = 1 */<br />
AddToDatalog (wahr);<br />
AddToDatalog (falsch);<br />
}<br />
Ausdrücke<br />
Es gibt eine Anzahl verschiedener Werte, die <strong>mit</strong> Ausdrücken (mathematische Formeln), Konstanten, Variablen und Sensor-<br />
Signalen verknüpft werden können. Beachte, dass SENSOR_1, SENSOR_2, und SENSOR_3 Makrofunktionen sind, die<br />
auf SensorValue(0), SensorValue(1), und SensorValue(2) zurückgreifen.<br />
Wert<br />
Beschreibung<br />
Zahl Ein konstanter Wert (z.B.: “123”)<br />
Variable<br />
Ein Name, der stellvertretend für irgendeine Zahl steht (z.B.: “x”)<br />
Timer(n)<br />
Der Wert <strong>von</strong> Timer n, wobei n zwischen 0 und 3 liegt<br />
Random(n)<br />
Eine Zufallszahl zwischen 0 und n<br />
SensorValue(n) Der derzeitige Wert, den der Sensor n liefert, wobei n 0, 1 oder 2 ist.<br />
Watch()<br />
Der derzeitige Wert der Systemuhr (= Systemuhrzeit)<br />
Message()<br />
Wert der zuletzt <strong>von</strong> der Infrarot- Schnittstelle empfangenen Nachricht.<br />
- 41 -