Hallo,
ich verzweifle: entweder sehe ich den Wald vor lauter Bäumen nicht oder es ist tatsächlich ein Fehler in meinem Programm:
Folgender Programmausschnitt sollte folgendes leisten. Im buffer steht "P1EV" und dementsprechend sollte das Programm den in rot markierten Abschnitt durchlaufen, tuts aber nicht. Ich habe einige println eingefügt um zu sehen wo das Programm überall hinspringt aber ich verstehe nicht, warum die roten Zeilen nicht bearbeitet werden.
Hat jemand eine Idee?
case 'P':
switch (buffer[1]) {
case '1':
Serial.println("Hallo P1");
if (buffer[2]=='E')
{
digitalWrite(Versorgung_Pin, HIGH);
Serial.println("Hallo P1E");
if (buffer[3]=="V")
{
digitalWrite(Vorwaerts_Pin, HIGH);
Serial.println("Hallo P1V");
}
else
{
Serial.println("Hallo nicht V");
Serial.println(buffer[3]);
}
}
Serial.println("Hallo");
if (buffer[3]=="R")
{
digitalWrite(Rueckwaerts_Pin, HIGH);
Serial.println("Hallo P1R");
}
Serial.println(buffer);
if (buffer[2]=='A')
{
digitalWrite(Versorgung_Pin, LOW);
digitalWrite(Vorwaerts_Pin, LOW);
digitalWrite(Rueckwaerts_Pin, LOW);
Serial.println("Hallo P1RV aus");
}
break;
case '2':
Die gesendete Test "println" sind in der Reihenfolge wie folgt:
Hallo P1
Hallo P1E
Hallo nicht V
V
Hallo
P1EV