www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik (AVR) ADC Rechnung vs Lookuptable Verständnissfrage


Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Forum,

ich habe eine Verständnisfrage zum ADC. (in meinem Fall atmega8)

Der ADC ist ein 10-bit Wandler und kann 1024 zustände (0-1023) annehmen.
Will ich nun von einem angeschlossenem Widerstand (z.B. Poti, NTC etc.) 
auf eine physikalische Grösse schließen (z.B. Temperatur etc.) muss ich 
(ständig) eine Reihe von >8 bit Berechnungen machen. (ADC Register --> 
Volt --> Physikalische Grösse)

Wäre es nicht einfacher, oder zumindest 'legitim' eine Lookuptable mit 
den 1024 möglichen Zuständen des ADC in den AVR zu speichern ?

z.B. die Ergebnissregister des ADC sind high:00000010 low:00000000 also 
512d. Bei Uref =5V wären das 2.5V. Könnte dann nicht einfach an der 
512sten Stelle der Tabelle 2500 (in mv) stehen?

Ist es richtig, dass der Speicherbedarf für diese LUT dann (mit 16bit = 
2Byte) 2Byte*1024 Werte = 2048Byte=2KB beträgt ? Ist dies der Grund, 
warum man ADC Anwendungen nicht mit LUTs löst ?

Danke für Lesen und Antworten

Autor: Route_66 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Genau!
Tabellen macht man nur wenn man entweder
a) zu faul oder nicht in der Lage ist, eine vorgegebene Formel in 
Software zu "giessen",
b) die Berechnung zu lange dauert und man grosse Geschwindigkeiten der 
Datenverarbeitung braucht,
c) ein so kurioser Zusammenhang zwischen Eingangs- und Ausgangsdaten 
besteht, dass keine Formel möglich ist oder aufwändiger als eine Tabelle 
wird,
d) oder eiene Kombination aus a) bis c).

Autor: Moritz E. (devmo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So furchtbar sind die umrechnungen ja auch nicht. ein, zwei muls und 
eine handvoll adds, das ist weitaus fixer als der ADC für ein sample 
braucht. Für solche einfachen add/mul Rechnungen lohnt sich wegen 
vorhandenem hardware multiplier eine LUT nicht. Der Zugriff auf die LUT 
wird kaum schneller sein. LUTs machen sinn für nichtlineares wie SQRT 
und vielleicht DIV

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.