Arduino contrôlée clignotant Noël guirlande lumineuse avec Jingle Bells (10 / 12 étapes)

Étape 10 : Test du relais

Vous aurez besoin :

  • Câble USB

Nous pouvons ajouter à une étape intermédiaire pour s’assurer que le bouclier de relais travaille.

  1. Débrancher la connexion du haut-parleur au bouclier (c’est juste temporaire afin que nous puissions entendre le relais commutateur)
  2. Télécharger le code de votre Arduino
  3. Appuyez sur le bouton sur votre maquette.
  4. Vous devriez entendre les relais cliquez sur et en dehors (montré dans la vidéo). Vous devrez peut-être bouger les broches de connexion le bouclier de relais à l’Arduino un peu jusqu'à ce que les deux relais sont en cliquant sur et en dehors aussi.
  5. Une fois que nous savons que c’est le travail nous pouvons brancher les enceintes arrière en.
 #define C 2100 #define D 1870 #define E 1670 #define f 1580 // Does not seem to like capital F #define G 1400 // Define a special note, 'R', to represent a rest #define R 0 // SETUP ============================================ // Set up speaker on a PWM pin (digital 9, 10 or 11) int speakerOut = 9; int green = 4; int red = 7; int buttonPin = 2; void setup() { pinMode(speakerOut, OUTPUT); pinMode(green, OUTPUT); pinMode(red, OUTPUT); pinMode(buttonPin, INPUT); digitalWrite(green, LOW); } // BUTTON // Variables will change: int on = LOW; // the current state of the output pin int buttonState; // the current reading from the input pin int lastButtonState = LOW; // the previous reading from the input pin // the following variables are long's because the time, measured in miliseconds, // will quickly become a bigger number than can be stored in an int. long lastDebounceTime = 0; // the last time the output pin was toggled long debounceDelay = 50; // the debounce time; increase if the output flickers // MELODY and TIMING ======================================= // melody[] is an array of notes, accompanied by beats[], // which sets each note's relative length (higher #, longer note) int melody[] = {E, E, E,R, E, E, E,R, E, G, C, D, E, R, f, f, f,f, f, E, E,E, E, D ,D,E, D, R, G ,R, E, E, E,R, E, E, E,R, E, G, C, D, E, R, f, f, f,f, f, E, E, E, G,G, f, D, C,R }; int MAX_COUNT = sizeof(melody) / 2; // Melody length, for looping. // Set overall tempo long tempo = 10000; // Set length of pause between notes int pause = 1000; // Loop variable to increase Rest length int rest_count = 30; // Initialize core variables int tone_ = 0; int beat = 0; long duration = 0; // PLAY TONE ============================================== // Pulse the speaker to play a tone for a particular duration void playTone(int colour) { long elapsed_time = 0; if (tone_ > 0) { // if this isn't a Rest beat, while the tone has digitalWrite(colour, HIGH); // played less long than 'duration', pulse speaker HIGH and LOW while (elapsed_time < duration) { digitalWrite(speakerOut,HIGH); delayMicroseconds(tone_ / 2); // DOWN digitalWrite(speakerOut, LOW); delayMicroseconds(tone_ / 2); // Keep track of how long we pulsed elapsed_time += (tone_); } digitalWrite(colour, LOW); } else { // Rest beat; loop times delay digitalWrite(colour, HIGH); for (int j = 0; j < rest_count; j++) { // See NOTE on rest_count delayMicroseconds(duration); } digitalWrite(colour, LOW); } } int colour = green; void jingleBells(int i){ // Set up a counter to pull from melody[] and beats[] tone_ = melody[i]; beat = 50; duration = beat * tempo; // Set up timing if(colour == green){ colour = red; playTone(red); }else{ colour = green; playTone(green); } // A pause between notes... delayMicroseconds(pause); } void checkOn(int reading){ // check to see if you just pressed the button // (i.e. the input went from LOW to HIGH), and you've waited // long enough since the last press to ignore any noise: // If the switch changed, due to noise or pressing: if (reading != lastButtonState) { // reset the debouncing timer lastDebounceTime = millis(); // toggles the ledState variable each time the button is pressed if (buttonState == HIGH) { on = !on; } } if ((millis() - lastDebounceTime) > debounceDelay) { // whatever the reading is at, it's been there for longer // than the debounce delay, so take it as the actual current state: buttonState = reading; } } // LET THE WILD RUMPUS BEGIN ============================= void loop() { // read the state of the switch into a local variable: int reading = digitalRead(buttonPin); checkOn(reading); if(on){ for (int i=0; i<MAX_COUNT; i++) { int loopReading = digitalRead(buttonPin); jingleBells(i); if(loopReading != reading){ on = !on; break; } } } // save the reading. Next time through the loop, // it'll be the lastButtonState: lastButtonState = reading; } 

Articles Liés

Jupe Constellation édouardien avec guirlande lumineuse

Jupe Constellation édouardien avec guirlande lumineuse

