Violano-Lilypad Arduino XBee instrument (2 / 6 steg)
Steg 2: Ansluta Lillypad med LED och Sensor
a. det är tillrådligt att stanna och kolla i varje steg av programmering innan du fortsätter på den fästa lysdioderna.
b. Starta genom att kontrollera om sensorn fungerar genom att fästa Led med Lillypad styrelse med alligator clips.
c. använda krets vägen illustreras i den bifogade filen för att ansluta lysdioder till sensorn.
1. blinka lysdioderna med ljus sensor-1 (resultatet har registrerats nedan)
Programmera ljussensorn ta emot angiven mängd ljus med hjälp av nedanstående kod.
Detta kommer att avgöra när LED skulle vända på.
int myLed [] = {A2, A3, A4};
int jag = 0;
int sensor = A5;
void setup() {
Serial.BEGIN(9600);
för (jag = 0; jag < 3; i ++) {
pinMode (myLed [i], produktionen);
}
}
void loop() {
int sensorValue = analogRead(sensor);
Serial.println(sensorValue);
Delay(100);
om (sensorValue > 225) {{
digitalWrite (myLed [i], låg);
}
}
annat {
Light();
}
}
void light() {
för (jag = 0; jag < 3; i ++) {
digitalWrite (myLed [i], hög);
Delay(100);
digitalWrite (myLed [i], låg);
Delay(100);
}
}
2. kontroll lysdioder med ljussensor - 2
Syftet är att styra lampan separat med ljussensorn.
Som du kontrollera funktion ljussensor genom den seriella porten, notera högsta och lägsta värdet. Du kan använda detta program för att bestämma manipulering av ljussensorn. Till exempel i vilken utsträckning bör ljussensorn omfattas från ljus för LED att slå på.
int myLed [] = {A2, A3, A4};
int jag = 0;
int sensor = A5;
void setup() {
Serial.BEGIN(9600);
för (jag = 0; jag < 3; i ++) {
pinMode (myLed [i], produktionen);
}
}
void loop() {
int sensorValue = analogRead(sensor);
Serial.println(sensorValue);
Delay(100);
om (sensorValue < 50) {/ / Tur alla LED av, om värdet är högre än 40
digitalWrite (myLed [i], låg);
}
annars om (sensorValue > 60, sensorValue < 120) {
digitalWrite (myLed [0], hög);
Delay(100);
digitalWrite (myLed [0], låg);
Delay(100);
}
annars om (sensorValue > 120, sensorValue < 230) {
digitalWrite (myLed [1], hög);
Delay(100);
digitalWrite (myLed [1], låg);
Delay(100);
}
annars om (sensorValue > 230, sensorValue < 330) {
digitalWrite (myLed [2], hög);
Delay(100);
digitalWrite (myLed [2], låg);
Delay(100);
}
annat
{
Light();
}
}
void light() {
för (jag = 0; jag < 3; i ++) {
digitalWrite (myLed [i], hög);
Delay(100);
digitalWrite (myLed [i], låg);
Delay(100);
}
}