Arduino UNO R4 - Teclado 1x4

Neste guia, vamos aprender a usar um teclado 1x4 com um Arduino UNO R4. Vamos cobrir:

Teclado 1x4 com Arduino UNO R4

Sobre o Teclado 1x4

Um teclado 1x4 tem quatro botões em uma fileira. Ele é usado para digitar códigos, navegar por menus ou controlar interfaces em diferentes projetos.

Pinagem

O teclado 1x4 tem 5 pinos. Esses pinos não estão organizados na mesma ordem dos rótulos das teclas.

  • O pino 1 liga à tecla 2.
  • O pino 2 liga à tecla 1.
  • O pino 3 liga à tecla 4.
  • O pino 4 liga à tecla 3.
  • O pino 5 é conectado em comum a todas as teclas.
Pinagem do Teclado 1x4
image source: diyables.io

Diagrama de Ligação

Diagrama de Ligação do Teclado 1x4 com Arduino UNO R4

This image is created using Fritzing. Click to enlarge image

Veja A melhor forma de alimentar o Arduino Uno R4 e outros componentes.

Código Arduino UNO R4

Cada tecla do teclado 1x4 funciona como um botão. Podemos usar a função digitalRead() para verificar como cada tecla é pressionada. Mas, como em qualquer botão, enfrentamos o problema do bounce - em que um único toque pode parecer vários toques. Para resolver isso, precisamos fazer o debounce de cada tecla. Fazer o debounce de quatro teclas sem parar outras partes do código pode ser difícil. Felizmente, a biblioteca ezLink facilita isso.

#include <ezButton.h> #define KEY_NUM 4 // The number of keys #define PIN_KEY_1 3 // The Arduino UNO R4 pin connected to the key 1 #define PIN_KEY_2 2 // The Arduino UNO R4 pin connected to the key 2 #define PIN_KEY_3 5 // The Arduino UNO R4 pin connected to the key 3 #define PIN_KEY_4 4 // The Arduino UNO R4 pin connected to the key 4 ezButton keypad_1x4[KEY_NUM] = { ezButton(PIN_KEY_1), ezButton(PIN_KEY_2), ezButton(PIN_KEY_3), ezButton(PIN_KEY_4) }; void setup() { Serial.begin(9600); for (byte i = 0; i < KEY_NUM; i++) { keypad_1x4[i].setDebounceTime(100); // set debounce time to 100 milliseconds } } void loop() { int key = getKeyPressed(); if (key) { Serial.print("The key "); Serial.print(key); Serial.println(" is pressed"); } } int getKeyPressed() { for (byte i = 0; i < KEY_NUM; i++) keypad_1x4[i].loop(); // MUST call the loop() function first for (byte i = 0; i < KEY_NUM; i++) { int key_state = keypad_1x4[i].getState(); // the state after debounce if (keypad_1x4[i].isPressed()) return (i + 1); } return 0; }

Passos Rápidos

Siga estas instruções passo a passo:

  • Se esta é a sua primeira vez usando o Arduino Uno R4 WiFi/Minima, consulte o tutorial sobre como configurar o ambiente para o Arduino Uno R4 WiFi/Minima na Arduino IDE.
  • Conecte o Arduino UNO R4 a um teclado 1x4 de acordo com o diagrama fornecido.
  • Conecte a placa Arduino Uno R4 ao seu computador usando um cabo USB.
  • Abra a Arduino IDE no seu computador.
  • Selecione a placa Arduino Uno R4 apropriada (por exemplo, Arduino Uno R4 WiFi) e a porta COM..
  • Clique no ícone Libraries no lado esquerdo da Arduino IDE.
  • Digite "ezButton" na caixa de busca e localize a biblioteca de botão fornecida por "ArduinoGetStarted.com".
  • Pressione o botão Install para adicionar a biblioteca ezButton.
Biblioteca de botão para Arduino UNO R4
  • Copie o código e abra-o usando a Arduino IDE
  • Clique no botão Upload na Arduino IDE para enviar o código ao Arduino UNO R4
  • Abra o Serial Monitor
  • Pressione cada tecla do teclado 1x4
  • Confira os resultados no Serial Monitor
∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
Arduino Uno R4 WiFi
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'Arduino Uno R4 WiFi' on 'COM15')
New Line
9600 baud
1 2 3 4
Ln 11, Col 1
Arduino Uno R4 WiFi on COM15
2

※ 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!