Paso 2:
Los les pegados al arreglo se conectan a la placa, estos deben estar pegados un puerto de un toma de tierra.
Para el paso de los LED desde la corriente directa y la tierra es necesario colocar resistencias para evitar quemar los LEDS.
y colocamos el codigo.
se declaran variables de las
const int inPin0 = A0; const int analogPin = A1; puerto en el se conecta el potenciometro const int ledCount = 7; cantidad de leds
int ledPins [] = {3, 4, 5, 6, 7, 8, 9 //arreglo con los puertos usados para los leds};
void setup(void) {pinMode (13, salida); el párrafo de //salida llevó pegado a la salida 13 Serial.begin(9600); //en estas dos lineas vienen se inicia el Serial.println(); / / monitor para los datos de el fototransistor
esta parte maneja la variacion del potenciometro para (int thisLed = 0; thisLed < ledCount; thisLed ++) {pinMode (ledPins [thisLed], salida);}} void loop(void) {int pinRead0 = analogRead(inPin0); float pVolt0 = pinRead0 / 1024.0 * 5.0; int sensorReading = analogRead(analogPin); / / asignar el resultado a un rango desde 0 hasta el número de LEDs: int ledLevel = mapa (sensorReading, 0, 1023, 0, ledCount);
Serial.Print(pVolt0); Serial.println(); Delay(1000);
Si (pVolt0 < 4.00) {//revisa la potencia se recibe el fotosensor digitalWrite (13, HIGH); / / enciende el LED del puerto 13 / / delay(1000);} else {digitalWrite (13, LOW); / / Apaga el LED del puerto 13 / / delay(1000);}
Rompe el arrray de LEDs: para (int thisLed = 0; thisLed < ledCount; thisLed ++) {/ / si índice del elemento de la matriz es menor que ledLevel, / / activar el pin de este elemento: Si (thisLed < ledLevel) {digitalWrite (ledPins [thisLed], HIGH);} / / desactivar todos los pines superiores a la ledLevel: else {digitalWrite (ledPins [thisLed], LOW);}}}