Hallo oberallgeier,
du nutzt nach dem Lesen von x, y und z die Funktion utoa(). Mir scheint es angebracht zu sein, dass du itoa() benutzen solltest. u sollte für UNsigned stehen. i steht für Integer und damit signed.
Auch die Variable zahlwort[5] solltest du länger machen. Im String ist IMMER das letzte Zeichen das Byte 0 als Abschlußzeichen. Netto also 4 Byte für Text. Ein Vorzeichen, Und schon wird es knapp.
Hallo mausi_mick,
oh, ich glaube, dass mir das von dir angegebene "sqrt (Ax*Ax + Ay*Ay + Az*Az) = 1 g (falls nur Gravitation)" schon echt auf die Sprünge hilft um geistig weiter zu kommen.
Nun fehlt mir zwar noch jede Menge weitere Mathe um irgendwann auch mal nur ansatzweise sagen zu können was das Teil im Raum macht, aber da verlasse ich mich lieber auf euch/dich.
Dein Code sieht gut aus.
An einer Stelle hätte ich noch einen Satz Klammern spendiert beim casten:
DU: xn = (int16_t)(double) xn * x_norm;
ICH: xn = (int16_t) ( (double) xn * x_norm);
Essen ist fertig.
Und tschüß
Sternthaler
Lesezeichen