Понадобится переменная времени , константа периода и логический флаг.
unsigned long timer1 =0;
const int per = 5000;
// или
// #define per 5000
bool flag=0;
//в loop
if(условие срабатывания датчика)
{
timer1 = millis()+ per;
flag =1;
//включаем светодиод
}
if (timer1<millis() and flag)
{
flag=0;
//выключаем светодиод
}
Код представляет собой таймер , который отсчитает срок после окончания события.
А вот код ниже с начала события.
unsigned long timer1 =0;
const int per = 5000;
// или
// #define per 5000
bool flag=0;
//в loop
if(условие срабатывания датчика and !flag)
{
timer1 = millis()+ per;
flag =1;
//включаем светодиод
}
if (timer1<millis() and flag)
{
flag=0;
//выключаем светодиод
}