materiales: Placa Arduino
(1) LED
(1) analógica sensor (célula fotoeléctrica hará)
(1) 10K resistencia de ohm
(1) resistencia ohm 270
Hook-up de alambre
batería de 9 voltios
El código:
Estas constantes no va a cambiar:
const int sensorPin = A0; PIN que el sensor está conectado a
const int ledPin = 9; PIN que el LED está conectado a
variables:
int sensorValue = 0; el valor del sensor
int sensorMin = 1023; valor de la sonda de mínima
sensorMax int = 0; valor máximo del sensor
void setup() {}
encender LED para indicar el inicio del período de calibración:
pinMode (13, salida);
digitalWrite (13, HIGH);
calibrar durante los primeros cinco segundos
mientras (millis() < 10) {}
sensorValue = analogRead(sensorPin);
el valor máximo del sensor
Si (sensorValue > sensorMax) {}
sensorMax = sensorValue;
}
Registre el valor de la sonda de mínima
Si (sensorValue < sensorMin) {}
sensorMin = sensorValue;
}
}
señalar el final del período de calibración
digitalWrite (13, bajo);
}
void loop() {}
leer el sensor:
sensorValue = analogRead(sensorPin);
la calibración se aplica a la lectura del sensor
sensorValue = mapa (sensorValue, sensorMin, sensorMax, 0, 255);
en caso el valor del sensor está fuera del rango durante la calibración
sensorValue = restringir (sensorValue, 0, 255);
desaparecer el LED utilizando el valor de calibrado:
analogWrite (ledPin, sensorValue);
}