Ich möchte auf einen AVR ein float in ein char array wandeln. Dafür habe ich das hier:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
Auf der Konsole bekomm ich aber ein wunderschönes ?
|
Anzeige
|
sprintf auf avr gibt ausIch möchte auf einen AVR ein float in ein char array wandeln. Dafür habe ich das hier:
Auf der Konsole bekomm ich aber ein wunderschönes ? Ich zitiere aus http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#Die_Nutzung_von_sprintf_und_printf
Und wie muss ich das unter Linux machen? Also was muss ich als Compiler parameter hinzufügen?
Gast
#3129409
Das hab ich auch schon gesehen, das ist aber für AVR Studio und ich hab keine Ahnung wie ich das per Parameter lösen soll
Gast
#3129417
Du hast auch kein Wort darüber verraten, mit was für einer IDE du programmierst. Wo her sollen wir dann wissen wie das gehen soll? Peter K. schrieb: > keine Ahnung wie ich das per Parameter lösen soll "-Wl,-u,vfprintf" vorne in die Linker-Kommandozeile, "-lprintf_flt" und "-lm" hinten (hinter den Objekt-Datatein). Chris schrieb: > Du hast auch kein Wort darüber verraten, mit was für einer IDE du > programmierst. Wo her sollen wir dann wissen wie das gehen soll? >Und wie muss ich das unter Linux machen? Also was muss ich als Compiler >parameter hinzufügen? Das gibt zwar keine klare Auskunft, aber wenigstenst ein wenig. Als IDE verwende ich Kate + selbstgemachte, übereinfache makefile Jetzt mal ne ganz blöde Frage: Ist das die Linker Zeile? avr-objcopy -O ihex main.elf main.hex Also dann avr-objcopy -Wl,-u,vfprintf -O ihex main.elf main.hex -lprintf_flt -lm Peter K. schrieb: > Jetzt mal ne ganz blöde Frage: > Ist das die Linker Zeile? > avr-objcopy -O ihex main.elf main.hex Nein. Stefan Ernst schrieb: > Peter K. schrieb: >> Jetzt mal ne ganz blöde Frage: >> Ist das die Linker Zeile? >> avr-objcopy -O ihex main.elf main.hex > > Nein. Sondern? OK, ich hab jetzt
Funktioniert auch soweit. Warum gibt er mir auf der Konsole jetzt Ein Teil: 0.004883 aus. Wo sind den die Kommastellen hin?
Gast
#3129446
Tja, ein 32-bit-float hat halt nicht so viele Stellen, wie du gerne hättest... Oliver Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|