ArduinoUno multiLED y Fotosensor (2 / 2 steg)
Steg 2:
Los les pegados al arreglo se conectan a la placa, estos deben estar pegados en un puerto GND.
Para el paso de los LED desde la corriente directa y la tierra es necesaria colocar resistencias para evitar quemar los lysdioder.
y colocamos el codigo.
se declaran las variabler
CONST int inPin0 = A0; CONST int analogPin = A1; Puerto sv el que se conecta el potenciometro const int ledCount = 7. cantidad de lysdioder
int ledPins [] = {3, 4, 5, 6, 7, 8, 9 //arreglo con los puertos usados para los lysdioder};
void setup(void) {pinMode (13, OUTPUT); //salida para el ledde pegado a la salida 13 Serial.begin(9600); //en estas dos Lineasen que vienen se inicia el Serial.println(); / / monitor para los datos de el fototransistor
ESTA parte maneja la variacion del potenciometro för (int thisLed = 0; thisLed < ledCount; thisLed ++) {pinMode (ledPins [thisLed], produktionen);}} void loop(void) {int pinRead0 = analogRead(inPin0); flyta pVolt0 = pinRead0 / 1024.0 * 5.0; int sensorReading = analogRead(analogPin); / / karta resultatet till ett intervall från 0 till antal lampor: int ledLevel = karta (sensorReading, 0, 1023, 0, ledCount);
Serial.Print(pVolt0); Serial.println(); Delay(1000);
om (pVolt0 < 4,00) {//revisa la potencia que se recibe el fotosensor digitalWrite 13, högt. / / enciende el LED del puerto 13 / / delay(1000);} annat {digitalWrite (13, låg); / / Apaga el LED del puerto 13 / / delay(1000);}
Recorre el arrray de lysdioder: för (int thisLed = 0; thisLed < ledCount; thisLed ++) {/ / om det vektorelement index är mindre än ledLevel, / / slå PIN-koden för detta element på: om (thisLed < ledLevel) {digitalWrite (ledPins [thisLed], hög);} / / stänga av alla stift högre än ledLevel: annat {digitalWrite (ledPins [thisLed], låg);}}}