упрощенный код:
//
#include "GyverButton.h"
GButton b1(4);
GButton b2(5);
void loop()
{
if ((digitalRead(b1) == 0) && (digitalRead(b2) == 0))
{
if (fPr == 0)
{
fPr = 1;
lcd.print("Обе нажаты ");
delay(300); // для меня это приемлимо! Хоть 5 минут могу ждать:)))
// тут нужно вставить "очистку" некого флага, что прежде все же нажалась только одна из кнопок.
// Иначе после делея она все же отработает.
}
}
else
{
b1.tick();
b2.tick(); // там сбросится fPr
}
}