ich empfange seriell eine 6-stellige Zahl.
Die ersten 3 Ziffern entsprechen einem LCD-Text, die letzten 3 Ziffern entsprechen einem Sensorwert.
Es gibt ca 75 verschiedene LCD-Texte.
Ich möchte bei Eingang von "001123" oder "075456" ein char array erstellen lassen, wie:
Büro 123
Keller 456
Der gesamte Text "Keller 456" soll ein einem char array gespeichert werden, bis die nächste Zahl eintrifft.
Der Text wird inkl. Wert max 16 Stellen lang sein, bei meinen Versuchen habe ich es mit
char Text[17] definiert.
Das Zerlegen der Zahl ist kein Problem, aber wie kann ich in ein char array den Text "Keller " schreiben und den Wert anhängen?
Ja.
Es werden immer 4 Zeilen gesammelt und dann zusammen an Blynk gesendet:
Blynk.virtualWrite(V1, zeile1);
Blynk.virtualWrite(V2, zeile2);
Blynk.virtualWrite(V3, zeile3);
Blynk.virtualWrite(V4, zeile4);
Momentan fällt mir nur ein:
if (textcode = 075){
char Text[17] = "Keller ";
}
Das 75 Mal und den Wert Zeichen für Zeichen ans Ende setzen.
Aber ich dachte an was "komfortableres".
Du solltest schon verstehen wie man Arrays und char Arrays verwendet und nicht nur willkürlich Code eintippen bis etwas geht. Gerade hier ist nicht alles was compiliert auch richtig
Aber da wird noch viel mehr falsch sein. z.B. hier:
if (textcode = 075)
1.) = ist eine Zuweisung und kein Vergleich
2.) Zahlen die mit 0 Anfangen sind Oktal statt Dezimal
probiert, gab immer 7 aus.
Eben sah ich dann, dass die Hardware nicht richtig angeschlossen war und somit der Programmteil nicht ausgeführt wurde und die 7 kam aus einer anderen Testausgabe im Programm.