How to detect no interrupt? CNC router rpm PID control

What is your minimum RPM? At line 117 you might try:

rpm = 60 * (frequency / pulserev);
if(rpm < MIN)
  rpm = 0;