Dann mach doch erst mal die Variante mit _delay_ms(5000).
Also
Code:
if(Pin HIGH)
{
    _delay_ms(5000);
    if(Pin ist immer noch HIGH)
    {
       //DO some stuff
       //Und natürlich die Pin ist high abfrage durch den richtigen Code ersetzen ;)
    }
}
Bezüglich Timer: Lies das Datenblatt, da wird das erklärt Ich weiß es leider auch nicht auswendig.