• Welcome to LusoRobótica - Robótica em Português.
 

como fazer um ciclo com determinado tempo

Started by cunha, 18 de January de 2014, 22:02

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

cunha

olá!
Amigos preciso da vossa ajuda.

quero fazer um ciclo que dure um determinado tempo, por exemplo 30minutos, onde vai incrementar de 5 a 128. tenho o programa quase todo feito e isto anda a dar-me voltas a cabeça  :)
já fiz algo do género:

for( i=5; i<=128; i++){
valor = i;
delay();
break;
}

calculo que seja fácil de fazer, mas ja estou baralhado que não chego lá.
estou a utilizar isto num arduino uno

um abraço

senso

Aconselho que vejas o exemplo blinky without delay, porque usar delays para tanto tempo é um desperdicio de processador.
Se queres de 5 a 128 em 30 minutos é um incremento de 4 unidades por minuto, ou 1 unidade por 15 segundos, fazes algo assim:

if(milis() - incrementMilis > 15000){ //15seg = 15000 miliseg
incrementMilis= milis();
valor++;   //incrementa o teu valor
}

Avr fanboy

cunha

Senso

Muito obrigado pela a ajuda... já esta a funcionar :)

um abraço e mais uma vez obrigado