Olá pessoal, ve se conseguem me ajudar, como faço para identificar que o botão ficou pressionado por mais de 3 segundos com o Arduíno?

obrigado desde já.

Exibições: 1307

Responder esta

Respostas a este tópico

Bom dia. 

Procure por "Debounce" na internet.

valeu,

Ou até mesmo nos exemplo da IDE da plaquinha.

valeu pessoal, muito obrigado, irei procurar ...

Da uma olhada também na função While!

http://arduino.cc/en/Reference/While

long tempoAgora=millis();
long tempoPassou;
int entradaBotao=12;
int ledSaida=13;

void setup(){ Serial.begin(9600);
pinMode(entradaBotao, INPUT);
pinMode(ledSaida, OUTPUT);

}

void loop(){

if(digitalRead(entradaBotao)){

tempoPassou=millis();
if((tempoPassou - tempoAgora) >2999){
digitalWrite(ledSaida,HIGH);
}


else{
tempoAgora=millis();
digitalWrite(ledSaida,LOW);

}



}

assim que a entrada 12 for activada  passado 3 segundos a saida 13 fica ON   assim que a 12 fique desactivada a saida 13 fica OFF ...  caso volte a activar a entrada 12  só passado 3 segundos a saida 13 fica ON...

Não sei se era esse o objectivo  mas este código pode ser aplicado em qualquer objectivo similar...

Não testei código  fiz de cabeça , espero ter ajudado

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço