#define pulsador 32
#define led 14
#define pinPot 4
double t;
volatile bool pulsado = false;
void IRAM_ATTR leerPulsador() {
pulsado = true;
}
void setup() {
t = 0.0;
Serial.begin(115200);
pinMode(pulsador, INPUT_PULLUP);
pinMode(led, OUTPUT);
attachInterrupt(digitalPinToInterrupt(pulsador), leerPulsador, FALLING);
}
void loop() {
int v = analogRead(4); //Lee el valor analógico que hay en el pin 4 y lo guarda en v
double frecuencia = 1.0/((millis()-t)/1e3);
Serial.print("Frecuencia: ");
Serial.println(frecuencia);
Serial.println(v);
t = millis();
if (pulsado) {
for (int i=0;i<10;i++) {
digitalWrite(led, !digitalRead(led));
delay(250);
}
pulsado = false;
}
delay(50); //20Hz
}