SBOS929A December 2018 – December 2021 OPT3004
PRODMIX
This register contains the result of the most recent light to digital conversion. This 16-bit register has two fields: a 4-bit exponent and a 12-bit mantissa.
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
E3 | E2 | E1 | E0 | R11 | R10 | R9 | R8 |
R | R | R | R | R | R | R | R |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
R7 | R6 | R5 | R4 | R3 | R2 | R1 | R0 |
R | R | R | R | R | R | R | R |
LEGEND: R = Read only |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
15:12 | E[3:0] | R | 0h | Exponent. These bits are the exponent bits. Table 8-8 provides further details. |
11:0 | R[11:0] | R | 000h | Fractional result. These bits are the result in straight binary coding (zero to full-scale). |
E3 | E2 | E1 | E0 | FULL-SCALE RANGE (lux) | LSB SIZE (lux per LSB) |
---|---|---|---|---|---|
0 | 0 | 0 | 0 | 40.95 | 0.01 |
0 | 0 | 0 | 1 | 81.90 | 0.02 |
0 | 0 | 1 | 0 | 163.80 | 0.04 |
0 | 0 | 1 | 1 | 327.60 | 0.08 |
0 | 1 | 0 | 0 | 655.20 | 0.16 |
0 | 1 | 0 | 1 | 1310.40 | 0.32 |
0 | 1 | 1 | 0 | 2620.80 | 0.64 |
0 | 1 | 1 | 1 | 5241.60 | 1.28 |
1 | 0 | 0 | 0 | 10483.20 | 2.56 |
1 | 0 | 0 | 1 | 20966.40 | 5.12 |
1 | 0 | 1 | 0 | 41932.80 | 10.24 |
1 | 0 | 1 | 1 | 83865.60 | 20.48 |
The formula to translate this register into lux is given in Equation 1:
where:
LSB_Size can also be taken from Table 8-8. The complete lux equation is shown in Equation 3:
A series of result register output examples with the corresponding LSB weight and resulting lux are given in Table 8-9. Note that many combinations of exponents (E[3:0]) and fractional results (R[11:0]) can map onto the same lux result, as shown in the examples of Table 8-9.
RESULT REGISTER (Bits 15:0, Binary) | EXPONENT (E[3:0], Hex) | FRACTIONAL RESULT (R[11:0], Hex) | LSB WEIGHT (lux, Decimal) | RESULTING LUX (Decimal) |
---|---|---|---|---|
0000 0000 0000 0001b | 00h | 001h | 0.01 | 0.01 |
0000 1111 1111 1111b | 00h | FFFh | 0.01 | 40.95 |
0011 0100 0101 0110b | 03h | 456h | 0.08 | 88.80 |
0111 1000 1001 1010b | 07h | 89Ah | 1.28 | 2818.56 |
1000 1000 0000 0000b | 08h | 800h | 2.56 | 5242.88 |
1001 0100 0000 0000b | 09h | 400h | 5.12 | 5242.88 |
1010 0010 0000 0000b | 0Ah | 200h | 10.24 | 5242.88 |
1011 0001 0000 0000b | 0Bh | 100h | 20.48 | 5242.88 |
1011 0000 0000 0001b | 0Bh | 001h | 20.48 | 20.48 |
1011 1111 1111 1111b | 0Bh | FFFh | 20.48 | 83865.60 |
Note that the exponent field can be disabled (set to zero) by enabling the exponent mask (configuration register, ME field = 1) and manually programming the full-scale range (configuration register, RN[3:0] < 1100b (0Ch)), allowing for simpler operation in a manually-programmed, full-scale mode. Calculating lux from the result register contents only requires multiplying the result register by the LSB weight (in lux) associated with the specific programmed full-scale range (see Table 8-8). See the Low-Limit Register for details.
See the configuration register conversion time field (CT, bit 11) description for more information on lux resolution as a function of conversion time.