/*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");
}