ESP32 - Teclado - Fechadura Eletromagnética
Neste tutorial, vamos aprender a usar um teclado, uma fechadura eletromagnética e o ESP32 juntos. Em detalhes, se o usuário digitar a senha corretamente no teclado, o ESP32 liga a fechadura eletromagnética.
O tutorial também fornece o código que liga uma fechadura eletromagnética por um período de tempo e depois a desliga sem usar a função delay(). O código ESP32 também suporta várias senhas.
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables ESP32 Starter Kit (ESP32 included) | |
| 1 | × | DIYables ESP32 S3 Starter Kit (ESP32 S3 included) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Sobre o Teclado e a Fechadura Eletromagnética
Não conhece o teclado e a fechadura eletromagnética, incluindo a pinagem, o funcionamento e a programação deles? Explore os tutoriais completos sobre esses temas abaixo:
- Tutorial ESP32 - Teclado
- Tutorial ESP32 - Fechadura Eletromagnética
Diagrama de Ligação

This image is created using Fritzing. Click to enlarge image
Se você não sabe como alimentar o ESP32 e outros componentes, veja as instruções no tutorial a seguir: Como alimentar o ESP32.
Código ESP32 - ligar a fechadura eletromagnética se a senha estiver correta
Os códigos abaixo ligam uma fechadura eletromagnética se a senha estiver correta
Passos Rápidos
- Se esta é a primeira vez que você usa o ESP32, veja como configurar o ambiente para o ESP32 na Arduino IDE.
- Faça a ligação como na imagem acima.
- Conecte a placa ESP32 ao seu PC por meio de um cabo USB Type-C
- Abra a Arduino IDE no seu PC.
- Selecione a placa ESP32 correta (ex.: ESP32 Dev Module) e a porta COM.
- Conecte o ESP32 ao PC por meio de um cabo USB
- Abra a Arduino IDE e selecione a placa e a porta corretas
- Clique no ícone Libraries na barra esquerda da Arduino IDE.
- Pesquise “keypad” e encontre a biblioteca keypad de Mark Stanley, Alexander Brevig
- Clique no botão Install para instalar a biblioteca keypad.

- Copie o código acima e abra-o com a Arduino IDE
- Clique no botão Upload na Arduino IDE para carregar o código no ESP32

- Pressione as teclas 8123 e pressione #
- Pressione as teclas 1234 e pressione #
- Veja o resultado no Serial Monitor e o estado da fechadura eletromagnética
Explicação do Código
As senhas autorizadas são pré-definidas no código ESP32.
Uma string, chamada de string de entrada, é usada para armazenar a senha digitada pelos usuários. No teclado, duas teclas (* e #) são usadas para funções especiais: limpar a senha e finalizar a senha. Quando uma tecla do teclado é pressionada:
- Se a tecla pressionada não for uma das duas teclas especiais, ela é adicionada à string de entrada
- Se a tecla pressionada for *, a string de entrada é limpa. Você pode usá-la para começar ou recomeçar a digitar a senha
- Se a tecla pressionada for #:
- A string de entrada é comparada com as senhas pré-definidas. Se ela corresponder a uma das senhas pré-definidas, a fechadura eletromagnética é ligada.
- Não importa se a senha está correta ou não, a string de entrada é limpa para a próxima entrada
Código ESP32 - ligar a fechadura eletromagnética por um período de tempo se a senha estiver correta
O código abaixo liga a fechadura eletromagnética por 5 segundos se a senha estiver correta. Depois de 5 segundos, a fechadura eletromagnética é desligada.
Observe que o código acima usa a biblioteca ezOutput, que facilita o gerenciamento do tempo de forma não bloqueante. Você pode consultar o Guia de Instalação da Biblioteca ezOutput