Como Montar um Cronômetro no Arduino com LCD 16x2 e Push Buttons
Introdução
Montar um cronômetro usando Arduino, um display LCD 16x2 e dois push buttons é um projeto excelente para quem está aprendendo eletrônica e programação. Além de ser prático, esse conhecimento pode ser aplicado em diversas situações do cotidiano, como em esportes, cozinha, experimentos científicos e automação residencial.
Neste artigo, vamos ensinar passo a passo como construir esse cronômetro e discutir sua importância no dia a dia.
Materiais Necessários
Arduino (Uno, Nano ou similar)
Display LCD 16x2 (compatível com HD44780)
2 Push buttons
Potenciômetro de 10kΩ (para ajuste de contraste do LCD)
Resistores de 10kΩ (para pull-down nos botões)
Protoboard e jumpers
Montagem
Arduino (Uno, Nano ou similar)
Display LCD 16x2 (compatível com HD44780)
2 Push buttons
Potenciômetro de 10kΩ (para ajuste de contraste do LCD)
Resistores de 10kΩ (para pull-down nos botões)
Protoboard e jumpers
Programação no Arduino IDE
#include <LiquidCrystal.h>LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int pinButton1 = 6;int pinButton2 = 7;int tempoI = 0;int tempoF = 0;int tempo = 0;int cronos = 0;int state = 0;
void setup() { pinMode(pinButton1, INPUT); pinMode(pinButton2, INPUT); lcd.begin(16, 2);}
void loop() { int valButton1 = digitalRead(pinButton1); int valButton2 = digitalRead(pinButton2); if(state == 0){ if(valButton1==HIGH){ tempoI = millis(); lcd.clear(); state = 1; } } if(state == 1){ lcd.setCursor(0, 0); lcd.print("Cronometro: "); cronos = millis() - tempoI; lcd.setCursor(0, 1); lcd.print(cronos); if(valButton2==HIGH){ tempoF = millis(); tempo = tempoF - tempoI; lcd.setCursor(0, 1); lcd.print(tempo); state = 0; } }}
#include <LiquidCrystal.h>LiquidCrystal lcd(12, 11, 5, 4, 3, 2);int pinButton1 = 6;int pinButton2 = 7;int tempoI = 0;int tempoF = 0;int tempo = 0;int cronos = 0;int state = 0;void setup() {pinMode(pinButton1, INPUT);pinMode(pinButton2, INPUT);lcd.begin(16, 2);}void loop() {int valButton1 = digitalRead(pinButton1);int valButton2 = digitalRead(pinButton2);if(state == 0){if(valButton1==HIGH){tempoI = millis();lcd.clear();state = 1;}}if(state == 1){lcd.setCursor(0, 0);lcd.print("Cronometro: ");cronos = millis() - tempoI;lcd.setCursor(0, 1);lcd.print(cronos);if(valButton2==HIGH){tempoF = millis();tempo = tempoF - tempoI;lcd.setCursor(0, 1);lcd.print(tempo);state = 0;}}}
Importância e Aplicações no Cotidiano
1. Aprendizado em Eletrônica
Ensina como controlar um LCD no modo paralelo, um conhecimento essencial para projetos mais avançados.
Introduz conceitos como debounce de botões e controle de tempo com millis()
.
Ensina como controlar um LCD no modo paralelo, um conhecimento essencial para projetos mais avançados.
Introduz conceitos como debounce de botões e controle de tempo com
millis()
.
2. Uso em Esportes e Treinos
Pode ser usado como cronômetro para medir tempo em corridas, natação ou exercícios.
Pode ser usado como cronômetro para medir tempo em corridas, natação ou exercícios.
3. Timer para Cozinha
Funciona como um temporizador para receitas, evitando supercozimento.
Funciona como um temporizador para receitas, evitando supercozimento.
4. Experimentos Científicos
Mede o tempo de reações químicas ou fenômenos físicos em projetos escolares.
Mede o tempo de reações químicas ou fenômenos físicos em projetos escolares.
5. Automação Residencial
Pode ser adaptado para controlar dispositivos por tempo, como luzes ou irrigadores.
Pode ser adaptado para controlar dispositivos por tempo, como luzes ou irrigadores.
Conclusão
Montar um cronômetro com Arduino e LCD 16x2 sem I2C é uma ótima maneira de entender a comunicação paralela com displays. Além de ser educativo, esse projeto tem diversas aplicações práticas no dia a dia.
Dica para melhorias:
Adicione um buzzer para alertas sonoros.
Use um relé para controlar dispositivos externos baseados no tempo.
Montar um cronômetro com Arduino e LCD 16x2 sem I2C é uma ótima maneira de entender a comunicação paralela com displays. Além de ser educativo, esse projeto tem diversas aplicações práticas no dia a dia.
Dica para melhorias:
Adicione um buzzer para alertas sonoros.
Use um relé para controlar dispositivos externos baseados no tempo.
Comentários
Postar um comentário