Habe ein problem Ich möchte die Windgeschwindigkeit meines Windmessers messen auf basis von Impulsen und deren diffenz. Ich habe einen Mega 8 mit 8Mhz Timer1 mit 16bit und prescaler =1. das bedeutet das er pro sekunde 122 überläufe produziert. in diesen timer überprüfe ich ob der reed geschlossen ist und auch wieder öffnet wenn ja dann start bis zum nächsetn schließen = stopp. um die umlauffrequenz zu erhalten rechne ich 1/differenz*1sec/122überläufe die differenz beträgt bei langsamen drehungen ca 109 das entspricht fast eine umdrehung / sec. Die umlauffrequenz beträgt demnach 1,1Hz. um die geschwindigkeit zu berechnen muß ich nach der Formel V=2*pi*r*f berechnen in c habe ich es so gemacht diff ist auch ein int. int v=2*3.14159265 *0.065 * (1/(diff*1/122)): v ist -1 das ist doch falsch: kann mir einer veraten was ich falsch mache??? Danke
>int v=2*3.14159265 *0.065 * (1/(diff*1/122)):
float v=2.0*3.14159265 *0.065 * (1.0/((float)diff*1.0/122.0)):
wie kann ich den float darstellen als integer sbekomme ich minus und plus werte im 5 stelligen bereich. wo weiß ich wo das komma ist??:
>wo weiß ich wo das komma ist??:
integer haben keine Kommas.
integer sind Ganzzahlen.
1,2,3,4,5..-1,-2,-3
Nachkommastellen gibt es bei integer nicht.
das Problem ist erledigt habe es in ein integer umgewandelt und bekomme jetzt die ganz Zahl. z.b float 123.123 jetzt nur noch 123 für die Windgeschwindigkeit reichen ganz zahlen. Danke
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.