-
        

Ergebnis 1 bis 4 von 4

Thema: Frage zu Winkelfunktionen

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    15.06.2008
    Ort
    Wien
    Beiträge
    162

    Frage zu Winkelfunktionen

    Anzeige

    Hi Leute,
    In letzter Zeit habe ich mich ein wenig mit Winkelfunktionen u.Ä beschäftigt.
    Doch leider habe ich nicht herausfinden können wie diese auf einem AVR brechnet werden. (Tabelle oder on-the-fly)

    Mein Programm benötigt die Werte nur mit 16 Bit Genauigkeit aber beim AVR sind sowohl float als auch double 32 Bit lang.
    Die Frage ist letzten Endes wie es am besten zu lösen ist wenn das Programm möglichst schnell laufen sollte.
    Wäre es nicht am schnellsten das ganze wie hier: http://www.mikrocontroller.net/artic...Interpolation) zu lösen oder doch etwa ganz anders??
    Und welche Rechenweise ist auf dem µC besser/schneller : Fließkommaberechnungen oder Integerrechnungen??

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von Felix G
    Registriert seit
    29.06.2004
    Ort
    49°32'N 8°40'E
    Alter
    34
    Beiträge
    1.780
    Und welche Rechenweise ist auf dem µC besser/schneller : Fließkommaberechnungen oder Integerrechnungen??
    Ganz klar Integer (Festkomma), denn ein AVR hat keine FPU und ist daher extrem langsam bei floats.

    Der Ansatz aus dem mikrocontroler.net Artikel erscheint mir sinnvoll, wenn man einen schnellen sinus benötigt. Eine andere Möglichkeit wäre den Sinus durch ein Polynom zu approximieren, denn das kann man auch noch halbwegs schnell berechnen (aber so schnell wie mit einer LUT, bzw. LUT + Interpolation wirds nicht).
    So viele Treppen und so wenig Zeit!

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    15.06.2008
    Ort
    Wien
    Beiträge
    162
    Danke, dann werd ich das ganze in den nächsten Tagen mal ausprobieren!

    LG XBert

  4. #4
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    So klar ist es nicht, das ein Loockup Tabbelle schneller ist als das Polynom. Das hängt etwas von der funktion ab, und der erforderlichen Genauigkeit.


    So viel langsamer müßen Fließkommazahlen auch nicht sein, vor allem wenn man nicht das erste Bit noch sparen will, weil es immer 1 sein muß. Bei Multiplication und Division ist der Unterschied gar nicht so groß. Bei Addition dagegen schon merklich. Wenn man die Wahl hat, können 32 Bit Floats schneller sein als 64 Bit Integers.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •