Forum: Mikrocontroller und Digitale Elektronik Sinuns Funktion in C für Atmega128


von Dennis S. (supernova)


Lesenswert?

Hi,

ich suche eine einfache Sinusfunktion für einen Atmel, am besten in c. 
Ich will keine Filter berechnen sondern nur die Postion von Uhrzeigern 
auf einem Grafikdisplay ausrechnen, müssen also nicht hochgenau sein.

Gruß,
Dennis

von P. S. (Gast)


Lesenswert?

Da bietet sich wohl eine kleine Tabelle an.

von Grallihurkh (Gast)


Lesenswert?

Gibt's da keine math-library, die auch sin() und cos() hat?

von Gast (Gast)


Lesenswert?

diese librarys haben die Sinuswerte auch nur in einer Tabelle liegen

von Dennis S. (supernova)


Lesenswert?

..irgendwo habe ich mal einen einfachen schnellen udn genialen jedoch 
nicht 100%ig genauen algorythmus gesehen, keine ahnung mehr wo.

Gruß,
d.

von Grallihurkh (Gast)


Lesenswert?

Na gut.

Und es stimmt schon, man kann auch in Python einmal 60 Zeigerendpunkte 
ausrechnen und dann in eine Tabelle überführen.

Obwohl ein glatter laufender Stunden- und Minutenzeiger mir besser 
gefiele).

von Dennis S. (supernova)


Angehängte Dateien:

Lesenswert?

läuft auf einer LED Matrix, ist also so und so nicht fließend... :-)

Gruß,
Dennis

von asdf (Gast)


Lesenswert?

Einfach zwischen zwei Punkten (von den 60 aus der Liste) linear 
interpolieren.

von Johann L. (gjlayde) Benutzerseite


Lesenswert?

Dennis S. schrieb:
> läuft auf einer LED Matrix, ist also so und so nicht fließend... :-)

Für so eine kleine Auflösung würde ich keinen Code bemühen, sondern wie 
oben geschrieben ne Tabelle hernehmen.

Für die geforderte Auflösung ist das schneller und kleiner als ne 
Berechnung.

Ansonsten im Wiki:
[[AVR_Arithmetik/Sinus_und_Cosinus_(Lineare_Interpolation)]]
[[AVR_Arithmetik/Sinus_und_Cosinus_(CORDIC)]]

Johann

Edith: Leider gehen die Links ins Wiki nicht, also von Hand 
durchkrabbeln...

http://www.mikrocontroller.net/articles/AVR_Arithmetik/Sinus_und_Cosinus_%28Lineare_Interpolation%29

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.