Ik zou alle verwarrende info over opwarmende leds en zo vergeten.
Ervan uitgaand dat UV_AF = 0 meet deze sensor continue de instraling (UVA, UVB, visible noise en IR noise) gedurende de ingestelde tijd (UV_IT): 50/100/200/400/800 ms. De resultaten worden na de meting weggeschreven in een aantal 16 bits registers. De waarden in deze registers blijven beschikbaar (en kunnen worden uitgelezen) tot er een nieuwe meting is gedaan.
Als je bij een toenemende UV_IT geen toename van de waarden in die registers ziet dan is de sensor verduisterd of defect. Of je maakt ergens een fout:
- In de hardware (1,7V < Vdd < 3,7V, SDA+SCL pullups)
- Bij het setten van UV_IT (1:0:1, 1:1:0 en 1:1:1 zijn reserved)
- Bij het uitlezen van de registers (16 bits waarde steeds in twee 8 bits registers, LSB en MSB, uitlezen met I2C repeated start)
- Bij het omzetten van de L en de H byte naar een 16 bits waarde (eerste waarde is LSB, tweede waarde is MSB)
Als je de waarden eenmaal goed ingelezen krijgt is het nog een klusje om die om te zetten naar een UV-Index. Daarover hier meer:
https://github.com/schizobovine/VEML6075