native CalcTable(key, &value, const table[][TablePoint], size = sizeof table);
sucht einen bestimmten Wert in der "key"-Spalte der übergebenen Stützpunktabelle und liefert den
entsprechenden Wert der "value"-Spalte der Tabelle. Liegt der gesuchte Wert zwischen zwei
Stützpunkten, wird der Rückgabewert zwischen den zwei angrenzenden "value"-Spaltenwerten linear
interpoliert (Geradengleichung: y = k*x + d). Mit dieser Funktion können nicht lineare Kennlinien (z.B.
Zusammenhang ADC-Wert -> Temperatur) nachgebildet werden.
Parameter
key
value
table
size
Rückgabewert
Hinweis: Ergänzende Erklärung zur Stützpunkttabelle "
Die Tabellenzeilen können in einem x/y-Koordinatensystem dargestellt werden. Die Werte der "key"-
Spalte werden dabei auf der x-Achse aufgetragen, die dazugehörenden Werte der "value"-Spalte auf der
y-Achse.
Darstellung der Stützpunkttabelle als x/y-Koordinatensystem
native CalcTableF(Float:key, &Float:value, const table[][TablePointF], size = sizeof table);
die Funktionsweise entspricht der "CalcTable" Funktion. Der Unterschied besteht darin, dass "Float"
der Datentyp für alle Elemente der "CalcTableF" Funktion ist.
174
Wert, der für die Suche herangezogen wird
enthält das Ergebnis der Berechnung durch die Funktion
Die Tabelle, die durchsucht wird, muss vom Typ "TablePoint" sein.
Anzahl der Zeilen der Tabelle
OK, wenn der entsprechende Wert gefunden wurde
l
TAB_ERR_FLOOR, wenn der gesuchte Wert kleiner als der erste
l
Tabelleneintrag ist. "value" beinhaltet den ersten Tabelleneintrag.
TAB_ERR_CEIL, wenn der gesuchte Wert größer als der letzte
l
Tabelleneintrag ist. "value" beinhaltet den letzten Tabelleneintrag.
< OK, wenn ein anderer Fehler auftritt (siehe "Returncodes für allgemeine
l
Zwecke" im Kapitel "Konstanten" auf Seite 120).
Erklärung
Erklärung
"
table
Rev. 01