Helligkeitssensor Threshold festlegen

Gast #4817644
Lesenswert?

Hallo,

versuche gerade eine unter/obere Threshold für den MAX44009 
einzustellen.

Das geht laut Datenblatt so:

Lower lux thres. = 2^Exponent x mantissa x 0,045
Exponent = 8xLE3 + 4xLE2 + 2LE1 + LE0
Mantissa = 128xLM7 + 64xLM6 + 32LM5 + 16LM4

Jetzt hab ich mir erstmal überlegt, dass die Mantissa 16n mit n = 
0,1,... 15
und Exponent in [0,15] liegt.

Um eine Übersicht zu bekommen, habe ich mir das in Excel ausgerechnet. 
(Anhang: x Exponent, y Mantissa)

Nun fällt direkt auf, dass sich einige der Werte doppeln was mich 
irritiert. (Hab ein paar markiert) Hätte sich Maxim hier nicht eine 
bessere Möglichkeit ausdenken können, dass Problem zu lösen? Versteh 
ichs nicht? Macht mans anders?

Um den Threshold dynamisch vom MCU einstellen zu können würde ich mir 
die Werte sortieren und doppelte Einträge löschen und das dann in ein 
array schreiben. Macht man das so? Oder gibt es eine einfache 
Möglichkeit?
Angehängte Dateien:
Gast #4817816
Lesenswert?

In der Tabellen Datei steht nichts anders drin als das hier:
1
double lux[20][20];
2
int i,j;
3
for(i = 0; i < 241; i+=16) {
4
  for(j = 0; j < 16; j++) {
5

6
    lux[i/16][j] = 0.045 * pow(2,j) * i;
7
    printf("%f \t", lux[i/16][j]);
8
  }
9
  printf("\n");
10
}

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren