Dator kontrolleras musikaliska Christmas Lights (8 / 10 steg)
Steg 8: Sånger och förberedelser
Vad en dator kontrolleras musikaliska lampor vore förstås utan musiken? Ladda ner alla dina favorit MP3-låtar till datorn. Så länge du kan spela den högt på en högtalare, då är du bra att gå.En bra setup är att ta med din laptop till ditt garage, koppla in USB till Arduino och koppla in några talare. Om du har en WiFi-anslutning på din bärbara dator, kan du gå på Youtube och Sök upp några låtar som "Carol av det the Bells - David Foster", "Deck the Halls" eller "Gud resten ni glada herrar" av Mannheim ångvält.
Slutligen, för programmering, vi behöver något slags köra lamporna. Du har två alternativ:
-Alternativ A: du manuellt styra ljuset med datorns tangentbord.
-Alternativ B: du programmera manuellt lampor med en makroinspelaren och spela tillbaka automatiskt.
Hursomhelst, du kommer att behöva har dessa två program som körs på datorn kan kommunicera med din Arduino:
High Tech jul 1.0 (Ett program som jag gjorde själv styra lamporna)
Arduino Sketchpad (Den Arduino standard programmering programvara)
Kontrollera att du har båda dessa program ovan. Om inte, hämta dem, extrahera innehållet och köra dem nu!
Efter att du har programmen, öppna upp programmet Arduino ritblock och ladda upp här koden till din Arduino:
int tree1 = 13.
int tree2 = 12;
int tree3 = 11;
int tree4 = 10;
int tree5 = 9;
int tree6 = 8;
int incomingByte; en variabel att läsa inkommande seriella data i
void setup() {
initiera seriell kommunikation:
Serial.BEGIN(9600);
initiera LED stift som en utgång:
pinMode (tree1, produktionen);
pinMode (tree2, produktionen);
pinMode (tree3, produktionen);
pinMode (tree4, produktionen);
pinMode (tree5, produktionen);
pinMode (tree6, produktionen);
}
void loop() {
om det finns inkommande seriella data:
om (Serial.available() > 0) {
Läs den äldsta byten i följetong buffert:
incomingByte = Serial.read();
om (incomingByte == "q") {
digitalWrite(tree1,HIGH);
Delay(150);
digitalWrite(tree1,LOW);
}
om (incomingByte == "w") {
digitalWrite(tree2,HIGH);
Delay(150);
digitalWrite(tree2,LOW);
}
om (incomingByte == "e") {
digitalWrite(tree3,HIGH);
Delay(150);
digitalWrite(tree3,LOW);
}
om (incomingByte == "r") {
digitalWrite(tree4,HIGH);
Delay(150);
digitalWrite(tree4,LOW);
}
om (incomingByte == 't') {
digitalWrite(tree5,HIGH);
Delay(150);
digitalWrite(tree5,LOW);
}
om (incomingByte == "y") {
digitalWrite(tree6,HIGH);
Delay(150);
digitalWrite(tree6,LOW);
}
om (incomingByte == 's ") {
digitalWrite(tree1,HIGH);
digitalWrite(tree2,HIGH);
Delay(150);
digitalWrite(tree1,LOW);
digitalWrite(tree2,LOW);
}
om (incomingByte == hade ") {
digitalWrite(tree2,HIGH);
digitalWrite(tree3,HIGH);
Delay(150);
digitalWrite(tree2,LOW);
digitalWrite(tree3,LOW);
}
om (incomingByte == "f") {
digitalWrite(tree3,HIGH);
digitalWrite(tree4,HIGH);
Delay(150);
digitalWrite(tree3,LOW);
digitalWrite(tree4,LOW);
}
om (incomingByte == "g") {
digitalWrite(tree4,HIGH);
digitalWrite(tree5,HIGH);
Delay(150);
digitalWrite(tree4,LOW);
digitalWrite(tree5,LOW);
}
om (incomingByte == "h") {
digitalWrite(tree5,HIGH);
digitalWrite(tree6,HIGH);
Delay(150);
digitalWrite(tree5,LOW);
digitalWrite(tree6,LOW);
}
om (incomingByte == "u") {
digitalWrite(tree1,HIGH);
digitalWrite(tree2,HIGH);
digitalWrite(tree5,HIGH);
digitalWrite(tree6,HIGH);
Delay(150);
digitalWrite(tree1,LOW);
digitalWrite(tree2,LOW);
digitalWrite(tree5,LOW);
digitalWrite(tree6,LOW);
}
om (incomingByte == "i") {
digitalWrite(tree1,HIGH);
digitalWrite(tree2,HIGH);
digitalWrite(tree4,HIGH);
digitalWrite(tree5,HIGH);
Delay(150);
digitalWrite(tree1,LOW);
digitalWrite(tree2,LOW);
digitalWrite(tree4,LOW);
digitalWrite(tree5,LOW);
}
om (incomingByte == "j") {
digitalWrite(tree2,HIGH);
digitalWrite(tree3,HIGH);
digitalWrite(tree5,HIGH);
digitalWrite(tree6,HIGH);
Delay(150);
digitalWrite(tree2,LOW);
digitalWrite(tree3,LOW);
digitalWrite(tree5,LOW);
digitalWrite(tree6,LOW);
}
om (incomingByte == ' o ') {
digitalWrite(tree5,HIGH);
digitalWrite(tree3,HIGH);
digitalWrite(tree4,HIGH);
Delay(150);
digitalWrite(tree5,LOW);
digitalWrite(tree3,LOW);
digitalWrite(tree4,LOW);
}
om (incomingByte == "p") {
digitalWrite(tree2,HIGH);
digitalWrite(tree3,HIGH);
digitalWrite(tree4,HIGH);
Delay(150);
digitalWrite(tree2,LOW);
digitalWrite(tree3,LOW);
digitalWrite(tree4,LOW);
}
om (incomingByte == "b") {
digitalWrite(tree1,HIGH);
digitalWrite(tree6,HIGH);
Delay(150);
digitalWrite(tree1,LOW);
digitalWrite(tree6,LOW);
}
om (incomingByte == "c") {
digitalWrite(tree1,HIGH);
digitalWrite(tree3,HIGH);
Delay(150);
digitalWrite(tree1,LOW);
digitalWrite(tree3,LOW);
}
om (incomingByte == "v") {
digitalWrite(tree4,HIGH);
digitalWrite(tree6,HIGH);
Delay(150);
digitalWrite(tree4,LOW);
digitalWrite(tree6,LOW);
}
om (incomingByte == "a") {
digitalWrite(tree1,HIGH);
digitalWrite(tree2,HIGH);
digitalWrite(tree3,HIGH);
digitalWrite(tree4,HIGH);
digitalWrite(tree5,HIGH);
digitalWrite(tree6,HIGH);
Delay(150);
digitalWrite(tree1,LOW);
digitalWrite(tree2,LOW);
digitalWrite(tree3,LOW);
digitalWrite(tree4,LOW);
digitalWrite(tree5,LOW);
digitalWrite(tree6,LOW);
}
}
}