Paso 2: El código de Honor
Código: (copiar y pegar esto en su sketch de Arduino. No es engaño)
/ * Este código utiliza un sensor de luz 'armonioso' (fotorresistencia) para hacer dos cosas
Cuando el nivel de luz está por debajo de cierto umbral: encender algunas destellar LEDs,
y sonará una alarma!!!
Este código fue compilado utilizando código fuente desde http://www.arduino.cc/en/Tutorial/Melody
(2005) D. Cuartiella para K3 y http://ardx.org/CODE09.
Las funciones copiar y pegar fueron escritas hace mucho tiempo en algún momento por una muy
persona perezosa... que yo personalmente love.* /
Fotorresistencia Pin
Apagado de int = 0;
Pin del LED
int ledPin = 9;
int ledPin2 = 11;
ledPin3 int = 13;
Soundpin
int soundPin = 3;
número de notas
int longitud = 7;
Notas de Char [] = "cacacaa";
beats de int [] = {1,1,1,1,1,1,1};
tempo de int = 300;
{} void playTone (int tono, duración de int)
para (largo i = 0; i < duración * 1000L; i += tono * 2) {}
digitalWrite (soundPin, HIGH);
delayMicroseconds(tone);
digitalWrite (soundPin, bajo);
delayMicroseconds(tone);
}
}
{} void playNote (char nota, int duración)
char nombre [] = {'c', 'a'};
tonos de int [] = {1915, 1700, 1519, 1432, 1275, 1136, 1014};
reproducir el tono correspondiente a nombre de la nota
para (int i = 0; i < 8; i ++) {}
Si (nombres [i] == Nota) {}
playTone (tonos [i], duración);
}
}
}
void setup()
{
pinMode (ledPin, salida);
pinMode (ledPin2, salida);
pinMode (ledPin3, salida); establece el pin led en salida
pinMode (soundPin, salida);
}
void loop()
{
umbral de int = 500; / * <---esto es una característica clave!!!!!! */
mientras que (analogRead(lightPin) > umbral)
{
para (int i = 0; i < longitud; i ++) {}
Si (notas [i] == ' ') {}
retardo (golpes [i] * tempo/3); resto
} else {}
playNote (notas [i], golpes [i] * tempo * 1.3);
pausa entre las notas
Delay(tempo/2); }
Si (analogRead(lightPin) > umbral)
{
digitalWrite(ledPin,HIGH);
digitalWrite(ledPin2,HIGH);
digitalWrite(ledPin3,HIGH);
Delay (20);
digitalWrite(ledPin,LOW);
digitalWrite(ledPin2,LOW);
digitalWrite(ledPin3,LOW);
Delay(20);
digitalWrite(ledPin,HIGH);
digitalWrite(ledPin2,HIGH);
digitalWrite(ledPin3,HIGH);
Delay (20);
digitalWrite(ledPin,LOW);
digitalWrite(ledPin2,LOW);
digitalWrite(ledPin3,LOW);
Delay(20);
digitalWrite(ledPin,HIGH);
digitalWrite(ledPin2,HIGH);
digitalWrite(ledPin3,HIGH);
Delay (20);
digitalWrite(ledPin,LOW);
digitalWrite(ledPin2,LOW);
digitalWrite (ledPin3, LOW);
Delay(20);
} else {}
digitalWrite (ledPin, LOW);
}
}
}
}
: CÓDIGO FINAL
El truco en este código es usar el "umbral" para ajustar el sensor de luz para las condiciones locales. Si usted consigue todo lo demás para trabajar en su banco de trabajo, recuerde anticipar el ajuste el umbral en cualquier otra condición de iluminación.
También, el segundo espectáculo de la imagen de un lío de cables y el tablero de pan. Se utilizó el tablero de pan porque es una forma rápida de construir un circuito y , porque podríamos utilizar el interruptor táctil para encender/apagar las señales de ARDUINO cuando la puerta estaba cerrado/abierto. En otras palabras, no tenemos que escribir algo de código para el interruptor entrar en el sistema. El interruptor sólo conectado alimentación de ARDUINO a la Junta de pan cuando cierra la puerta. Te tendría más sentido en un minuto.