Archiv verlassen und diese Seite im Standarddesign anzeigen : WriteString mit Variable
Hallo,
Ich möchte mit writeString einen Text und damit verbunden eine Variable ausgeben.
Bsp.: writeString_P("Batteriespannung:" ubat);
Ich weiß dass man normalerweise darunter writeInteger(ubat); schreiben würde. Es ist für mich aber notwendig alles in einer Ausgabe zu verbinden.
Wie mache ich dass ?
Danke
Hallo Markus,
entweder du baust den ganzen String via printf oder "zu Fuß" (itoa) zusammen.
Warum musst du überhaupt so einen Klimmzug machen? Beide Varianten kommen doch aufs gleiche raus - Und wenn sich ubat ändern könnte, hättest du immer noch die Möglichkeit einer lokalen Kopie ..
mfG
Markus
Danke, das funktioniert ja schon sehr gut.
Gibt es dazu noch eine alternative die nicht so viel Speicher benötigt??
Danke
Zum Speicher sparen müsste man selber was aufsetzen. Printf/Sprintf zu verwenden, frisst leider unheimlich Ressourcen.
Ich habe es jetzt geschaft, jedoch wie ich denke etwas umständlich die Daten die der RP6 an den PC schickt auszuwerten.
Hier kurz der VB.net code bzw der RP6 Code
RP6:
writeString_P("ubat");
writeInteger(ubat);
writeString_P"&H");
vb.net:
dim buffer as string
....
buffer = serialport1.readto("&H")
if buffer.startswith("ubat") then
textbox1.text = buffer.remove(0,4)
end if
....
Das ganze funktioniert ja so auch ganz gut, jedoch denke ich mir dass es da doch sicher noch eine
effizentere Methode geben sollte die daten von den ganzen Sensoren auszuwerten.
Danke
Wenn du alle Daten vom RP6 aus mit nem Startzeichen und dann getrennt durch z.B. Kommas schickst, also was wie #5.34,1,53,22\r\n (z.B. 5.34V, 1 Batterie drin, 53m gefahren, 22°C Temperatur etc.), und wenn die Reihenfolge/Anordnung der Daten gleich bleibt, dann könntest du am PC einfach den Befehl "Split" verwenden. Der Teilt dir dann die einzelnen Werte in nen Array auf.
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.