Frage von MrUnbekannt2004, 40

Arduino hilfe?

Ich wollte eine Arduino Funktion ausführen in dem man im Seriellen Monitor , oben im Eingabefeld z.b Licht-An oder so eingibt , wie kann ich das machen mit eingabe = Serial.read(); if (engabe = Licht-An) { digitalWrite(led, HIGH); } hat es nicht geklappt. Hilfe wie kann ich das machen

Antwort
von Sivsiv, 24

Einen kompletten String als Kommando von der seriellen Schnittstelle ist deutlich komplexer als das. Ich würde dir empfehlen erstmal nur ein einzelnes Byte als Kommando zu empfangen. Schau dir das Beispiel im Handbuch an:
https://www.arduino.cc/en/Serial/Read

Dein Vergleich würde dann z.b. so ausehen:
if (incomingByte == 'a') 
{
....
}

Bitte achte auch besser darauf Zuweisung und Vergleichsoperator nicht zu verwechseln: == und = sind vollständig andere Dinge. if (engabe = Licht-An)  ist immer wahr.



Kommentar von MrUnbekannt2004 ,

Ok, danke

Antwort
von PerfectMuffin, 23

Nach allgemeinem Programmierwissen ist Licht-an kein String, sondern ein Identifier, = kein Vergleichsoperator für Strings und serial.read keine gültige Eingabe für Strings.

Du solltest erstmal mit etwas Leichterem anfangen. Etwas viel leichterem.

Keine passende Antwort gefunden?

Fragen Sie die Community