hi, ich habe eine Frage und zwar möchte ich eine gemessene Spannung auf dem LCD ausgeben. Habe folgenden Code geschrieben: /////////////////////////////////////////////////////////////////////// ADC_Value = ADCL; //Die beiden 8Bit Variablen werden in die 16 Bit Variable geschrieben ADC_Value +=(ADCH<<8); //ADC_Value geschrieben Spannung=Steigung*(float)ADC_Value; //auch ohne casten funktionierts nicht sprintf(str,"%f",Spannung); //sprintf(str+4, "%c", " V"); lcd_clear(); lcd_setcursor(0,1); lcd_string(str); for(i=0;i<5;i++) _delay_ms(50); /////////////////////////////////////////////////////////////////////// da bei 0V auch ungefähr 0 in ADV_Value stehen, kann ich das mit einer simplen Geradengleichung aufbauen. das Probelm ist dann nur die Kommazahl Spannung auf dem LCD auszugeben. habs im MS Visual Studio probiert, da klappts hervorragend, aber hier steht an 1. Stelle in str ein "?" und danach nur kaudawelsch. weis einer wieso?? viele dank
man siehe in die dokumentation der stdio.h: http://www.nongnu.org/avr-libc/user-manual/group__avr__stdio.html#gaa3b98c0d17b35642c0f3e4649092b9f1
danke für deine Antwort, aber hilft mir jetz ehrlich gesagt auch nix weiter.
dann lies den Abshnitt nochmal besonders den Absatz über Limitations, bzw Limitations selbst.
AVR und GCC ??? dabei müsstest du noch die libraries für float richtg nutzen, sprich die richtigen für sprintf, admit ein float wert raus kommt und nicht ein ? gruss soundso
Warum berechnest du denn nicht das Ganze in Zentel-/Hundertstel-Volt? Da spart man sich die Float-Berechnung. Man braucht dann nur den Komma-Punkt an die richtige Stelle setzen und hat das Ergebnis in Volt. Wenn man mehr Stellen benötigt, kann man auch in Millivolt rechnen. Man muss nur aufpassen, dass es keinen Überlauf gibt.
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.