Hallo JeyBee,

ich gehe mal davon aus, dass der GPS via RS232 mit deinem AVR verbunden ist.
Wenn ich mich richtig entsinne, kommen die Daten ja als ASCII-Zeichen rüber.

Ich würde das Ganze so angehen:
1. Die ASCII-Zeichen (sind ja nix weiter als einzelne Bytes) nacheinander in ein char-Array ablegen.

2. Das char-Array durchgehen und überall die 48 abziehen (Umwandlung ASCII->Zahl)

3. Dann das Array nochmals durchlaufen und die einzelnen Ziffern aufsummieren (1. Stelle * 1000 + 2. Stelle * 100 ... 1. Nachkommastelle * 0,1 ...) und das Ergebnis in eine float schreiben

Natürlich kannst du die einzelnen Schritte auch in einem Durchlauf machen.

Grüße,
Marco