www.mikrocontroller.net

Forum: Compiler & IDEs const rom char TEMP_M_TABLE[]


Autor: Hiko Fairbanks (cerberus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
const rom char TEMP_M_TABLE[] = {127,126,126,126,126,126,124,119,114,109,106,102,99,96,93,91,88,86,84,82,80,78,76,75,73,71,70,68,67,66,64,63,62,60,  59,58,57,56,54,53,52,51,50,49,48,47,46,45,44,43,42,41,40,39,38,37,36,35,34,33,32,31,30,29,28,27,26,25,24,23,22,21,  20,19,18,16,15,14,13,12,10,9,8,6,5,3,1,0,-2,-4,-6,-8,-11,-14,-17,-21,-25,-32,-42,-127};

Was ist das?
Wozu dient es?
Wie bewertet man das?
Wie benutzt man das?

Autor: Timmo H. (masterfx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sieht aus wie eine Wertetabelle die im Flash abgelegt ist (daher nicht 
erst in den RAM geladen wird. Könnte für PWM oder eine 
Ausgleichskennline für einen Sensor sein. Kommt halt drauf an wo du das 
her hast.

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hiko Fairbanks wrote:

> Was ist das?
> Wozu dient es?
> Wie bewertet man das?
> Wie benutzt man das?

http://de.wikipedia.org/wiki/Lookup-Tabelle

Autor: Hiko Fairbanks (cerberus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
sie gehört zu einem NTC, aber ich verstehe nicht wie ich daraus ein 
Temperatur einem Widerstandswert oder einem ADC-Wert zuordnen kann.

Und wie spricht man so einen Teufel überhaupt an?

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ganz einfach:

Pseudocode:

ReellerWert = TEMP_M_TABLE[Messwert];

Wobei Messwert das digitalisierte Sensorsignal. Zu jedem Binärwert, den 
der ADC für den NTC liefert, passt genau ein reeller Temperatur-Wert aus 
der Tabelle.

Autor: Hiko Fairbanks (cerberus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
... gut.
Woher weiss die Tabelle, da sie ja nur einen Wert kennt welcher Wert 
dazu passt?
Der ADC liefert also z.B. 673, was einer Temperatur von 11°C entspricht.
663 ist der Wert für 12°
674 der Wert für 13°
usw

Autor: Timmo H. (masterfx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Tabelle weiß das nicht. Jemand hat sich vorher die Kennline des NTCs 
angeguckt oder eben selbst aufgenommen und dann eine Ausgleichskennline 
erstellt (eben die Tabelle)

Autor: Hiko Fairbanks (cerberus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eben, der Tabelle fehlen die Vergleichswerte. Einziger 
Informationsgehalt ist also allenfalls die Position in der Tabelle. Für 
eine 10 Bit-Wandlung müsste die Tabelle dann doch aber 1024 Werte haben?
Gibt es irgend wo ein leicht_ _verständliches Beispiel, wie man an die 
Werte in der Tabelle dann wieder rankommt?

Autor: Johannes M. (johnny-m)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hiko Fairbanks wrote:
> Eben, der Tabelle fehlen die Vergleichswerte. Einziger
> Informationsgehalt ist also allenfalls die Position in der Tabelle.
Das genügt ja auch!

> Für eine 10 Bit-Wandlung müsste die Tabelle dann doch aber 1024 Werte
> haben?
Richtig.

> Gibt es irgend wo ein leicht_ _verständliches Beispiel, wie man an die
> Werte in der Tabelle dann wieder rankommt?
Das ist ein ganz einfaches Array, bei dem der benötigte Wert über den 
Index ausgelesen wird.

Für eine 10-Bit-Wandlung müsste ein Array mit 1024 Elementen angelegt 
werden. Der dem Wandlungsergebnis entsprechende Wert ist dann ganz 
einfach
Wert = Tabelle[ADC_Ergebnis];
Wenn ADC_Ergebnis z.B. 472 ist, dann wird der Wert mit dem Index 472 
(also der 473. Wert in dem Array, der erste ist der mit Index 0) 
zurückgegeben. Ist alles ganz einfach, ohne schwarze Magie oder so.

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.