Estoy haciendo mi proyecto escolar el cual consiste en hacer que el lector de tarjetas detecte la tarjeta
cada 20 min. y al no detectar la tarjeta accionar algo.
Por ejemplo:
Cada 20 minutos realizo la lectura y si detecto la tarjeta mantendré las luces encendidas, 20 minutos después realizo la lectura nuevamente y si ya no detecto nada se apagaran las luces.
Me la e pasado buscando tutoriales en los cuales solo encuentro ejemplos de accionar algo cada que detecten la tarjeta o el tag adecuado pero ninguno que realice una función al no detectar nada.
Una tarea es leer la tarjeta no? Supongamos que eso lo has resuelto y supongo que si.
La otra tarea es como hago para generar un retardo de 20 minutos y seguir atento a las tarjetas?
La solución es usar millis().
Te sugiero : Ir a Documentación => Indice de temas tutoriales => millis()
Cuando veas millis() comprenderas que eso te permite hacer pausas de tiempos sin gastar tiempo del CPU como sería si usaras delay(). Descarta delay de tu cabeza y serás un buen programador. Solo dejalo para situaciones especiales y no a la inversa como todos hacen.
En tu caso si cada 20 minutos haras una lectura bien podrias usar delay() pero sigue mi consejo.. mejor es empezar aprendiendo millis() que el camino fácil de usar delay y luego confunde programas mas complejos.
En el IDE tienes un ejemplo llamado BlinkWithoutDelay.ino que es lo mismo que Blink.ino pero sin usar delay.
Mira ambos y compara. Cuando lo entiendas tendras tu respuesta.