DELAY en VOID Setup

Hola a todos.
Estoy haciendo un miniproyecto con un sensor PIR y unos buzzers y necesito que sea lo las estable y fiable posible.
La cuestión es que quiero que cuando se encienda arduino espere una cierta cantidad de tiempo antes de activar el PIR para que a este le de tiempo a calibrarse.
Uso la funcion DELAY en el VOID SETPUP para contar ese tiempo y he leído que el delay no es muy bueno para la estabilidad del arduino a largo plazo y no se si estando solo en VOID SETUP habría problemas.

¿Alguien me puede aclarar el tema?

int buzz1= 9;
int buzz2= 10;
int PIRPin= 8;
int led= 13;
 
void setup()
{
  pinMode(buzz1, OUTPUT);
  pinMode(buzz2, OUTPUT);
  pinMode(PIRPin, INPUT);
  pinMode(led,OUTPUT);
  digitalWrite(led, LOW);
  for(int i = 0; i < 10; i++)
  {
  delay(30000);
  }
}
 
void loop()
{
  int value= digitalRead(PIRPin);
  if (value == HIGH )
  {
    digitalWrite(buzz1, HIGH);
    digitalWrite(buzz2, HIGH);
  }
  else
  {
    digitalWrite(buzz1, LOW);
    digitalWrite(buzz2, LOW);
  }
}

Hola.

No, en el setup() no hay problemas.

Por cierto te has fijado en que esperas ¡¡ 300 segundos !! (30000mseg * 10)

No se si es un error o realmente el PIR necesita tanto tiempo.

Saludos

Jajaja, es verdad, en lo que me equivoque es en el 10, que tiene que ser un 1

for(int i = 0; i < 1; i++)

Gracias por la respuesta.

Cuando el bucle es solo de un paso: (i = 0; i < 1; i++), no hace falta el for(…)

void setup()
{
  pinMode(buzz1, OUTPUT);
  pinMode(buzz2, OUTPUT);
  pinMode(PIRPin, INPUT);
  pinMode(led,OUTPUT);
  digitalWrite(led, LOW);

  delay(30000);

  }

Así ahorras código.

Saludos

Uso la funcion DELAY en el VOID SETPUP para contar ese tiempo y he leído que el delay no es muy bueno para la estabilidad del arduino a largo plazo y no se si estando solo en VOID SETUP habría problemas.

En tu código no veo que cuentes ningún tiempo.
Delay(X) solo consume tiempo sin hacer nada útil. No genera inestabilidad alguna pero su aplicación está restringida a códigos secuenciales, por ejemplo para prender LEDs, motores en tiempos determinados.
Ahora si tu código incluye sensores o pulsadores que deben consultarse periódicamente no puedes usar un delay(30000) porque durante 30 seg Arduino no responde a nada.

Ni a las interrupciones ?

Alfaville:
Ni a las interrupciones ?

Y qué sentido tiene responder en este hilo?
No creo que sea de interés de quien creó el tópico.

¿ Propones abrir un hilo para una pregunta tan simple ?

surbyte:
En tu código no veo que cuentes ningún tiempo.
Delay(X) solo consume tiempo sin hacer nada útil. No genera inestabilidad alguna pero su aplicación está restringida a códigos secuenciales, por ejemplo para prender LEDs, motores en tiempos determinados.
Ahora si tu código incluye sensores o pulsadores que deben consultarse periódicamente no puedes usar un delay(30000) porque durante 30 seg Arduino no responde a nada.

No hay problema en no usar el arduino en esos 30 segundos. Es un proyecto tan simple que no hace falta interactuar con el aruino.
El único propósito del proyecto es que detecte la presencia de las personas y que emita un zumbido, nada más.

Gracias a todos por las respuestas.