Minimum time for digital signal reading

Cleaned up the code, just tested it and still works. I changed the eeprom read part as well.

// Digital I/O Pin Constants
const int S1 = 2;    // Control input
const int R1 = A1;    // Relay R1
const int R2 = A2;    // Relay R2
#include <EEPROM.h>
int eeprom = 0;
int ledPin = 13;
int valvestatus;  //variable
int ecusignal; //variable


// Initialising pins
void setup() { 
valvestatus = EEPROM.read(eeprom);
pinMode(S1, INPUT_PULLUP);
pinMode(R1, OUTPUT);
pinMode(R2, OUTPUT);
pinMode(ledPin, OUTPUT);
  digitalWrite(R1,HIGH);
  digitalWrite(R2,HIGH);
}

void loop(){  
ecusignal = digitalRead(S1);
digitalRead(valvestatus);
digitalRead(ecusignal);

 //start signal monitoring

if((valvestatus) == 0 && (ecusignal) == HIGH){
    digitalWrite(R1,HIGH);
    digitalWrite(R2,LOW);
    digitalWrite(ledPin,LOW);
    delay(2000);
        digitalWrite(R2,HIGH);
  EEPROM.update(eeprom,255);
  valvestatus = 255;
}

if((valvestatus) == 255 && (ecusignal) == LOW){
  digitalWrite(R1,LOW);
  digitalWrite(R2,HIGH);
  digitalWrite(ledPin,HIGH);
  delay(2000);
    digitalWrite(R1,HIGH);
  EEPROM.update(eeprom,0);
  valvestatus = 0;
}
}