Olá!
Veja se este serve.
const byte botao = 4;
unsigned long millis_antes = 0;
void setup()
{
Serial.begin(38400);
pinMode(botao, INPUT_PULLUP);
}
void loop()
{
Serial.println(digitalRead(botao));
if(digitalRead(botao) == false)
{
millis_antes = millis();
}
while(digitalRead(botao) == false)
{
if((millis() - millis_antes) > 3000)
{
Serial.println("Hello!");
}
}
}
Abraço.