- LiTime Speicher und Akkus         
Ergebnis 1 bis 6 von 6

Thema: WriteString mit Variable

  1. #1
    Benutzer Stammmitglied Avatar von neo3000
    Registriert seit
    17.11.2006
    Ort
    linz
    Alter
    35
    Beiträge
    37

    WriteString mit Variable

    Anzeige

    Praxistest und DIY Projekte
    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
    -----------------------------------------
    Danke,
    Mit freundlichen Grüßen aus Leonding

    Markus

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    20.08.2008
    Ort
    Karlsruhe
    Alter
    36
    Beiträge
    1.225
    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

  3. #3
    Benutzer Stammmitglied Avatar von neo3000
    Registriert seit
    17.11.2006
    Ort
    linz
    Alter
    35
    Beiträge
    37
    Danke, das funktioniert ja schon sehr gut.
    Gibt es dazu noch eine alternative die nicht so viel Speicher benötigt??

    Danke
    -----------------------------------------
    Danke,
    Mit freundlichen Grüßen aus Leonding

    Markus

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von Jaecko
    Registriert seit
    16.10.2006
    Ort
    Lkr. Rottal/Inn
    Alter
    41
    Beiträge
    2.009
    Zum Speicher sparen müsste man selber was aufsetzen. Printf/Sprintf zu verwenden, frisst leider unheimlich Ressourcen.
    #ifndef MfG
    #define MfG

  5. #5
    Benutzer Stammmitglied Avatar von neo3000
    Registriert seit
    17.11.2006
    Ort
    linz
    Alter
    35
    Beiträge
    37

    Ander Lösung?

    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
    -----------------------------------------
    Danke,
    Mit freundlichen Grüßen aus Leonding

    Markus

  6. #6
    Erfahrener Benutzer Robotik Einstein Avatar von Jaecko
    Registriert seit
    16.10.2006
    Ort
    Lkr. Rottal/Inn
    Alter
    41
    Beiträge
    2.009
    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.
    #ifndef MfG
    #define MfG

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

LiFePO4 Speicher Test