/*Dieser Sketch laesst das Auto programmiert fahren. Der Fahrablauf wird festgelegt, indem die Fahrablauf-Module aufgerufen werden. * Die Module stehen in einem Unterprogramm (einem anderen "Tab"). Der jeweilige Fahrzustand wird im Serial Monitor angezeigt. Mit der Anzeige im Serial Monitor kann auch der Ablauf des Sketches geprueft werden (Fehlersuche, falls der Sketch nicht funktioniert)*/ /*Binde den Programmablauf von Fahrablauf_Module.h ein*/ #include "Fahrablaufmodule.h" void setup() { /*Programmiere Arduino Pins D5...10 als Ausgang*/ pinMode(7, OUTPUT); pinMode(17, OUTPUT); pinMode(5, OUTPUT); pinMode(11, OUTPUT); pinMode(8, OUTPUT); pinMode(6, OUTPUT); /*Serial Monitor aktivieren, 9600 Baud*/ Serial.begin(9600); } void loop() { delay(500); //Warte 0,5 Sekunde bis das Auto losfaehrt forward(); //void forward wird aufgerufen delay (1500); //Fahre ... Millisekunden back(); //void back wird aufgerufen delay (1500); //Fahre ... Millisekunden stopp(); //void stop wird aufgerufen for (;;) {} //Beende Sketch }
void forward() { digitalWrite(7, HIGH); // Schalte Motoren RECHTS ein digitalWrite(17, LOW); analogWrite(5, 120); // Setze die Geschwindigkeit auf 120 (zwischen 0...255) digitalWrite(11, HIGH); // Schalte Motoren LINKS ein digitalWrite(8, LOW); analogWrite(6, 120); // Setze die Geschwindigkeit auf 120 (zwischen 0...255) Serial.println("FORWARD"); } void back() { digitalWrite(7, LOW); // Schalte Motoren RECHTS ein digitalWrite(17, HIGH); analogWrite(5, 120); // Setze die Geschwindigkeit auf 120 (zwischen 0...255) digitalWrite(11, LOW); // Schalte Motoren LINKS ein digitalWrite(8, HIGH); analogWrite(6, 120); // Setze die Geschwindigkeit auf 120 (zwischen 0...255) Serial.println("BACK"); } void left() { digitalWrite(7, HIGH); // Schalte Motoren RECHTS ein digitalWrite(17, LOW); analogWrite(5, 120); // Setze die Geschwindigkeit auf 120 (zwischen 0...255) digitalWrite(11, LOW); // Schalte Motoren LINKS ein digitalWrite(8, HIGH); analogWrite(6, 120); // Setze die Geschwindigkeit auf 120 (zwischen 0...255) Serial.println("LEFT"); } void right() { digitalWrite(7, LOW); // Schalte Motoren RECHTS ein digitalWrite(17, HIGH); analogWrite(5, 120); // Setze die Geschwindigkeit auf 120 (zwischen 0...255) digitalWrite(11, HIGH); // Schalte Motoren LINKS ein digitalWrite(8, LOW); analogWrite(6, 120); // Setze die Geschwindigkeit auf 120 (zwischen 0...255) Serial.println("RIGHT"); } void stopp() //Achtung, nicht "stop", das ist ein Befehl { digitalWrite(7, LOW); // Schalte alle Motoren aus digitalWrite(17, LOW); digitalWrite(11, LOW); digitalWrite(8, LOW); Serial.println("STOP"); }