Índice:
Vídeo: Um cronômetro Arduino simples e prático: 4 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:38
Pesquise na web o cronômetro do Arduino. Você provavelmente acabou de fazer isso, se estiver aqui. Por experiência própria, posso dizer que qualquer cronômetro na internet é muito complexo (em código, para iniciantes), ou é muito simplificado e não prático, como aqueles que continuam contando segundos sem zerar.
Você também acha, hein? Bem, adivinhe. Eu fiz isso e, além do mais, pego minha entrada diretamente da função millis () - uma linha infinita de números (até 49 dias, ou qualquer outra coisa). A melhor parte? É apenas uma linha.
Reiniciar é a parte mais difícil do cronômetro. Para intermediários, programadores, se ainda não o fizeram, vá em frente e tente fazer isso sozinho, com segundos, minutos e horas juntos. Você vai entender o que estou falando.
Para iniciantes, continue lendo e deleite-se com a genialidade da minha mente.
Brincadeira, mas a solução que encontrei é bem legal. Aqui está o que é:
Etapa 1: A Solução
Portanto, o problema está se reiniciando. O que queremos é um ciclo contínuo e repetitivo de números, a partir de uma saída infinita de números sequenciais (milis () - basicamente conta milissegundos, ou na verdade 1,024 milissegundos, mas tanto faz).
A primeira coisa que vem à mente é usar diferença, como time1 -time2 e um atraso. Esqueça isso. São necessárias pelo menos seis linhas de código e uma instrução if para inicializar.
Então, veja como fazer isso. Temos um limite (59). Queremos que tudo de 0 a 59 seja repetido indefinidamente. Como?
E se … pegássemos o restante … da função millis dividido por 59 … Bingo!
Então, deve ser assim:
(60 [como o valor inicial porque o limite é 59] + milissegundos () / 1000 [1000 milissegundos é um segundo])% 60
Ok, deixe-me explicar. (%) ou módulo, é basicamente um operador como (+) que encontra o resto. Como 9% 2 = 1.
Então:
- restante de (60 + 0)% 60 = 0
- restante de (60 + 1)% 60 = 1
- restante de (60 + 58)% 60 = 58
- restante de (60 + 59)% 60 = 59
- restante de (60 + 60)% 60 = 60
- restante de (60 + 61)% 60 = 1
Ver!
Agora, para as peças.
Etapa 2: as peças
Não muito
- Qualquer arduino
- Qualquer monitor (usei o OLED de 0,96 ", mas você pode usar o que tiver, apenas certifique-se de colocar as variáveis corretas nas funções de exibição do seu monitor.)
É isso.
Etapa 3: O Código
Aqui está. É claramente comentado, então não deve haver problemas. As bibliotecas e o init para OLED de 0,96 estão no código. Substitua-o pelo seu próprio display se for diferente.
// 0.96 Bibliotecas OLED
#incluir
#incluir
#incluir
#incluir
// 0.96 OLED Init
# define OLED_RESET 4
Display Adafruit_SSD1306 (OLED_RESET);
segundos inteiros;
minutos int;
horas int;
void setup () {
// Um pouco mais de 0,96 OLED Init
display.begin (SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay (); display.setTextSize (2); display.setTextColor (WHITE); }
void loop () {
segundos = (60 + milis () / 1000)% 60;
minutos = (60 + milis () / 60.000)% 60; horas = (25 + milis () / 3600000)% 25;
display.clearDisplay ();
display.setCursor (0, 22); // imprime o número de horas desde a reinicialização display.print (horas); display.print ("h:");
// imprime o número de minutos desde a reinicialização
display.print (minutos);
display.print ("m:");
// imprime o número de segundos desde a reinicialização display.print (segundos); display.print ("s");
display.setCursor (0, 0);
display.print ("Cronômetro"); display.drawLine (0, 18, 128, 18, BRANCO); display.display ();
}
Etapa 4: finalização…
Então é isso! Agora vá fazer o que quiser com ele. Cronometre alguns ovos ou assuma o controle de sua vizinhança.
Saúde, Aarush
Recomendado:
Versano: um dispositivo multifuncional prático (arduino Nano): 6 etapas
Versano: um dispositivo multifuncional prático (arduino Nano): Eu precisava de um multímetro prático que pudesse ser carregado facilmente para qualquer lugar. Eu queria que fosse pequeno e em miniatura em comparação com os multímetros normais. Com horas de codificação e projeto de circuito, acabei fazendo um dispositivo que pode medir volt
Cronômetro digital CloudX M633 simples: 4 etapas
Cronômetro Digital CloudX M633 Simples: Neste projeto, vamos fazer uma versão de um relógio digital que pode registrar horas, minutos e segundos, assim como um cronômetro no seu celular! Vamos usar um LCD para mostrar a hora
Cronômetro digital tudo em um (relógio, cronômetro, alarme, temperatura): 10 etapas (com imagens)
Cronômetro Digital All in One (Relógio, Cronômetro, Alarme, Temperatura): Estávamos planejando fazer um Cronômetro para alguma outra competição, mas posteriormente também implementamos um relógio (sem RTC). À medida que entramos na programação, nos interessamos em aplicar mais funcionalidades ao dispositivo e acabamos adicionando DS3231 RTC, como
Prático Arduino ESP32 com tomada de parede sem fio LED Strip Controller: 6 etapas
Prático controlador de faixa de LED para tomada de parede sem fio Arduino ESP32: Este é um controlador de tomada de parede sem fio DIY muito prático para faixas de LED de baixo custo. Ele substitui os controladores de wi-fi baratos vendidos no EBay. Eles funcionam bem com fitas RGB Led. O controlador EBay Wifi não é bem construído e quebra facilmente. Als
Relógio / cronômetro Arduino simples: 6 etapas (com imagens)
Relógio / cronômetro do Arduino simples: este " instrutível " mostrará e ensinará como fazer um relógio Arduino Uno simples que também atua como um cronômetro em apenas algumas etapas simples