Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-13 06:58
TSL45315 er en digital sensor for omgivelseslys. Det tilnærmer menneskelig øye -respons under en rekke lysforhold. Enhetene har tre valgbare integrasjonstider og gir en direkte 16-biters lux-utgang via et I2C-bussgrensesnitt. Enheten inneholder en fotodiodematrise, en integrerende analog-til-digital-omformer (ADC), signalbehandlingskretser, lux-beregningslogikk og et I2C-serielt grensesnitt på en enkelt CMOS-integrert krets for å gi lux-data. Her er demonstrasjonen med arduino nano.
Trinn 1: Hva du trenger..
1. Arduino Nano
2. TSL45315
3. I²C -kabel
4. I²C -skjold for Arduino Nano
Trinn 2: Tilkobling:
Ta et I2C -skjold for Arduino Nano og skyv det forsiktig over pinnene på Nano.
Koble deretter den ene enden av I2C -kabelen til TSL45315 -sensoren og den andre enden til I2C -skjoldet.
Tilkoblinger er vist på bildet ovenfor.
Trinn 3: Kode:
Arduino-koden for TSL45315 kan lastes ned fra vår GitHub repository-Dcube Store.
Her er lenken til det samme:
github.com/DcubeTechVentures/TSL45315…
Vi inkluderer bibliotek Wire.h for å lette I2c -kommunikasjonen av sensoren med Arduino -kortet.
Du kan også kopiere koden herfra, den er gitt som følger:
// Distribuert med en fri viljelisens.
// Bruk den slik du vil, profitt eller gratis, forutsatt at den passer inn i lisensene til de tilhørende verkene.
// TSL45315
// Denne koden er designet for å fungere med TSl45315_I2CS I2C Mini Module tilgjengelig fra i Dcube Store.
#inkludere
// TSL45315 I2C -adressen er 0x29 (41)
#define Addr 0x29
ugyldig oppsett ()
{
// Initialiser I2C -kommunikasjon som MASTER
Wire.begin ();
// Initialiser seriell kommunikasjon, sett overføringshastighet = 9600
Serial.begin (9600);
// Start I2C -overføring
Wire.beginTransmission (Addr);
// Velg kontrollregister
Wire.write (0x80);
// Normal operasjon
Wire.write (0x03);
// Stopp I2C -overføring
Wire.endTransmission ();
// Start I2C -overføring
Wire.beginTransmission (Addr);
// Velg konfigurasjonsregister
Wire.write (0x81);
// Multiplikator 1x, fargetone: 400 ms
Wire.write (0x00);
// Stopp I2C -overføring
Wire.endTransmission ();
forsinkelse (300);
}
hulrom ()
{
usignerte int -data [2];
// Start I2C -overføring
Wire.beginTransmission (Addr);
// Velg dataregister
Wire.write (0x84);
// Stopp I2C -overføring
Wire.endTransmission ();
// Be om 2 byte med data
Wire.requestFrom (Addr, 2);
// Les 2 byte med data
// luminans lsb, luminans msb
hvis (Wire.available () == 2)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
}
// Konverter dataene
float luminans = data [1] * 256 + data [0];
// Utdata til Serial Monitor
Serial.print ("Ambient Light Luminance:");
Serial.print (luminans);
Serial.println ("lux");
forsinkelse (300);
}
Trinn 4: Søknader:
Det brede dynamiske området til lyssensoren gjør den spesielt nyttig i utendørs applikasjoner der den utsettes for direkte sollys. Enheten er ideell for bruk i automatisk kontroll av gatelys og sikkerhet, billboard og bilbelysning. TSL45315 -enhetene kan også brukes i solid state og generell belysning for automatisk kontroll og høsting av dagslys for å maksimere energibesparelsen. Andre programmer inkluderer kontroll av bakgrunnsbelysning for å forlenge batterilevetiden og optimalisere synligheten i mobiltelefoner, nettbrett og bærbare datamaskiner.