Étape 9: Plus d’informations et l’intégralité du Code
Vous pouvez obtenir un circuit électrique de dessin, liste de codes et d’autres informations à www.guarnero.com.
Le schéma est listé ci-dessous.
Annonce de programme
Émetteur, le code pour le contrôleur de servo de Maestro, Arduino Uno et l’Arduino Mega est indiqué dans les sections suivantes.
Arduino Uno R3
L’Arduino Uno R3 envoie une série de commandes à distance IR cette volonté de puissance vers le haut du projecteur, sélectionnez le fichier souhaité et lire le fichier. Lorsqu’un déclencheur de début du spectacle est reçu par l’Arduino, il attribuera un projecteur marche/arrêt commande pour éteindre le projecteur. J’aurais pu faire le code plus compact en ajoutant une commande unique basé sur la position de commutateur de vacances, mais il s’agissait d’un moyen rapide pour obtenir ça va sans effort. Le code de l’Arduino est répertorié ci-dessous.
John Guarnero - http://guarnero.com
Décembre 2014
IR Control de Favi projecteur avec l’Arduino Uno
Bibliothèque à distance fournie par Ken Shirriff http://arcfn.com
#include
int HOLIDAY_PIN = 8 ;
int PLAYING_PIN = 11 ;
int BUTTON_START_PIN = 12 ;
int BUTTON_STOP_PIN = 10 ;
int STATUS_PIN = 13 ;
IRsend irsend ;
void setup()
{
pinMode (entrée, BUTTON_START_PIN) ;
pinMode (entrée, BUTTON_STOP_PIN) ;
pinMode (STATUS_PIN, sortie) ;
pinMode (PLAYING_PIN, sortie) ;
pinMode (entrée, HOLIDAY_PIN) ;
}
void loop()
{
int ButtonState_Start = digitalRead(BUTTON_START_PIN) ;
int ButtonState_Stop = digitalRead(BUTTON_STOP_PIN) ;
int Holiday_Switch = digitalRead(HOLIDAY_PIN) ;
Lire la vidéo de Noël
Si (ButtonState_Start == 1 & & Holiday_Switch == 1) //1 est vacances quand l’interrupteur en position relevée (Noël) - Noël exige sur droite arow push et Halloween deux pousse
{
digitalWrite (PLAYING_PIN, élevé) ;
Delay(4000) ;
digitalWrite (PLAYING_PIN, élevé) ;
Projection de départ
irsend.sendNEC (0x61D600FF, 32) ; Envoyer que NEC puissance sur chaque hexagone est 4 bits donc total de 32 bits
digitalWrite (STATUS_PIN, élevé) ;
Delay(40) ;
digitalWrite (STATUS_PIN, basse) ;
retard (18000) ; Attendre 18 secondes
irsend.sendNEC (0x61D628D7, 32) ; Envoyer que droit chaque hexagone est 4 bits donc total de 32 bits
digitalWrite (STATUS_PIN, élevé) ;
Delay(40) ;
digitalWrite (STATUS_PIN, basse) ;
retarder (1000) ; Attendre 1 seconde
irsend.sendNEC (0x61D628D7, 32) ; Envoyer que droit chaque hexagone est 4 bits donc total de 32 bits
digitalWrite (STATUS_PIN, élevé) ;
Delay(40) ;
digitalWrite (STATUS_PIN, basse) ;
retarder (1000) ; Attendre 1 seconde
irsend.sendNEC (0x61D6A857, 32) ; Envoyer qu'ok chaque hexagone est 4 bits donc total de 32 bits
digitalWrite (STATUS_PIN, élevé) ;
Delay(40) ;
digitalWrite (STATUS_PIN, basse) ;
retarder (1000) ; Attendre 1 seconde
irsend.sendNEC (0x61D6A857, 32) ; Envoyer qu'ok chaque hexagone est 4 bits donc total de 32 bits
digitalWrite (STATUS_PIN, élevé) ;
Delay(40) ;
digitalWrite (STATUS_PIN, basse) ;
retarder (1000) ; Attendre 1 seconde
irsend.sendNEC (0x61D628D7, 32) ; Envoyer que droit chaque hexagone est 4 bits donc total de 32 bits
digitalWrite (STATUS_PIN, élevé) ;
Delay(40) ;
digitalWrite (STATUS_PIN, basse) ;
retarder (1000) ; Attendre 1 seconde
irsend.sendNEC (0x61D6A857, 32) ; Envoyer qu'ok chaque hexagone est 4 bits donc total de 32 bits
digitalWrite (STATUS_PIN, élevé) ;
Delay(40) ;
digitalWrite (STATUS_PIN, basse) ;
retarder (1000) ; Attendre 1 seconde
irsend.sendNEC (0x61D67887, 32) ; Envoyer que jouer chaque hexagone est 4 bits donc total de 32 bits
digitalWrite (STATUS_PIN, élevé) ;
Delay(40) ;
digitalWrite (STATUS_PIN, basse) ;
digitalWrite (PLAYING_PIN, basse) ;
}
Lire la vidéo d’Halloween
Si (ButtonState_Start == 1 & & Holiday_Switch == 0) //0 est quand les vacances passer en position basse (Halloween) - Noël exige sur droite arow push et Halloween deux pousse
{
digitalWrite (PLAYING_PIN, élevé) ;
Delay(4000) ;
digitalWrite (PLAYING_PIN, élevé) ;
Projection de départ
irsend.sendNEC (0x61D600FF, 32) ; Envoyer que NEC puissance sur chaque hexagone est 4 bits donc total de 32 bits
digitalWrite (STATUS_PIN, élevé) ;
Delay(40) ;
digitalWrite (STATUS_PIN, basse) ;
retard (18000) ; Attendre 18 secondes
irsend.sendNEC (0x61D628D7, 32) ; Envoyer que droit chaque hexagone est 4 bits donc total de 32 bits
digitalWrite (STATUS_PIN, élevé) ;
Delay(40) ;
digitalWrite (STATUS_PIN, basse) ;
retarder (1000) ; Attendre 1 seconde
irsend.sendNEC (0x61D628D7, 32) ; Envoyer que droit chaque hexagone est 4 bits donc total de 32 bits
digitalWrite (STATUS_PIN, élevé) ;
Delay(40) ;
digitalWrite (STATUS_PIN, basse) ;
retarder (1000) ; Attendre 1 seconde
irsend.sendNEC (0x61D6A857, 32) ; Envoyer qu'ok chaque hexagone est 4 bits donc total de 32 bits
digitalWrite (STATUS_PIN, élevé) ;
Delay(40) ;
digitalWrite (STATUS_PIN, basse) ;
retarder (1000) ; Attendre 1 seconde
irsend.sendNEC (0x61D6A857, 32) ; Envoyer qu'ok chaque hexagone est 4 bits donc total de 32 bits
digitalWrite (STATUS_PIN, élevé) ;
Delay(40) ;
digitalWrite (STATUS_PIN, basse) ;
retarder (1000) ; Attendre 1 seconde
irsend.sendNEC (0x61D628D7, 32) ; Envoyer que droit chaque hexagone est 4 bits donc total de 32 bits
digitalWrite (STATUS_PIN, élevé) ;
Delay(40) ;
digitalWrite (STATUS_PIN, basse) ;
retarder (1000) ; Attendre 1 seconde
irsend.sendNEC (0x61D628D7, 32) ; Envoyer que droit chaque hexagone est 4 bits donc total de 32 bits
digitalWrite (STATUS_PIN, élevé) ;
Delay(40) ;
digitalWrite (STATUS_PIN, basse) ;
retarder (1000) ; Attendre 1 seconde
irsend.sendNEC (0x61D6A857, 32) ; Envoyer qu'ok chaque hexagone est 4 bits donc total de 32 bits
digitalWrite (STATUS_PIN, élevé) ;
Delay(40) ;
digitalWrite (STATUS_PIN, basse) ;
retarder (1000) ; Attendre 1 seconde
irsend.sendNEC (0x61D67887, 32) ; Envoyer que jouer chaque hexagone est 4 bits donc total de 32 bits
digitalWrite (STATUS_PIN, élevé) ;
Delay(40) ;
digitalWrite (STATUS_PIN, basse) ;
digitalWrite (PLAYING_PIN, basse) ;
}
Mettez hors tension du projecteur
Si (ButtonState_Stop)
{
digitalWrite (PLAYING_PIN, élevé) ;
Delay(4000) ;
Arrêter la Projection
digitalWrite (PLAYING_PIN, élevé) ;
irsend.sendNEC (0x61D600FF, 32) ; Envoyer NEC Power on/off (chaque hexagone est 4 bits donc total de 32 bits)
digitalWrite (STATUS_PIN, élevé) ;
Delay(40) ;
digitalWrite (STATUS_PIN, basse) ;
retarder (1000) ; Patientez 1
digitalWrite (PLAYING_PIN, basse) ;
}
}