STM32F4 sprintf mit float

#3906777
Lesenswert?

Hallo!

Ich will an meinem STM32F4 DISCOVERY BOARD einen ADC-Wert umrechnen und 
per USB an den PC senden. Klappt auch alles, außer den float senden. 
sprintf tut sich mit float irgendwie schwer:
1
p=(adc_wert*1.0f/4096.0f)*3.0f;
2
sprintf(buf,"%f", p);

In der Console kommt nur nichts an.

Woran liegt das? Was muss zu den LDFLAGS noch dazugepackt werden?
Angehängte Dateien:
Gast #3906792
Lesenswert?

>wieso sollte es das net können?

Ich hab schon häufer printf/sprintf gesehen die das nicht können.

> Oder wie kann ich dann mein problem lösen?

Sende den ADC Wert direkt an den PC und rechne da um.
#3906794
Lesenswert?

Hint: Das STM32F4 DISCOVERY BOARD hat eine integrierten Debugger. Den 
sollte man mal benutzen.

Falls das newlib ist: Für "float" Formatierung braucht newlib malloc(). 
Wenn man das nicht hat, packt man Vor- und Nachkommastellen in Integer 
Variablen und gibt diese aus.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren