mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Fading-Berechnung local?


Autor: ich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Um ein gleichmäßiges LED-Fading hinzubekommen, muss man ja die 
Helligkeit (PWM-Werte) mit einer logarithmus-Funktion ausrechnen. In der 
Anleitung auf dieser Seite 
(http://www.mikrocontroller.net/articles/LED-Fading), kann man eine 
Excel-Tabelle runterladen und die Werte berechnen lassen, um sie danach 
in einem Array im Code zu haben. Da stelle ich mir die Frage, ob es 
nicht einfacher ist, diese Berechnung auf dem µC selber zu machen, da 
die math-lib von C ja alles nötige hat. Man würde so u.U. viel 
Speicherplatz sparen. Ist diese Berechnung so aufwendig/rechenlastig, 
dass sich das nicht lohnt oder warum wird das mit Hilfe vom Array 
gemacht?

Autor: Lehrmann Michael (ubimbo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich schrieb:
> Ist diese Berechnung so aufwendig/rechenlastig

Ja schau mal nach wieviele Operationen dafür nötig sind ... das bekommt 
man nie und nimmer in der Zeit hin.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@  ich (Gast)

>Helligkeit (PWM-Werte) mit einer logarithmus-Funktion ausrechnen.

Potenzfunktion.

>in einem Array im Code zu haben.

Einfach und kompakt.

> Da stelle ich mir die Frage, ob es
>nicht einfacher ist, diese Berechnung auf dem µC selber zu machen, da
>die math-lib von C ja alles nötige hat.

Nö, denn die Funktionen brauchen recht viel Speicherplatz. Und wenn man 
sie just in Time nutzt, kostet das einiges an zeit.

> Man würde so u.U. viel Speicherplatz sparen.

Nö, siehe oben.

>dass sich das nicht lohnt oder warum wird das mit Hilfe vom Array
>gemacht?

Das Array hat bei max. 16 Bit PWM mit 256 exponentiellen Stufen 256 
Einträge a 16 Bit, macht 512 Byte. Wenn deine Funktion zur Berechnung 
kleiner ist und der Zeitaufwand nicht ins Gewicht fällt, kann man es mit 
einer Funktion machen. Wenn nicht, nimm das Array.

MFG
Falk

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.