1 | |
Was ist das? Wozu dient es? Wie bewertet man das? Wie benutzt man das?
|
Anzeige
|
const rom char TEMP_M_TABLE[]
Was ist das? Wozu dient es? Wie bewertet man das? Wie benutzt man das? 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. Hiko Fairbanks wrote: > Was ist das? > Wozu dient es? > Wie bewertet man das? > Wie benutzt man das? http://de.wikipedia.org/wiki/Lookup-Tabelle 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? 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. ... 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 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) 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? 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
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 schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|