Pour bal Edwardian cette année, j'ai voulu créer une robe qui rappelle un globe de ciel nocturne vintage. Une jupe cerceau crée la structure, lampions éclairent les constellations, et un sac à main (faite de ma pièce de pratique) complète la tenue. J
Arduino contrôlée variateur de lumière

Arduino contrôlée variateur de lumière

Avertissement : Certaines personnes essaient de construire ce avec un opto-coupleur avec zerocrossing coz droit « c'est mieux » ? Certains sont même dit, dans les magasins d'électronique, il est préférable d'utiliser tel un opto-coupleur. MAL. Ceci f
Orb Serial arduino contrôlée

Orb Serial arduino contrôlée

Ce qui est un Orb ?Quand j'ai vu pour la première fois l' Orbe ambiant de Ambient Devices, j'ai été assez impressionné.  Ils le décrivent comme une ampoule de verre qui utilise une couleur pour afficher les informations.  Toute sorte de situation pou
Arduino contrôlées Animatronic squelette Rock Band - en cours

Arduino contrôlées Animatronic squelette Rock Band - en cours

Pour l'Halloween cette année, j'ai décidé de construire un animatronic squelette Rock. C'est un travail en cours à ce stade, mais je suis assez content de comment il est à venir le long. Presque tout est fait de matériaux que j'avais sur la main (je
Arduino contrôlée phare

Arduino contrôlée phare

Vue d'ensemble :J'ai souvent pensé qu'un phare ferait un grand projet pour un Arduino, et j'ai donc décidé de faire un essai en utilisant un des phares locales ici à Erie (Pennsylvanie) comme source d'inspiration. J'ai choisi le Nord Pierhead phare q
Fais un jeu SNES de Arduino contrôleur basé

Fais un jeu SNES de Arduino contrôleur basé

dans ce instructable, je vais vous montrer comment prendre un contrôleur de la SNES, accrochez-le à un Arduino et faire un simple Simon Says jeu.Cela pourrait être utilisé pour créer un jeu plus complex, ou peut-être même pour essayer de faire un Ard
ARDUINO contrôlée 12v RGB LED STRIP

ARDUINO contrôlée 12v RGB LED STRIP

Il y a un an j'ai découvert que les bandes de LED RVB sur Amazon. Être juste avant le début de la saison des festivals musique, j'ai naturellement alla droit à travailler à rendre fous lumineux clignotants festivals jouets. Les bandes non adressable
Arduino contrôlée hélicoptère

Arduino contrôlée hélicoptère

Cette instructable a été créée dans l'accomplissement de l'exigence de projet de la Makecourse à l'Université de Floride du Sud (www.makecourse.com). L'objectif de ce cours était pour nous enseigner la créativité, l'ingéniosité et l'application prati
Laser Galvo - Arduino contrôlée

Laser Galvo - Arduino contrôlée

Arduino contrôlée laser galvo. La servocommande de miroirs diriger le laser UV laissant une traînée phosphorescente sur la feuille de vinyle glow-in-the-dark.Posté sur notes.robives.comÉtape 1 :À partir d'une feuille de vinyle lumineux d'eBay et poin
Couvre-feu pour animaux de compagnie : Un Arduino contrôlée chatière

Couvre-feu pour animaux de compagnie : Un Arduino contrôlée chatière

Le problème: vous voulez restreindre le temps lorsque votre animal de compagnie est autorisé à aller à l'extérieur. C'est peut-être parce que le quartier n'est pas sans danger pour votre chat ou votre petit chien pendant la nuit (maraude coyotes vien
Arduino contrôlée de fenêtre pour chat

Arduino contrôlée de fenêtre pour chat

je soumets cette instructable le défi de l'Arduino. N'oubliez pas de voter !Mon voisin a eu un petit problème avec son chat. Il veulent de sortir et de revenir trop souvent à l'intérieur. Habituellement, il ouvre juste la fenêtre de sa cuisine et nou
Autocollant de fenêtre numérique (Arduino contrôlée)

Autocollant de fenêtre numérique (Arduino contrôlée)

un autocollant de taille matrice de LED qui affiche des images en séquence à partir d'une carte SD, pour produire une animation signe ou « vitrophanie ». Arduino contrôlée ! Inclut également le code de Windows, Mac et Linux pour la conversion des fic
GOduino II = Arduino + contrôleur de moteur à Vitesse Variable L293D

GOduino II = Arduino + contrôleur de moteur à Vitesse Variable L293D

mises à jourGOduino II a été présenté sur dangerousprototypes.com07/04/2012, j'ai ajouté une diapositive de budget pour les lecteurs qui sont demandent où j'ai obtenu mon budget < 20 $ pour le GOduino II.INTRODUCTIONLe GOduino II est un contrôleur pr
Internet Arduino contrôlée Insert Table XY

Internet Arduino contrôlée Insert Table XY

c'est un ridiculement facile (en termes d'utilisation - voir ci-dessous) façon de faire une précision plus faible Table XY.  Avec la grande disponibilité de T-fente extrusions sur Amazon et Ebay et à l'aide de simple rénovation magasin matériel, c'es