wie bekomme ich am besten ein float nach Ascii gewandelt? Vermisse irgendwie ein ftoa in der Lib. printf und sprintf will ich nicht benutzen da diese einen zu grossen Code erzeugt. Gruß, Marcel
Das müsste mit gcvt gehen: char *gcvt(double value, int digits, char *buffer);
Afaik heißen die entsprechenden Funktionen beim GCC dtostr... (ist halt ein double anstatt eines float und ein String als Ergebnis)
Hab nachgeschaut: dtostre gibt die Exponential-Darstellung, dtostrf die 'normale'.
nach einer dtostre hab ich auch schon gesucht aber nix gefunden. Bin ich blind? http://www.nongnu.org/avr-libc/user-manual/group__avr__stdlib.html
Wenn du einen hinreichend großen Prozessor hast, kannst du außerdem noch sprintf() nehmen. Nicht vergessen, die Gleitkomma-Option für printf auszuwählen (wie das geht, hängt davon ab, wie du deine Makefiles erstellst).
@johnny.m ok...da mag die Funktion drin sein, ich vermisse blos die Doku dazu :D. @Jörg Meine Projekte basieren grundsätzlich auf dem Sample Makefile welches mit WinAVR geliefert wird. Da ist alles drin was man braucht und das erspart mir viel Arbeit, da ich mich mit den Make Kram nicht so gut auskenne und mit dem Sample sehr gut zurecht komme. Aber wie schon gesagt die printf Funktion nimmt einfach zu viel Speicher weg wenn man diese mit ins Projekt eincompiliert.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.