ESP8266 - Matriz de LED Bluetooth

Este tutorial ensina você a usar o ESP8266 para controlar um display de matriz de LED com um celular por meio de Bluetooth ou BLE.

Teremos dois módulos diferentes para escolher: o HC-05 para Bluetooth Clássico (Bluetooth 2.0) e o HM-10 para Bluetooth Low Energy (BLE, Bluetooth 4.0). O tutorial traz instruções passo a passo para os dois módulos.

Para enviar mensagens do celular para o ESP8266, usaremos o Bluetooth Serial Monitor App. Quando a mensagem for recebida pelo ESP8266, ela será exibida no display de matriz de LED.

ESP8266 NodeMCU LED matrix display Bluetooth

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×Módulo Bluetooth HC-05
1×(Alternativa) HM-10 BLE Module
1×LED matrix display
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.

Sobre o Display de Matriz de LED e o Módulo Bluetooth

Antes de começar este tutorial, é recomendável que você tenha um entendimento básico de displays de matriz de LED e módulos Bluetooth, incluindo suas pinagens, como eles funcionam e como programá-los. Se você não conhece esses assuntos, dê uma olhada nos tutoriais a seguir para mais informações:

Diagrama de Ligação

  • Para controlar o display de matriz de LED com Bluetooth Clássico, o módulo Bluetooth HC-05 deve ser conectado ao ESP8266 conforme o diagrama de ligação abaixo:
The wiring diagram between ESP8266 NodeMCU and LED matrix display Bluetooth

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.

  • Para controlar o display de matriz de LED com BLE, você pode usar o módulo Bluetooth HM-10 e conectá-lo ao ESP8266 de acordo com o diagrama de ligação abaixo:
The wiring diagram between ESP8266 NodeMCU and LED matrix display BLE

This image is created using Fritzing. Click to enlarge image

Código ESP8266 - controla o display de matriz de LED via Bluetooth/BLE

O código a seguir se aplica tanto ao módulo Bluetooth HC-05 quanto ao módulo BLE HM-10. Ele funcionará corretamente com qualquer um deles.

/* * Este código de ESP8266 NodeMCU foi desenvolvido por pt.newbiely.com * Este código de ESP8266 NodeMCU é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/esp8266/esp8266-bluetooth-led-matrix */ #include <SoftwareSerial.h> #include <MD_Parola.h> #include <MD_MAX72xx.h> #define HARDWARE_TYPE MD_MAX72XX::FC16_HW #define MAX_DEVICES 4 // 4 blocks #define CS_PIN 9 #define SOFT_RX D2 // The ESP8266 pin connected to the TX of the bluetooth module #define SOFT_TX D1 // The ESP8266 pin connected to the RX of the bluetooth module SoftwareSerial bluetooth(SOFT_RX, SOFT_TX); // create an instance of the MD_Parola class MD_Parola ledMatrix = MD_Parola(HARDWARE_TYPE, CS_PIN, MAX_DEVICES); void setup() { Serial.begin(9600); bluetooth.begin(9600); ledMatrix.begin(); // initialize the object ledMatrix.setIntensity(15); // set the brightness of the LED matrix display (from 0 to 15) ledMatrix.displayClear(); // clear LED matrix display } void loop() { if (Serial.available()) { // if there is data comming String text = Serial.readStringUntil('\n'); // read string until meet newline character ledMatrix.displayClear(); // clear led matrix display ledMatrix.displayScroll(text.c_str(), PA_CENTER, PA_SCROLL_LEFT, 100); bluetooth.print("LED Matrix displayed: ");// reports action to smartphone app bluetooth.println(text); } if (ledMatrix.displayAnimate()) { ledMatrix.displayReset(); } }

Passos Rápidos

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

  • Veja o tutorial como configurar o ambiente para o ESP8266 na Arduino IDE se esta for a sua primeira vez usando o ESP8266.
  • Ligue os componentes conforme mostrado no diagrama.
  • Conecte a placa ESP8266 ao seu computador usando um cabo USB.
  • Abra a 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 ícone Libraries na barra à esquerda da Arduino IDE.
  • Pesquise por “MD_Parola” e localize a biblioteca MD_Parola.
  • Em seguida, pressione o botão Install.
ESP8266 NodeMCU MD_Parola library
  • Você será solicitado a instalar a biblioteca “MD_MAX72XX”
  • Clique no botão Install All para instalar a dependência.
ESP8266 NodeMCU MD_MAX72XX library
  • Instale o Bluetooth Serial Monitor App no seu celular.
  • Pegue o código fornecido e abra-o na Arduino IDE. Faça o upload do código para o seu ESP8266. Se tiver problemas para fazer o upload, tente desconectar os pinos TX e RX do módulo Bluetooth, fazer o upload do código e depois reconectar os pinos RX/TX.
  • Abra o Bluetooth Serial Monitor App no seu celular.
  • Escolha a opção Bluetooth Clássico ou BLE, de acordo com o módulo que você está usando.
Bluetooth Serial Monitor App
  • Conecte o app Bluetooth ao módulo Bluetooth HC-05 ou ao módulo BLE HM-10.
Bluetooth Serial Monitor pairing
  • Digite uma mensagem, como “HELLO”, e pressione o botão Send para transmiti-la ao ESP8266.
Bluetooth Serial Monitor App
  • Examine a mensagem que aparece no display de matriz de LED e no app Bluetooth.
  • Confirme o resultado no app Android.
Bluetooth Serial Monitor App

Se você achou o app Bluetooth Serial Monitor útil, considere dar a ele uma avaliação de 5 estrelas na Play Store. Seu feedback será muito apreciado! Obrigado!

Vídeo

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!