Étape 4: Arduino
J’ai divisé les étoiles en 6 sections dispersées au hasard dans tous les domaines.
Il s’agissait de contrôlé de l’Arduino via le 2003 a.
Si j’ai chance que je tirerai un schem, mais pour l’instant tout ce que j’ai avez est le code de l’Arduino :
int trois = 3 ;
int 5 = 5 ;
int 6 = 6 ;
int neuf = 9 ;
int dix = 10 ;
int onze = 11 ;
int flickerONE = 7 ;
int flickerTWO = 8 ;
int threeNow ;
int fiveNow ;
int sixNow ;
int nineNow ;
int tenNow ;
int elevenNow ;
int threeNew ;
int fiveNew ;
int sixNew ;
int nineNew ;
int tenNew ;
int elevenNew ;
int flickertONE ;
int flickertTWO ;
installation Sub ()
{
pinMode (trois, sortie) ;
pinMode (cinq, sortie) ;
pinMode (six, sortie) ;
pinMode (neuf, sortie) ;
pinMode (dix, sortie) ;
pinMode (onze, sortie) ;
pinMode (flickerONE, sortie) ;
pinMode (flickerTWO, sortie) ;
threeNow = random(40) ;
fiveNow = random(40) ;
sixNow = random(40) ;
nineNow = random(40) ;
tenNow = random(40) ;
elevenNow = random(40) ;
threeNew = threeNow ;
fiveNew = fiveNow ;
sixNew = sixNow ;
nineNew = nineNow ;
tenNew = tenNow ;
elevenNew = elevenNow ;
}
#define fade(x,y) si (x > y) x--; ElseIf (x < y) x ++ ;
void loop()
{
analogWrite (trois, threeNow) ;
analogWrite (cinq, fiveNow) ;
analogWrite (six, sixNow) ;
analogWrite (neuf, nineNow) ;
analogWrite (dix, tenNow) ;
analogWrite (onze, elevenNow) ;
threeNew = random(40) ;
fiveNew = random(40) ;
sixNew = random(40) ;
nineNew = random(40) ;
tenNew = random(40) ;
elevenNew = random(40) ;
tandis que ((threeNow! = threeNew) ||
(fiveNow! = fiveNew) ||
(sixNow! = sixNew) ||
(nineNow! = nineNew) ||
(tenNow! = tenNew) ||
(elevenNow! = elevenNew))
{
Fade(threeNow,threeNew)
Fade(fiveNow,fiveNew)
Fade(sixNow,sixNew)
Fade(nineNow,nineNew)
Fade(tenNow,tenNew)
Fade(elevenNow,elevenNew)
analogWrite (trois, threeNow) ;
analogWrite (cinq, fiveNow) ;
analogWrite (six, sixNow) ;
analogWrite (neuf, nineNow) ;
analogWrite (dix, tenNow) ;
analogWrite (onze, elevenNow) ;
flickertONE = random(5) ;
digitalWrite(flickerONE,HIGH) ;
Delay(flickertONE) ;
digitalWrite(flickerONE,LOW) ;
Delay(5-flickertONE) ;
flickertTWO = random(1000) ;
digitalWrite(flickerTWO,HIGH) ;
Delay(flickertTWO) ;
digitalWrite(flickerTWO,LOW) ;
Delay(1000-flickertTWO) ;
}
}
Cela donne l’effet global des étoiles à la décoloration, ils peuvent parfois aller hors tout à fait, mais c’est toute la partie de l’amusement.
La LED bleue du cluster donne les fibres une lueur bleue et parce que tout cela est aléatoire vous ne savez tout simplement jamais ce que vous allez obtenir.
Par ailleurs, tout cela tire 310mA @ 12V DC.
Pas mal!