while(loopTime >= currentTime)
{
PCintPort::attachInterrupt(PIN1, &windPulse, RISING);
currentTime = millis();
}
Why do you need to keep attaching the interrupt?
Since you want to do nothing except count pulses for 5 seconds, I see no reason not to use delay(). Interrupts still file during delay().