Counting pulses

  {attachInterrupt(PIN1, &windPulse, RISING);

The first argument to the attachInterrupt() function is the interrupt number. Interrupt 0 is associated with pin 2 and interrupt 1 is associated with pin 3, on a 328-based Arduino. There is no interrupt 7 on any Arduino.

  if(currentTime <= loopTime)
  {attachInterrupt(PIN1, &windPulse, RISING);
}
  else
  {detachInterrupt(PIN1);
   loopTime=0;}

Fix this lousy layout. Each { should have no code after it. The } goes on its own line.

  currentTime = millis();
  loopTime=(currentTime+5000);
  if(currentTime <= loopTime)

How can the if test ever fail to be true? if(currentTime <= currentTime + 5000) will always be true, for all values of 5000.