RGB blinkande iPod-docka från en gammal högtalare! (8 / 8 steg)
Steg 8: programmering
Här är det program jag skrev. Min slå läsa algoritm är inte standard men fungerar mycket bra. Anslut den nyligen lödde USB-kabeln till datorn, öppna arduino programvaran, (måste du installera det teensy lägga på). Öppna min prog, upp till det teensy,och testa alla funktioner. Enheten bör blinkar rött två gånger och stäng av när du trycker på tryckknappen. Tryck på igen, bör det blinkar två gånger grön och slå på. Om inte, kommentera! ställa frågor! Kan du ge feedback. Om du gör en, ta en bild och lägga upp den!
/ * ipod_dock - programvara för ipod docka * /
int rött = 0;
int blå = 0;
int grön = 0;
int redPin = 12; Ställa in stiften för de röda, gröna och blå lysdioderna.
int greenPin = 14.
int bluePin = 15.
int oldVal, a;
int ampPin = 24. amp shuhtdown pin
int buttonPin = 19. stängningen knapp pin
int sensorValue;
void setup() {
pinMode (ampPin, produktionen);
pinMode (buttonPin, ingång);
randomSeed(A0);
en = strt();
Delay(3000);
}
void loop() {
om (digitalRead(buttonPin) == låg)
{
en = stdn();
}
int y = beat_read();
}
int beat_read()
{
int oldVal = (analogRead(A1));
int sensorValue = analogRead(A1);
röd = random (1, 255);
blå = random (1, 255);
grön = random (1, 255);
röd = 255 - röd.
blå = 255 - blå;
grön = 255 - grön;
analogWrite (redPin, röd);
analogWrite (greenPin, 2*(green));
analogWrite (bluePin, 2*(blue));
medan ((analogRead(A1)) > (oldVal - 5) & (analogRead(A1)) < (oldVal + 5)) / / växla 5 med något för ökad eller minskad känslighet
{
Delay(10);
om (digitalRead(buttonPin) == låg)
{
en = stdn();
}
}
}
avstängning funktion
int stdn()
{
digitalWrite (ampPin, låg);
analogWrite (bluePin, 0);
analogWrite (greenPin, 0);
analogWrite (redPin, 255);
Delay(250);
analogWrite (redPin, 0);
Delay(250);
analogWrite (redPin, 255);
Delay(250);
analogWrite (redPin, 0);
medan (digitalRead(buttonPin) == låg)
{
Delay(5);
}
int x = strt();
}
starta funktionen
int strt()
{
digitalWrite (ampPin, hög);
analogWrite (bluePin, 255);
Delay(250);
analogWrite (bluePin, 0);
Delay(250);
analogWrite (bluePin, 255);
Delay(250);
analogWrite (bluePin, 0);
}
Njut av musiken!