Arduino - Contagem de Botão - LCD
Neste tutorial, vamos usar o Arduino para:
- Contar o número de vezes que um botão é pressionado
- Exibir o número da contagem no display LCD I2C.
- Centralizar automaticamente, na vertical e na horizontal, o número da contagem no display LCD I2C.
Neste tutorial, o botão também tem debounce sem usar a função delay(). Veja Por que precisamos de debounce?
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables STEM V3 Starter Kit (Arduino included) | |
| 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: Alternatively, you can assemble the LCD I2C display using LCD 1602 Display and PCF8574 I2C Adapter Module.
Sobre o LCD I2C e o Botão
Se você não conhece o LCD I2C e o botão (pinagem, como funcionam, como programar...), aprenda sobre eles nos seguintes tutoriais:
Diagrama de Ligação

This image is created using Fritzing. Click to enlarge image
Código Arduino - exibindo a contagem do botão no LCD I2C
/*
* Este código de Arduino foi desenvolvido por pt.newbiely.com
* Este código de Arduino é disponibilizado ao público sem nenhuma restrição.
* Para tutoriais completos e diagramas de ligação, visite:
* https://pt.newbiely.com/tutorials/arduino/arduino-button-count-lcd
*/
#include <DIYables_LCD_I2C.h>
#include <ezButton.h>
DIYables_LCD_I2C lcd(0x27, 16, 2); // I2C address 0x27 (from DIYables LCD), 16 column and 2 rows
ezButton button(13); // create ezButton object that attach to pin 13;
unsigned long lastCount = 0;
void setup() {
Serial.begin(9600);
lcd.init(); // initialize the lcd
lcd.backlight(); // open the backlight
button.setDebounceTime(50); // set debounce time to 50 milliseconds
button.setCountMode(COUNT_FALLING);
}
void loop() {
button.loop(); // MUST call the loop() function first
unsigned long count = button.getCount();
if (lastCount != count) {
Serial.println(count); // print count to Serial Monitor
lcd.clear();
lcd.setCursor(0, 0); // start to print at the first row
lcd.print("Count: ");
lcd.print(count);
lastCount != count;
}
}
Passos Rápidos
- Vá até o ícone Libraries na barra esquerda do Arduino IDE.
- Pesquise “ezButton” e encontre a biblioteca de botão da ArduinoGetStarted
- Clique no botão Install para instalar a biblioteca ezButton.

- Pesquise “DIYables LCD I2C” e encontre a biblioteca DIYables_LCD_I2C da DIYables
- Clique no botão Install para instalar a biblioteca DIYables_LCD_I2C.

- Copie o código acima e abra-o no Arduino IDE
- Clique no botão Upload no Arduino IDE para carregar o código no Arduino
- Pressione o botão várias vezes
- Veja o número da contagem mudar no LCD
※ Nota:
O endereço I2C do LCD pode variar de acordo com o fabricante. No código, usamos 0x27, que é o endereço especificado pelo fabricante DIYables