Ola, estou querendo aplicar a função millis no meu código, como uma forma de Debouncing.

Mas para isso preciso entender melhor ela. Nas referencias do arduino  diz que : "Retorna o número de milissegundos passados desde que a placa Arduino começou a executar o programa atual".

Esse inicio do programa atual, e  o momento que  eu ligo a placa,  ou  e o momento que inicia um void, ou e o momento que  inicia um if (ou similar) ?

A como rodas mais de um temporizador ao mesmo tempo? ex: millis1() ; millis2();

Exibições: 45

Responder esta

Respostas a este tópico

Boa tarde JV,

é o momento em que o arduino é ligado ou é dado reset nele.

RV 

Quanto a rodar mais de um temporizador, você pode armazenar numa variável o millis() logo antes de iniciar a execução de um bloco de comandos e ir comparando com o millis() atual. Um exemplo simples de usar um temporizador pra "timeout", seria:

if(condicao)

{

         unsigned long tempo1 = millis();

         while(condicao)

         {

              //faz algo

              if(millis() - tempo1 >= 5000)  break;

         }

}

RSS

Destaques

Registre-se no
Lab de Garagem
Clicando aqui

Convide um
amigo para fazer
parte

curso gratis de arduino

© 2019   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço