ESP8266 - Teclado
Este tutorial ensina você a usar o ESP8266 com teclado 3x4 e 4x4. Em detalhes, vamos aprender:
- Como conectar o ESP8266 ao teclado 3x4 e ao teclado 4x4.
- Como programar o ESP8266 para ler o valor do teclado 3x4 e do teclado 4x4.
- Como o ESP8266 verifica a senha digitada no teclado 3x4 e no teclado 4x4.
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Sobre o Teclado
Um teclado é um conjunto de teclas organizadas em linhas e colunas, chamado de matriz. Cada botão é conhecido como uma tecla. Os teclados vêm em vários estilos. Dois dos mais comuns em projetos DIY são o teclado 3x4 (com 12 teclas) e o teclado 4x4 (com 16 teclas).
A Pinagem do Teclado
Os pinos são divididos em dois grupos: linhas e colunas.
- Um teclado 3x4 tem 7 pinos: quatro pinos para as linhas (rotulados R1, R2, R3 e R4) e quatro pinos para as colunas (rotulados C1, C2 e C3).
- Um teclado 4x4 tem 8 pinos: quatro pinos para as linhas (rotulados R1, R2, R3 e R4) e quatro pinos para as colunas (rotulados C1, C2, C3 e C4).

Diagrama de Ligação
- ESP8266 - Diagrama de ligação do teclado 3x4

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.
- ESP8266 - Diagrama de ligação do teclado 4x4

This image is created using Fritzing. Click to enlarge image
※ Nota:
Você pode alterar os pinos do ESP8266 conectados aos pinos do teclado. No entanto, evite usar o pino D8 para o teclado. Se, porém, os pinos do ESP8266 não forem suficientes, você pode usar o pino D8 para o teclado, mas DEVE seguir as instruções abaixo:
- NÃO use o pino D8 do ESP8266 para os pinos das linhas.
- Ao usar o pino D8 do ESP8266 para um pino de coluna, você DEVE modificar a biblioteca Keypad da seguinte forma:
- Encontre o arquivo Arduino\libraries\Keypad\src\Keypad.cpp, vá até a linha 98, que se parece com isto: pin_mode(columnPins[c], INPUT);
- Comente esta linha. Após a modificação, o código na linha 98 deve ficar assim: //pin_mode(columnPins[c], INPUT);
Código ESP8266
Código ESP8266 para Teclado 3x4
Código ESP8266 para Teclado 4x4
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 “keypad” e localize a biblioteca de teclado criada por Mark Stanley e Alexander Brevig.
- Em seguida, clique no botão Install para concluir a instalação da biblioteca de teclado.

- Copie o código acima e abra-o na Arduino IDE.
- Depois de aberto, clique no botão Upload para carregar o código no ESP8266.
- Abra o Serial Monitor.
- Pressione algumas teclas no teclado.
- Confira o resultado no Serial Monitor.
Teclado e Senha
Um uso comum de um teclado é a digitação de senhas. Normalmente designamos duas teclas específicas para essa finalidade:
- Uma tecla para iniciar ou reiniciar a digitação da senha. Por exemplo, a tecla "*".
- Uma tecla para encerrar a digitação da senha. Por exemplo, a tecla "#".
A senha será composta por uma string que inclui todas as outras teclas, exceto as duas teclas especiais.
Quando uma tecla é pressionada:
- Se a tecla não for "*" nem "#", adicione a tecla à string da senha digitada pelo usuário.
- Se a tecla for "#", compare a string digitada pelo usuário com as senhas predefinidas para decidir se a senha digitada está correta e, em seguida, apague a string da senha digitada pelo usuário.
- Se a tecla for "*", apague a string da senha digitada pelo usuário.
Teclado - Código de Senha
Passos Rápidos
- Execute o código acima.
- Abra o Serial Monitor.
- Pressione as teclas "123456" e depois pressione "#".
- Em seguida, pressione as teclas "1234" e depois pressione "#".
- Confira o resultado no Serial Monitor.