int SENSOR=0;
int LED=3;
int MODO_PWM=2;
int MODO_DIGITAL=4;
int VALOR;
int PWM;
bool ESTADO=LOW;
long TIEMPOPREVIO=0;
long INTERVALO=5000;
void setup() {
pinMode(LED, OUTPUT);
pinMode(MODO_PWM, INPUT);
pinMode(MODO_DIGITAL, INPUT);
}
void loop() {
VALOR=analogRead(SENSOR);
PWM=map(VALOR, 0,1023,0,255);
if(digitalRead(MODO_PWM)==HIGH){
analogWrite(LED, PWM );
delay(1000);
}
else{
digitalWrite(LED, LOW);
}
unsigned long currentMillir=millis();
if(currentMillir>=INTERVALO){
if(MODO_DIGITAL){
if(VALOR>=200) {
digitalWrite(LED, HIGH);
ESTADO=HIGH;
}
else{
digitalWrite(LED, LOW);
ESTADO=LOW;
}
}
}
}