Choosing the right oscillator

I will give you an example code
I want to install an oscillator that gives me a precise time delay in the following code

int ButtonPin=3;
int M1=12;
int M2=11;
int M3=10;
int M4=9;
int count=8;
void setup() {
pinMode(ButtonPin, INPUT_PULLUP);
pinMode(M1, OUTPUT);
pinMode(M2, OUTPUT);
pinMode(M3, OUTPUT);
pinMode(M4, OUTPUT);
}
void loop() {
if (digitalRead(ButtonPin) == LOW){
     digitalWrite(M1, HIGH);
     digitalWrite(M3, HIGH);
     delay(10);
     digitalWrite(M1, LOW);
     digitalWrite(M3, LOW);
     delay(50);
     digitalWrite(M3, HIGH);
     digitalWrite(M4, HIGH);
     delay(50);
     digitalWrite(M3, LOW);
     digitalWrite(M4, LOW); 
  }
  }