ayuda con ejercicio con marcha paro con led pulsante con potenciometro

buenas noches primera vez que estoy en ese forum es que necesito su ayuda el ejercicio que quiero hacer es asi cuando presiono marcha enciende el led parpadeando al valor que yo giro el potenciometro sea rapido o lento el parpadeo y cuando presiono paro dejaria de parpadear hasta que yo vuelva a presionar marcha aqui esta el codigo me gustaria saber si hay algun error

int potPin = 0; // potenciómetro entrada analogia 0
int led = 9; // salida LED 9
int val = 0; // variable potenciometro
int Set = 2;
int Reset = 3;
int Estado_Pulsador_S;
int Estado_Pulsador_R;

void setup() {

pinMode(led, OUTPUT);
pinMode(Set, INPUT);
pinMode(Reset, INPUT);
}
void loop() {
Estado_Pulsador_S = digitalRead(Set);
Estado_Pulsador_R = digitalRead(Reset);

if (Estado_Pulsador_S == 1)
{
digitalWrite(led, 1); // Encender LED
}

if (Estado_Pulsador_R == 1)
{
digitalWrite(led, 0); // Pagado LED
}

val = analogRead(potPin);
digitalWrite(led, HIGH);
delay(val);
digitalWrite(led, LOW);
delay(val);

}

:o :o :o :o :o :o
muchisismas gracias por su ayuda :slight_smile: