Como utilizar a função millis() na prática

Поделиться
HTML-код
  • Опубликовано: 7 фев 2025
  • Normalmente eu vejo vários desenvolvedores tendo problemas para aplicar corretamente a função millis() em seus sistemas com Arduino.
    Nessa aula, você vai aprender o que é a função millis e como aplicar de forma simples.
    Deixe nos comentários o que você achou da aula ou a sua dúvida, eu irei responder o quanto antes.
    Link do código: drive.google.c...

Комментарии • 26

  • @sidneynogueirapereiradejes5251

    Gostei muito do seu projeto e do uso do switch - case que é a estrutura fundamental da Máquina de Estado. Muito bom para também implementar na prática um sistema "Bi-Manual de Partida", no qual temporizamos o tempo dos 2 botões usados com a lógica && de maneira que, se o tempo ajustado ( p.ex. 500 ms) for excedido, uma instrução de bloqueio impede a ativação da saída correspondente que faz o equipamento funcionar. Isso para evitar que o operador mantenha um botão sempre acionado ( travado mecanicamente ) e fique utilizando apenas uma mão para pressionar o outro botão e partir o dispositivo com risco de sofrer algum acidente na mão que está livre. Show 👍👍👍

  • @sergiorodrigues4517
    @sergiorodrigues4517 3 года назад

    Boa noite George. foi a melhor explicaçao até agora
    ta começando a ficar mais facil. Muito obrigado.

  • @henriquearruda3016
    @henriquearruda3016 2 года назад

    Parabéns, muito bom e de muita ajuda... Obrigado.

  • @wandersonsilva-fx1cs
    @wandersonsilva-fx1cs 3 года назад

    Sr. George, gostei da sua explicação! poderia depois fazer outro exemplo explicando o millis com 2 botões e 2 leds, mas que pra explicar crianças de 10 a 13 anos, eu não sei exemplificar pra mostrar a eles! Há obrigado pela explicação!

  • @ciceroeletronica
    @ciceroeletronica 3 года назад

    Parabéns pelo vídeo brother, acho que ficou bem explicado pra turma que tem dúvidas sobre a função Millis

  • @dapaz0228
    @dapaz0228 Год назад

    VELEU MUITO OBRIGADO.
    consegui extrair o arquivo rar. num saite oline.

  • @johneagle4384
    @johneagle4384 3 года назад

    Muito bom o vídeo!!!

  • @ozirismenezes2009
    @ozirismenezes2009 4 года назад

    Muito bom o seu vídeo, a forma que fala e explica ! Montei o circuito e os comandos, deu certo, mas gostaria de fazer uma observação: No caso de quando você invoca o botão no primeiro " if ", para funcionar aqui somente com valor alto(HIGH).
    Quando você coloca o teste para verificar se o botão foi apertado ou não, normalmente eu coloco HIGH , nivel alto(1), pois o nível baixo de tensão (0), LOW(sem acionamento do botão), demonstra que estará desde já sempre acesso e apagará com HIGH. Neste caso se vc apertar o botão já com o LED aceso e mantiver no caso o pushButton apertado o LED ira se apagar conforme o tempo que programou.
    Tenho uma chave fim de curso aqui que tem duas opções de uso, serve para abrir ou fechar contato depende de como você quer posiciona ira colocar HIGH ou LOW para o teste da condição if. Deu certo o teste.
    Obrigado.

  • @CinematicGeo
    @CinematicGeo 4 года назад +1

    Olá, muito obrigado por compartilhar seu conhecimento, estou desenvolvendo uma lógica para acionar uma lâmpada por meio de sensor PIR em conjunto com LDR. Logo vou fazer um vídeo e compartilhar meus resultados também.

  • @carlosotaviomaderfernandes5639
    @carlosotaviomaderfernandes5639 2 года назад

    Bom dia, Parabéns prof. Muita didática com grande conhecimento, só sucesso. Como seria a programação para acionar dois motores, onde inicialmente se aciona um motor por determinado tempo, e após este tempo, o outro motor seria acionado. Esta ação deve ocorrer por 5 repetições.

  • @davidwessler4551
    @davidwessler4551 5 лет назад +1

    Perfeito

  • @flaviomotafariafaria847
    @flaviomotafariafaria847 4 года назад

    Didática muito boa,de fácil entendimento, parabéns !

  • @marcosgiovanni9682
    @marcosgiovanni9682 4 года назад +1

    Muito show!

  • @luizcarlosmessias4185
    @luizcarlosmessias4185 4 года назад

    Bom dia adorei sua explicação,.

  • @ronnykraus1604
    @ronnykraus1604 2 года назад

    Surgiu uma duvida. A variavel unsigned long conta até 4,294,967,295 mili segundos que corresponde a 4,294,967 segundos que corresponde a 49 dias.
    O que acontece se a automação ficar ligado mais de 50 dias?
    O millis perda a função?

  • @davidlima3615
    @davidlima3615 3 года назад

    Muito bom o vídeo! Já me escrevi no canal.
    Luis, tenho.uma dúvida.
    Tenho leds acionados pelo sensor da biblioteca (CapacitiveSensor) posso determinar um tempo de 1 em 1 hora para estes Leds piscarem, vamos supor numa frequência de 3x por segundo durante 3 segundos?
    Obs: A partir do momento que ligo o Arduino. É tipo um alarme automático sem apertar botão.

  • @julioteixeira7428
    @julioteixeira7428 5 лет назад

    Muito bem explicado!!!

  • @marcosvdnunes
    @marcosvdnunes 4 года назад

    Boa tarde, primeiro gostaria de parabenizar pela explicação muito clara, mas gostaria só de tirar uma dúvida: É possível usar a função millis junto com RTC? ou seja em vez de usar o sistema de contagem do tempo do arduino, usar o relógio

  • @mauriciomendonca4686
    @mauriciomendonca4686 9 месяцев назад

    Boa tarde, tentei abaixar o código e o mesmo não está disponível, como posso conseguir?

  • @rodrigodiasmartins3884
    @rodrigodiasmartins3884 11 месяцев назад

    Boa tarde!
    Como faço para aplicar essa técnica para substituir os delay no meu codigo abaixo. consegue me ajudar?
    #define botao_1 2
    #define botao_2 3
    #define led_1 5
    #define led_2 6
    #define led_3 7
    #define led_4 8
    boolean flag_botao1;
    boolean flag_botao2;
    void setup() {
    pinMode(botao_1, INPUT);
    pinMode(botao_2, INPUT);
    pinMode(led_1, OUTPUT);
    pinMode(led_2, OUTPUT);
    pinMode(led_3, OUTPUT);
    pinMode(led_4, OUTPUT);
    digitalWrite(led_1, LOW);
    digitalWrite(led_2, LOW);
    digitalWrite(led_3, LOW);
    digitalWrite(led_4, LOW);
    }
    void loop() {
    if(!digitalRead(botao_1) && digitalRead(botao_2) && !flag_botao1){
    delay(50);
    if(!digitalRead(botao_1)){
    flag_botao1 = true;
    }
    }else{
    if(digitalRead(botao_1) && flag_botao1){
    flag_botao1 = false;
    digitalWrite(led_1, HIGH);
    delay(2000);
    digitalWrite(led_1, LOW);
    digitalWrite(led_2, HIGH);
    delay(2000);
    digitalWrite(led_2, LOW);
    }
    }
    if(!digitalRead(botao_2) && digitalRead(botao_1) && !flag_botao2){
    delay(50);
    if(!digitalRead(botao_2)){
    flag_botao2 = true;
    }
    }else{
    if(digitalRead(botao_2) && flag_botao2){
    flag_botao2 = false;

    digitalWrite(led_3, HIGH);
    delay(2000);
    digitalWrite(led_3, LOW);
    digitalWrite(led_4, HIGH);
    delay(2000);
    digitalWrite(led_4, LOW);
    }
    }
    }

  • @arduinomaquinas
    @arduinomaquinas 4 года назад

    Like 101, parabéns !!!

  •  3 года назад

    Estou tentando fazer um semáforo com a função milles como expressar intervalos? tipo... ( milles - tempo tem que ser maior que 10 e menor que vinte)?

  • @sebastianlimasantos9115
    @sebastianlimasantos9115 Год назад

    Meu amigo quero que vc faz um programa pra mim.
    Mim manda seu contato dependendo do valor cobrado quero o programa pra ontem

  • @tecnomsandroid1870
    @tecnomsandroid1870 Год назад

    o ruim da explicação foi esses numeros espalhado no programa, não se sabe quem é led ou quem é bt

  • @tiagocasacrianca
    @tiagocasacrianca 4 года назад

    não consigo acessar o drive... pode mandar no tiago_usc@hotmail.com?

    • @Eu_mermo
      @Eu_mermo 4 года назад

      Mas é folgado kkkk duvido que ele te enviou kkkk só vc mesmo pra acreditar que ele enviaria hahahahahha