2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
TSL45315 é um sensor digital de luz ambiente. Ele se aproxima da resposta do olho humano sob uma variedade de condições de iluminação. Os dispositivos têm três tempos de integração selecionáveis e fornecem uma saída lux direta de 16 bits por meio de uma interface de barramento I2C. O dispositivo contém uma matriz de fotodiodo, um conversor analógico-digital integrado (ADC), circuito de processamento de sinal, lógica de cálculo de lux e uma interface serial I2C em um único circuito integrado CMOS para fornecer dados lux. Aqui está sua demonstração com arduino nano.
Etapa 1: O que você precisa..
1. Arduino Nano
2. TSL45315
3. Cabo I²C
4. Escudo I²C para Arduino Nano
Etapa 2: Conexão:
Pegue um escudo I2C para Arduino Nano e empurre-o suavemente sobre os pinos do Nano.
Em seguida, conecte uma extremidade do cabo I2C ao sensor TSL45315 e a outra extremidade à blindagem I2C.
As conexões são mostradas na imagem acima.
Etapa 3: Código:
O código do Arduino para TSL45315 pode ser baixado de nosso repositório GitHub-Dcube Store.
Aqui está o link para o mesmo:
github.com/DcubeTechVentures/TSL45315…
Incluímos a biblioteca Wire.h para facilitar a comunicação I2c do sensor com a placa Arduino.
Você também pode copiar o código daqui, ele é fornecido da seguinte forma:
// Distribuído com uma licença de livre arbítrio.
// Use-o como quiser, com ou sem lucro, desde que se enquadre nas licenças das suas obras associadas.
// TSL45315
// Este código foi desenvolvido para funcionar com o Mini Módulo TSl45315_I2CS I2C disponível na Dcube Store.
#incluir
// O endereço TSL45315 I2C é 0x29 (41)
#define Addr 0x29
void setup ()
{
// Inicializar a comunicação I2C como MASTER
Wire.begin ();
// Inicialize a comunicação serial, defina a taxa de transmissão = 9600
Serial.begin (9600);
// Iniciar a transmissão I2C
Wire.beginTransmission (Addr);
// Selecione o registro de controle
Wire.write (0x80);
// Operação normal
Wire.write (0x03);
// Pare a transmissão I2C
Wire.endTransmission ();
// Iniciar a transmissão I2C
Wire.beginTransmission (Addr);
// Selecionar registro de configuração
Wire.write (0x81);
// Multiplicador 1x, Tonalidade: 400ms
Wire.write (0x00);
// Pare a transmissão I2C
Wire.endTransmission ();
atraso (300);
}
void loop ()
{
dados internos não assinados [2];
// Iniciar a transmissão I2C
Wire.beginTransmission (Addr);
// Selecione o registro de dados
Wire.write (0x84);
// Pare a transmissão I2C
Wire.endTransmission ();
// Solicita 2 bytes de dados
Wire.requestFrom (Addr, 2);
// Lê 2 bytes de dados
// luminância lsb, luminância msb
if (Wire.available () == 2)
{
dados [0] = Wire.read ();
dados [1] = Wire.read ();
}
// Converta os dados
luminância flutuante = dados [1] * 256 + dados [0];
// Saída de dados para Monitor Serial
Serial.print ("Luminância de luz ambiente:");
Serial.print (luminância);
Serial.println ("lux");
atraso (300);
}
Etapa 4: Aplicativos:
A ampla faixa dinâmica do sensor de luz ambiente o torna particularmente útil em aplicações externas, onde é exposto à luz solar direta. O dispositivo é ideal para uso no controle automático de luzes de rua e segurança, outdoor e iluminação automotiva. Os dispositivos TSL45315 também podem ser usados em estado sólido e iluminação geral para controle automático e captação de luz do dia para maximizar a conservação de energia. Outras aplicações incluem o controle da luz de fundo da tela para estender a vida útil da bateria e otimizar a visibilidade em telefones celulares, tablets e notebooks.