Das musst du schon genauer beschreiben. Deine Variablen scheinen float zu sein. Das passt doch für weitere Rechnungen. In welchem Format und/oder Datentyp brauchst du sie genau?
Lesen ist kein Problem,
Raussuchen was tinygps und der Unterschied zu tinygps++ ist, schon eher.
50.xxx und 7.5xxx sind vermutlich Koordinaten. Und du hast richtig erkannt, dass der Variablentyp eine Rolle spielt. Seriell werden Texte übertragen, wo jede Ziffer in Wirklichkeit ein Buchstabe ist.
"Umrechnung in anderes System" ist bei dir vermutlich Dezimalgrad -> Grad Minute Sekunde ?
Rechnen geht einfacher mit Zahlen als mit Texten. Wobei float nur eine begrenzte Genauigkeit hat, so dass du am besten den Nachkommateil separat behandelst.
So würde ich eher den Text " 50.zyxwvu" auf ein '.' absuchen und aus den folgenden Ziffern eine Zahl machen. Das ist nicht schwer, aber mühsam, wenn du es zu Fuß machst und nicht genau weisst, wie viele Ziffern du erwartest.
So nochmal genauer, 7.xxx175 51.xxx023 - also 6 nachkomma Stellen -
die bekomme ich über die serielle Schnittstelle von der tinygps++ Ardunino - PC Monitor
Mein Problem ist die Umwandlung des ""String's ( Serial.println(gps.location.lng(),6);"" in eine Zahlenkette zur ausgabe auf einen lcd Display am Arduino.
ja das geht - direkt auf LCD , muss sie aber ( möchte ) sie umrechnen in's Maidenhead Grid , brauche echte Zahlen - irgendwie hab ich da noch nen Denkfehler drin.
Auf den seriellen Monitor sehe ich die Zahlen die man verarbeiten könnte , komme da aber nicht dran.
Du hast schon eine Zahl. Schau dir doch mal die Funktionen in tinygps an:
double lat();
double lng();
Es ist print() (aus der Print Klasse) das das in ASCII wandelt.
Wenn deine LCD Klasse auch mit der Arduino print() Funktion arbeitet (was z.B. die 16x2 oder 20x4 Displays tun), dann geht das genauso. Manche Display Libraries wie UTFT für TFTs haben eigene Konvertierungsfunktionen wie printNumF().
Wenn man es per Hand machen muss geht es mit dtostrf()
atof() ist um C Strings in Floats zu wandeln. Das ist verkehrt. Kommt aber von deiner falschen Beschreibung.