ESP8266 - LED

Este tutorial ensina como usar o ESP8266 para controlar um LED. Em detalhes, vamos aprender:

Hardware Necessário

1×ESP8266 NodeMCU ESP-12F
1×Alternatively, ESP8266 D1 Mini NodeMCU ESP-12F
1×Alternatively, ESP8266 NodeMCU ESP-12E (Uno-form)
1×Micro USB Cable
1×Alternatively, ESP8266 NodeMCU ESP-12F (SMD-form)
1×Cabo USB Tipo-A para Tipo-C (para PC com USB-A)
1×Cabo USB Tipo-C para Tipo-C (para PC com USB-C)
1×LED Kit
1×LED (red)
1×LED Module
1×(Alternativa) Button and LED Kit
1×220Ω Resistor
1×Protoboard
1×Fios Jumper
1×(Recomendado) Placa de Expansão com Bornes de Parafuso para ESP8266

Or you can buy the following kits:

1×DIYables Sensor Kit (18 sensors/displays)
Divulgação: Alguns dos links desta seção são links de afiliado da Amazon. Podemos receber uma comissão pelas compras feitas por meio desses links, sem custo adicional para você. Agradecemos o seu apoio.

Buy Note: Use the LED Module for easier wiring. It includes an integrated resistor.

Sobre o LED

A Pinagem do LED

O LED tem dois pinos:

  • O pino Cátodo(-): deve ser conectado ao negativo da fonte de alimentação
  • O pino Ânodo(+): deve ser conectado ao positivo da fonte de alimentação por meio de um resistor
Pinagem do LED

Como Funciona

A tabela abaixo mostra o estado do LED de acordo com a forma como a alimentação é conectada aos pinos do LED

Pino cátodo(-) do LED Pino ânodo(+) do LED Condição Estado do LED
GND VCC por um resistor LIGADO
GND PWM por um resistor LIGADO, brilho variável
GND GND qualquer DESLIGADO
VCC VCC qualquer DESLIGADO
VCC GND qualquer queimado! cuidado!
Como o LED funciona

Como mostrado na tabela acima, ao gerar um sinal PWM no ânodo (+) de um LED, o brilho do LED varia de acordo com o valor do PWM. Isso foi explicado em detalhes no tutorial ESP8266 fade LED.

※ Nota:

  • Para a maioria dos LEDs, é necessário um resistor para proteger o LED contra a corrente. Há duas opções para colocar o resistor: entre o ânodo(+) e o VCC, ou entre o cátodo(-) e o GND. O valor do resistor depende da especificação do LED.
  • Alguns tipos de LEDs têm um resistor embutido. Nesse caso, o resistor não é necessário.

ESP8266 - LED

Quando um pino do ESP8266 é configurado como saída digital, ele pode ser programado para ter a tensão GND ou VCC.

Conecte o pino do ESP8266 ao pino ânodo(+) do LED com um resistor. Isso nos permitirá controlar o estado do LED por meio de programação.

Diagrama de Ligação

Diagrama de ligação do LED com ESP8266 NodeMCU

This image is created using Fritzing. Click to enlarge image

Para mais informações, veja Pinagem do ESP8266 e como alimentar o ESP8266 e outros componentes.

Como Programar

  • Configure o pino de um ESP8266 no modo de saída digital usando a função pinMode(). Por exemplo, o pino GPIO9:
pinMode(D5, OUTPUT);
  • Programe o pino para GND usando a função digitalWrite() para DESLIGAR o LED:
digitalWrite(D5, LOW);
  • Programe o pino para VCC usando a função digitalWrite() para LIGAR o LED.
digitalWrite(D5, HIGH);

Código ESP8266 para controlar o LED

#define LED_PIN D5 // The ESP8266 pin D5 connected to resistor void setup() { pinMode(LED_PIN, OUTPUT); } void loop() { digitalWrite(LED_PIN, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(LED_PIN, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second }

Passos Rápidos

Para começar com o ESP8266 no Arduino IDE, siga estes passos:

  • Veja o tutorial como configurar o ambiente para o ESP8266 no Arduino IDE se esta for a primeira vez que você usa o ESP8266.
  • Ligue os componentes como mostrado no diagrama.
  • Conecte a placa ESP8266 ao seu computador usando um cabo USB.
  • Abra o Arduino IDE no seu computador.
  • Escolha a placa ESP8266 correta, como (por exemplo, NodeMCU 1.0 (ESP-12E Module)), e a respectiva porta COM.
  • Clique no botão Upload do Arduino IDE para compilar e fazer o upload do código para a placa ESP8266.
Como fazer o upload do código para o ESP8266 NodeMCU usando o Arduino IDE
  • Confira o resultado: O LED interno alterna entre LIGADO e DESLIGADO em um padrão regular a cada segundo.

Explicação do Código

Confira a explicação linha por linha contida nos comentários do código-fonte!

※ Nota:

O código acima usa delay(). Essa função impede que o ESP8266 realize outras tarefas durante o período de espera. Se o seu projeto exige que certas tarefas sejam concluídas, você deve evitar bloquear o ESP8266 utilizando o método não bloqueante para Arduino.

Vídeo

Conhecimento Adicional

  • Em um dado momento, um pino só pode executar uma única tarefa. Se ele já foi atribuído a outra função (por exemplo, entrada digital, entrada analógica, PWM, UART, etc.), então ele NÃO deve ser usado como saída digital para controlar um LED. Por exemplo, se usamos a função Serial.println(), os pinos GPIO1 (TX) e GPIO3 (RX) não devem ser usados para nenhuma outra finalidade, pois são reservados para a Serial.
  • Este tutorial demonstra como usar o pino de saída de um ESP8266 para controlar um LED. Podemos usar este código para LIGAR/DESLIGAR qualquer aparelho, até mesmo máquinas grandes.
  • Para dispositivos/máquinas que exigem uma alimentação maior que 5 volts e/ou alto consumo de corrente, um relé deve ser usado entre o pino de saída e o dispositivo/máquina. Mais informações podem ser encontradas em ESP8266 - Relé.

Referências de Funções

※ NOSSAS MENSAGENS

  • Fique à vontade para compartilhar o link deste tutorial. Porém, por favor, não use nosso conteúdo em outros sites. Investimos muito esforço e tempo para criar este conteúdo, por favor respeite nosso trabalho!