Forum: Mikrocontroller und Digitale Elektronik Mathematische Funktion mit NXP LPC922


von Florian (Gast)


Lesenswert?

Hallo an alle Threadleser,

ich fang zur Zeit an zu Hause etwas mit Mikrocontrollern "rumzuspielen". 
Da ich noch einen alten LPC922 von NXP habe würde ich den erstmal gern 
weiterhin verwenden. Nun zur Frage, weiß jemand ob und wie es mit dem 
möglich ist Mathematische Funktionen zu nutzen? Ich müsste eine Variable 
mit einer Formel die z.b. y=(Variable^(1/0,773)+200)/1000 rechnen. Ist 
so was möglich? Welche Bibliothek könnte funktionieren?

von Oliver J. (skriptkiddy)


Lesenswert?

Florian schrieb:
> y=(Variable^(1/0,773)+200)/1000

Kann jede Standard C-Libary. Dazu muss man es aber noch etwas 
umschreiben:
1
x^y = exp(y*ln(x))

von Florian (Gast)


Lesenswert?

Skript Kiddy schrieb:
> Kann jede Standard C-Libary

Scheint aber irgendwie nicht ohne zusätzliche Bibliothek gehen. Eclipse 
sagt beim anwenden deiner Formel: Syntax error und invalid octal format 
encountered

von Johann L. (gjlayde) Benutzerseite


Lesenswert?

0,773 → 0.773

Zudem gibt't eine pow-Funktion und
1
#include <math.h>
 braucht's auch. Und -lm beim Linken falls noch nicht vorhanden.

Das unter der Voraussetzung, daß es um C geht.

von Florian (Gast)


Lesenswert?

Danke, das mit dem Komma war natürlich ein dummer Fehler von mir. Es 
geht zwar um C, aber da es auf einem LPC Mikrocontroller laufen soll ist 
als Compiler noch der Small Device C Compiler dabei, wo ich mir eben 
sehr unsicher bin ob es damit und auf den verwendeten Mikrocontroller 
überhaupt funktioniert. Aber ich werde es jetzt mit math.h mal 
probieren. Vielen Dank schonmal.

von Florian (Gast)


Lesenswert?

Mit der math.h wird leider die Speichergröße die ich auf dem 
Mikrocontroller habe überschritten. Ist es vielleicht möglich ohne die 
math.h einzubinden y=x^z zu rechnen? Wichtig ist dabei das x und z 
unsigned integer sein müssen.

von Johann L. (gjlayde) Benutzerseite


Lesenswert?


von Florian (Gast)


Lesenswert?

Johann L. schrieb:
> Johann L.

Das nützt leider nichts, da ich keine natürlich Potenz sondern eine Zahl 
mit Komma zum potentieren nehmen muss (also z.b. x^4,32).

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
Noch kein Account? Hier anmelden.