Étape 7: Programmation et Touches de finition
En attendant, vous devriez obtenir une programmation va pour l’Arduino. Voici le code que j’utilise en ce moment avec le mien. Il a pour effet de randomisant les LEDs et un cool effet de clignotement. La raison pour laquelle qu'il est aléatoire, cependant, est parce que j’ai soudé au hasard les anodes au CCP. Voici mon code :
int dataPin = 9; //Define which pins will be used for the Shift Register control int latchPin = 10; int clockPin = 11; int seq1[14] = {1,2,4,8,16,32,64,128,64,32,16,8,4,2}; //The array for storing the // byte #1 value int seq2[14] = {128,64,32,16,8,4,2,1,2,4,8,16,32,64}; //The array for storing the // byte #2 value void setup() { Serial.begin(100); pinMode(dataPin, OUTPUT); //Configure each IO Pin pinMode(latchPin, OUTPUT); pinMode(clockPin, OUTPUT); } void loop() { if (digitalRead(2)) { for (int x = 0; x < 14; x++) //Array Index { digitalWrite(latchPin, LOW); //Pull latch LOW to start sending data shiftOut(dataPin, clockPin, MSBFIRST, seq1[x]); //Send the data byte 1 shiftOut(dataPin, clockPin, MSBFIRST, seq2[x]); //Send the data byte 2 digitalWrite(latchPin, HIGH); //Pull latch HIGH to stop sending data delay(500); } } }
Maintenant, je dois l’avouer, je n’est pas venu avec cette pièce particulière du code, même si j’ai le modifier. Le code d’origine proviennent :
http://www.CodeProject.com/Articles/144606/Arduino-Platform-Working-with-Shift-Registers
Aujourd'hui est aussi un bon moment pour ajouter le capteur dans et c’est relativement simple à intégrer. Tout ce que vous avez à faire est brancher deux fils (la fiche technique pour votre capteur particulier vous dira ce qui concerne chaque broche et où pour les relier... ou il peut l’avoir gravé sur le capteur lui-même) et nid puis juste votre code pour les LEDs à l’intérieur le code fournie avec le capteur. Mon capteur particulier a la possibilité de déclenchement entre 15 et 30 pieds et, selon si vous connectez le câble d’alimentation à l’option 3.3V ou 5v sur l’Arduino UNO, il va avoir une plus courte ou plus longue (respectivement) minuterie jusqu'à ce que le capteur s’éteint.