Étape 7: Programmation Partie 2: création de motifs lumineux
Étant donné que mon plan est d’avoir mon utilisation programmation un générateur pour sélectionner un des sept motifs lumineux j’ai décidé d’écrire chaque répartition en fonctionde la lumière.
La fonction suivante est en fait le modèle inclinable allant du rouge au bleu. Vous pouvez aussi voir où j’ai ont cartographié les valeurs de l’accéléromètre et définir une contrainte:
void color_tilt() {}
int accel_value = analogRead(ACCEL_PIN) ;
accel_value = map(accel_value,MIN_AREAD,MAX_AREAD,0,255) ;
accel_value = constrain(accel_value,0,255) ;
pour (int i = 0; i < strip.numPixels(); i ++) {}
strip.setPixelColor (i, 255-accel_value, 0, accel_value) ;
Strip.Show() ;
Delay(2) ;
}
}
Cet exemple devrait en fait être appelé LighteningAccel, et vous l’aurez deviné ! Devrait ressembler un peu à éclaircir ! La couleur clignote en arrière du blanc au jaune et de retour avec des retards.
void ThunderAccel() {}
pour (int i = 0; i < 29; i ++) {}
strip.setPixelColor (i, 255,255,255) ;
Strip.Show() ;
}
Delay(200) ;
pour (int i = 0; i < 29; i ++) {}
strip.setPixelColor (i, 0,0,0) ;
Strip.Show() ;
}
retard (100) ;
pour (int i = 0; i < 29; i ++) {}
strip.setPixelColor (i, 255,255,0) ;
Strip.Show() ;
}
Delay(200) ;
pour (int i = 0; i < 29; i ++) {}
strip.setPixelColor (i, 0,0,0) ;
Strip.Show() ;
}
Delay(50) ;
pour (int i = 0; i < 29; i ++) {}
strip.setPixelColor (i, 255,255,0) ;
Strip.Show() ;
}
Delay(40) ;
pour (int i = 0; i < 29; i ++) {}
strip.setPixelColor (i, 0,0,0) ;
Strip.Show() ;
}
Delay(20) ;
pour (int i = 0; i < 29; i ++) {}
strip.setPixelColor (i, 255,255,255) ;
Strip.Show() ;
}
Delay(200) ;
pour (int i = 0; i < 29; i ++) {}
strip.setPixelColor (i, 0,0,0) ;
Strip.Show() ;
}
Delay(1000) ;
pour (int i = 0; i < 29; i ++) {}
strip.setPixelColor (i, 255,255,255) ;
Strip.Show() ;
}
Delay(200) ;
pour (int i = 0; i < 29; i ++) {}
strip.setPixelColor (i, 0,0,0) ;
Strip.Show() ;
}
retard (100) ;
pour (int i = 0; i < 29; i ++) {}
strip.setPixelColor (i, 255,255,0) ;
Strip.Show() ;
}
Delay(100) ;
pour (int i = 0; i < 29; i ++) {}
strip.setPixelColor (i, 0,0,0) ;
Strip.Show() ;
}
Delay(3000) ;
}
Vous pouvez trouver les autres modèles, y compris un brillant j’ai emprunté (crédit est dans le code), à l’étape 9. Une autre remarque importante, vous remarquerez que le numéro 29 arrive beaucoup. 29 se réfère au nombre de neopixels utilisés dans la lumière de nuage. Je n’ai pas le plein 30 parce que j’ai brûlé le cuivre loin sur l’un de le neopixels fin à ma première tentative de soudure. J’ai simplement coupé, mais si vous utilisez la bande de Neopixel complet 1 mètre vous voudrez changer les 29 et 30 et ajuster quelques autres motifs lumineux.