Menu
CoddyTech

Pino de acionamento do sensor de luz

Parte da seção Entradas do Journey de Arduino da Coddy. Lição 14 de 22.

O módulo de luz tem um pequeno chip próprio, um comparador, que define o limiar para você. Ele compara a luz com um nível definido pelo pequeno parafuso em um módulo real e aciona o pino DO: LOW quando está claro, HIGH quando está escuro. Nesta placa, o nível é metade da luminosidade.

DO é um sinal digital, então você o lê como um botão, com digitalRead(). O próprio módulo aciona o pino, então não precisa de pull-up: um simples INPUT é o adequado.

pinMode(7, INPUT);

if (digitalRead(7) == HIGH) {
  // escuro
}

Para imprimir uma mensagem somente quando a luz mudar, use a ideia de borda das lições sobre botões: compare a leitura com a da última vez.

challenge icon

Desafio

Fácil

O DO do módulo está no pino 7 e o LED no pino 13:

  • defina o pino 7 como INPUT
  • acenda o LED enquanto DO estiver em HIGH (escuro); caso contrário, apague-o
  • quando a leitura mudar, imprima Dark ou Bright

Pressione Run, mova o controle deslizante de luz para além do meio nos dois sentidos e, em seguida, Check.

Experimente você mesmo

const int sensorPin = 7;
const int ledPin = 13;

int lastDark = LOW;

void setup() {
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
  // configure o pino do sensor como INPUT
}

void loop() {
  // leia DO e acenda o LED no escuro
  // imprima Dark ou Bright quando a leitura mudar
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Entradas

Pratique por conta própria: Playground de Arduino