Stap 3: Code:
De code van de arduino voor BH1715 kan worden gedownload van onze github archief-ControlEverythingCommunity
Hier is de link voor hetzelfde:
https://github.com/ControlEverythingCommunity/BH17...
Het gegevensblad van BH1715 kan hier worden gevonden:
https://S3.amazonaws.com/controleverything.Media/c...
We nemen de bibliotheek Wire.h om de I2c communicatie van de sensor met de Arduino board.
U kunt ook de code kopiëren vanaf hier, het wordt als volgt gegeven:
Gedistribueerd met een licentie van de vrije wil.
Gebruik het elke manier wilt u, op de winst of het gratis, mits het past in de licenties van de bijbehorende werken.
BH1715
Deze code is ontworpen om te werken met de BH1715_I2CS I2C Mini Module beschikbaar vanaf ControlEverything.com.
https://www.controleverything.com/content/Light?s...
#include < Wire.h >
BH1715 I2C adres is 0x23(35)
#define Addr 0x23
VOID Setup
{
I2C communicatie als MASTER initialiseren
Wire.begin();
Initialiseren van seriële communicatie, set baud-rate = 9600
Serial.begin(9600);
I2C-overdracht starten
Wire.beginTransmission(Addr);
Macht op de opdracht verzenden
Wire.write(0x01);
Stoppen met I2C transmissie
Wire.endTransmission();
I2C-overdracht starten
Wire.beginTransmission(Addr);
Continumeting opdracht verzenden
Wire.write(0x10);
Stoppen met I2C transmissie
Wire.endTransmission();
delay(300);
}
void loop
{
unsigned int gegevens [2];
Verzoek 2 byte van de gegevens
Wire.requestFrom (Addr, 2);
Lees 2 bytes aan gegevens
ALS msb, ALS lsb
if(Wire.available() == 2)
{
gegevens [0] = Wire.read();
gegevens [1] = Wire.read();
}
delay(300);
de gegevens converteren
zweven luminantie = ((gegevens [0] * 256) + data[1]) / 1.20;
Uitvoergegevens naar seriële monitor
Serial.Print ("Ambient licht luminantie:");
Serial.Print(Luminance);
Serial.println ("lux");
}