Alternative to using delay any help appreciated.

Hi all if any1 could help it would be appreciated. I have a code running and when i start up it seems to take long @ the first delay. Once it has cycled once it seems to be better. I require a delays between routines before going back to the loop. Is there any other way i can implement this. Thanks

void FlowLess40()
{
analogWrite(ledPin, ++Pump +1 ); //increment output pulse == increase pump
delay(800); ??????????????
analogWrite(ledPin, ++Pump +1 );
delay(800); ???????????????
analogWrite(ledPin, ++Pump +1 );
lcd.setCursor(0, 0);
lcd.print (" Pump Low Increase ");
lcd.setCursor(0, 1);
lcd.print (" Flow ");
lcd.setCursor(0, 2);
lcd.print (" *** Out Of Spec *** ");
delay(9000); ?????????????
digitalWrite(49, HIGH); // This is the Alarm pin.
delay(9000); ?????????????????
lcd.clear();
loop ();
}

These should help....

Thanks I'll give it a bash least the video was good explanation.

There is an extended demo of the BWoD technique in the first post in this Thread.

...R