Arduino Tweetmas arbre * mis à jour avec le code * (5 / 6 étapes)

Étape 5: Le code

Codage pour moi est une douleur!!!

J’ai shearched sur le croquis d’arduino travail web.

Beaucoup d'entre eux ne fonctionne pas, mais je trouve ce gars sur youtube :

Leroy Miller

Il fait un bon travail et donner un bon code du travail sur son codebender :

codebender

J’ai fait cuire son code avec plus de modèles comme : bonbon, roues de style ou arc en ciel théâtre

Ceci est mon code de travail :

#include < SPI.h > #include < Ethernet.h > #include < Adafruit_NeoPixel.h > / / paramètres du réseau Local de mac byte [] = {0xBC, 0x2D, 0 x 41, 0 x 70, 0 x 07, 0x98} ; Doit être unique sur le réseau local #define luminosité 5 //Set luminosité à 5/10e / / vous pouvez ajuster la luminosité #define complète (255/luminosité) #define thingSpeakInterval 18000 / / heure d’intervalle, en millisecondes, d’obtenir des données de ThingSpeak (nombre de secondes * 1000 = intervalle) / / Configuration Variable long lastConnectionTime = 0 ; String lastCommandString = « black » ; lastConnected booléen = false ; int failedCounter = 0 ; Bande de Adafruit_NeoPixel = Adafruit_NeoPixel (167, 6, NEO_GRB + NEO_KHZ800) ; Pour moi, 167 pixels sur ma bande / / Initialize Arduino Ethernet Client EthernetClient client ; void setup() {delay(100); / / configuration série Serial.begin(9600) ; delay(100) ; Serial.Flush() ; Delay(100) ; Strip.Begin() ; Strip.Show() ; Commencer l’Ethernet sur Arduino startEthernet() ; } void loop() {/ / commandes de processus CheerLights if(client.available() > 0) {delay(100); / / Serial.println(client.available()) ; Chaîne de réponse ; charIn char ; {charIn = client.read(); / / lecture d’un char de la mémoire tampon réponse += charIn; / / ajouter ce char à la chaîne de réponse} while (client.available() > 0) ; Serial.println(Response.length()) ; Serial.println(Response) ; Si (réponse == « blanc » || réponse == « blanc chaud » || réponse == « oldlace ») {lastCommandString = « blanc »; theaterChaseRainbow(50);} ElseIf (réponse == « noir » || réponse == « off ») {lastCommandString = « black »; theaterChase (bande. Color(0,0,0),50) ; } ElseIf (réponse == « rouge ») {lastCommandString = « red »; //theaterChase (bande. Color(255,0,0),50) ; CandyCane(30,8,50) ; } ElseIf (réponse == « vert ») {lastCommandString = « vert »; theaterChase (bande. Color(0, 255, 0), 50) ; } ElseIf (réponse == « bleu ») {lastCommandString = « blue »; theaterChase (bande. Color(0,0,255),50) ; } ElseIf (réponse == « cyan ») {lastCommandString = « cyan »; theaterChase (bande. Color(0,255,255),50) ; } ElseIf (réponse == « magenta ») {lastCommandString = « magenta »; theaterChase (bande. Color(255,0,255),50) ; } ElseIf (réponse == « jaune ») {lastCommandString = « jaune »; theaterChase (bande. Color(255,255,0),50) ; } ElseIf (réponse == « purple ») {lastCommandString = « pourpre »; theaterChase (bande. Color(102,51,204),50) ; } ElseIf (réponse == « orange ») {lastCommandString = « orange »; theaterChase (bande. Color(255,153,0),50) ; theaterChase (bande. Color(0, 255, 0), 50) ; } ElseIf (réponse == « rose ») {lastCommandString = « rose »; theaterChase (bande. Color(255,53,153),50) ; } delay(200) ; Serial.Print ("CheerLight commande reçue:") ; Serial.println(lastCommandString) ; Delay(200) ; } / / Débrancher ThingSpeak si (! client.connected() & & lastConnected) {Serial.println("...disconnected") ; client.stop();} / / s’abonner au canal de ThingSpeak et sur le terrain si ()
! client.connected() & & (millis() - lastConnectionTime > thingSpeakInterval)) {subscribeToThingSpeak();} checkcolor(lastCommandString) ; Delay(500) ; Vérifier si l’Arduino Ethernet doit être redémarré si (failedCounter > 3) {startEthernet();} lastConnected = client.connected() ; Delay(100) ; } // End loop void subscribeToThingSpeak() { if (client.connect("api.thingspeak.com", 80)) { Serial.println("Connecting to ThingSpeak..."); failedCounter = 0 ; Serial.println ("envoi de demande ») ; client.println (« GET /channels/1417/field/1/last.txt") ; client.println() ; lastConnectionTime = millis() ; } else {failedCounter ++ ; Serial.println ("Connection to ThingSpeak a échoué ("+ String(failedCounter, DEC) +")") ; Serial.println() ; lastConnectionTime = millis() ; Sub}} startEthernet() {client.stop() ; Serial.println ("connexion Arduino pour réseau...") ; Serial.println() ; Delay(1000) ; Se connecter au réseau amd obtenir une adresse IP via DHCP si (Ethernet.begin(mac) == 0) {Serial.println ("DHCP a échoué, reset Arduino pour essayer à nouveau") ; Serial.println() ; } else {Serial.println ("Arduino connectée au réseau via DHCP") ; Serial.println() ; } delay(1000) ; } / / Remplir les points un après l’autre avec une colorWipe Sub de couleur (uint32_t c, uint8_t attente) {pour (uint16_t j’ai = 0; j’ai} //Theatre-style lumières rampants. void theaterChase (uint32_t c, uint8_t attente) {pour (int j = 0; j < 36; j ++) {//do 36 cycles de chasse pour (q int = 0; q < 3; q ++) {pour (int j’ai = 0; j’ai < strip.numPixels(); i = i + 3) {strip.setPixelColor (i + q , c); allumer chaque pixel troisième} strip.show() ; Delay(Wait) ; pour (int j’ai = 0; j’ai < strip.numPixels(); i = i + 3) {strip.setPixelColor (i + q, 0); //turn chaque pixel troisième arrêt}}}} //Theatre-style rampant s’allume avec arc-en-ciel effet Sub theaterChaseRainbow (uint8_t attente) {pour (int j = 0; j < 256; j ++) {/ / cycle tous les 256 couleurs dans la roue de (q int = 0; q < 3; q ++) {pour (int j’ai = 0; j’ai < strip.numPixels(); i = i + 3) {strip.setPixelColor (i + q Roue ((i + j) % 255)) ; allumer chaque pixel troisième} strip.show() ; Delay(Wait) ; pour (int j’ai = 0; j’ai < strip.numPixels(); i = i + 3) {strip.setPixelColor (i + q, 0); //turn chaque pixel troisième arrêt}}}} / / arc-en-ciel roue Sub rainbowCycle (uint8_t attente) {int i, j; pour (j = 0; j < 256 * 5; j ++) {/ / 5 cycles de 25 toutes les couleurs dans la roue pour (j’ai = 0; j’ai < strip.numPixels(); i ++) {strip.setPixelColor (i, roue (((i * 256/strip.numPixels()) + j) % 256));} strip.show(); / / écriture tous les pixels sur delay(wait);}} Sub arc-en-ciel (uint8_t attente) {int j’ai , j ; pour (j = 0; j < 256; j ++) {/ / 3 cycles de tous les 256 couleurs dans la roue pour (i = 0; j’ai < strip.numPixels(); i ++) {strip.setPixelColor (i, roue ((i + j) % 255));} strip.show(); / / écriture tous les pixels sur delay(wait);}} / * Fonctions d’assistance * / / / créer une valeur de couleur de 24 bits de R, G, B uint32_t couleur (octet r, g octet, byte b) {uint32_t c; c = c; r << = 8; c | = g; c << = 8; c | = b; c retour;} //Input une valeur de 0 à 255 pour obtenir une valeur de couleur. Les couleurs sont une transition r - g -b - retour à r uint32_t roue (WheelPos octets) {si (WheelPos < 85) {retourner couleur (WheelPos * 3, 255 - WheelPos * 3, 0);} ElseIf (WheelPos < 170) {WheelPos-= 85 ; retour Color (255 - WheelPos * 3, 0, WheelPos * 3);} d’autre {WheelPos-= 170 ; retour couleur (0, WheelPos * 3, 255 - WheelPos * 3);}} void checkcolor (couleurs de la chaîne) {si (couleurs == « blanc ») {theaterChaseRainbow(50);} ElseIf (couleurs == « noir ») {theaterChase (bande. Color(0,0,0),50) ; } ElseIf (couleurs == « rouge ») {//theaterChase (bande. Color(255,0,0),50) ; CandyCane(30,8,50) ; 30 ensembles, 8 pixels de large, 50us délai} ElseIf (couleurs == "vert") {theaterChase (bande. Color(0, 255, 0), 50) ; } ElseIf (couleurs == « bleu ») {theaterChase (bande. Color(0,0,255),50) ; } ElseIf (couleurs == « cyan ») {theaterChase (bande. Color(0,255,255),50) ; } ElseIf (couleurs == « magenta ») {theaterChase (bande. Color(255,0,255),50) ; } ElseIf (couleurs == « jaune ») {theaterChase (bande. Color(255,255,0),50) ; } ElseIf (couleurs == « purple ») {theaterChase (bande. Color(102,51,204),50) ; } ElseIf (couleurs == « orange ») {theaterChase (bande. Color(255,153,0),50) ; theaterChase (bande. Color(0, 255, 0), 50) ; } ElseIf (couleurs == « rose ») {theaterChase (bande. Color(255,53,153),50) ; } }

Articles Liés

Conduit mod Pick-up de guitare électrique *** mise à jour avec le schéma pour clignotant LED et vidéo !

Conduit mod Pick-up de guitare électrique *** mise à jour avec le schéma pour clignotant LED et vidéo !

Ever wanted votre guitare soit unique ? Ou une guitare qui fait tout le monde est jaloux de lui ? Ou vous êtes juste fatigué de l'ancien look ordinaire de votre guitare et voulez il embellir ? Eh bien, dans ce très simple Ible je vais vous montrer co
Une maison de Smart Wireless (était : simulateur de maison et alarme avec Arduino ou Atmega328 (mise à jour de mai 2016))

Une maison de Smart Wireless (était : simulateur de maison et alarme avec Arduino ou Atmega328 (mise à jour de mai 2016))

Note : là maintenant est un android bluetooth control app ibble pour ce projetRemarque : Bien que cela a commencé comme un projet de simulation de ma présence à la maison, il a grandi dans une maison intelligente, c'est pourquoi j'ai rebaptisé cet In
L’utilisation de télécommandes IR avec Arduino (actuels et mis à jour)

L’utilisation de télécommandes IR avec Arduino (actuels et mis à jour)

Je suis fatigué de ces tutoriels de programmation compliquées sur l'utilisation de certaines choses. J'aime simple, facile à comprendre, étape par étape les instructions. Mon plus gros problème était avec IR et de POV. J'ai enfin maîtrisé comment con
Aquaponics : EnvDAQ mise à jour avec sonde de température de l’eau (Grow lit DAQ)

Aquaponics : EnvDAQ mise à jour avec sonde de température de l’eau (Grow lit DAQ)

le code source de l'application en nuage et Arduino croquis pour ce tutoriel sont disponibles ici.Vous pouvez également trouver ce tutoriel sur notre blog dans un format plus lisible (Figures inline).L'acquisition de données environnementales est un
Contrôle du programme & Arduino + robot PHIRO simultanément avec poche Code smartphone app

Contrôle du programme & Arduino + robot PHIRO simultanément avec poche Code smartphone app

PHIRO Pro est un robot éducatif qui aide les enfants à apprendre au code. Une des façons de programmer et de contrôler PHIRO est via une application Android appelée Pocket Code disponible sur le jeu de Google pour libre. Code de poche a la capacité d
T-shirts avec des pochoirs et eau de Javel (mis à jour avec l’image du robot pour le téléchargement)

T-shirts avec des pochoirs et eau de Javel (mis à jour avec l’image du robot pour le téléchargement)

faire vos propres t-shirts génial à l'aide de pochoirs et une simple solution d'eau de Javel et d'eau.Ce projet exige un minimum d'outils, et il se réunit assez facilement.** mise à jour **Le pochoir de robot montré est maintenant disponible en téléc
Comment faire pour synchroniser votre Twitter mises à jour avec LinkedIn

Comment faire pour synchroniser votre Twitter mises à jour avec LinkedIn

Découvrez comment facilement synchroniser et connectez vos mises à jour de statut Twitter avec LinkedIn au cours de cette vidéo courte, d'enseignement.Succès continu:)-Matthieu Loophttp://DCincome.com/blog
En bois Toy Hauler *** mise à jour avec le gabarit PDF ***

En bois Toy Hauler *** mise à jour avec le gabarit PDF ***

Voici mon premier instructable. Je voulais construire quelque chose de facile pour mes enfants pour Noël et trouvé quelques idées intéressantes sur différents sites Web. La photo de fond bleu est un peu ce que je voulais répliquer mais je tenais à ty
Courroie de Miband de Oogoo (mise à jour avec fenêtre transparente)

Courroie de Miband de Oogoo (mise à jour avec fenêtre transparente)

Il s'agit d'un bracelet de miband en d'oogoo. Remplacement miband sangles sont très bon marchés, et les matériaux pour ce projet bien dépassent le prix d'un sur amazon ou ebay. Si ce n'est pas un projet très pratique sauf si vous arrive d'avoir la pl
Délicieux chocolat miel Lip Balm (mis à jour avec lien vers pop art emballages)

Délicieux chocolat miel Lip Balm (mis à jour avec lien vers pop art emballages)

j'avais l'habitude d'attendre jusqu'à ce que mes enfants dormaient pour Barbouiller vaseline sur les lèvres gercées, parce qu'ils ont détesté toute sorte de crème hydratante. Donc j'ai inventé cette recette pour les tenter en volontairement à l'aide
Arduino Aquaponics : EnvDAQ mise à niveau avec le pH et l’oxygène dissous

Arduino Aquaponics : EnvDAQ mise à niveau avec le pH et l’oxygène dissous

un compliment on entend souvent parler Environnement Data Acquisition Shields (EnvDAQ) est l'inclusion d'une zone de prototypage afin que vous pouvez personnaliser le Conseil avec d'autres capteurs pour répondre à vos besoins.  La suite de détection
Le chasseur de têtes A Knex pistolet mise à jour avec les INSTRUCTIONS!!

Le chasseur de têtes A Knex pistolet mise à jour avec les INSTRUCTIONS!!

Porter avec moi parce que c'est mon premier pistolet de poignée de mag jamais donc il peut se présenter comme de la merde ou il ne peut pas.Ce pistolet est sorti un défi pour moi de faire une poignée mag pistolet qui semble différent de celle de la p
Conversion de demi-trame caméra 35mm. Mis à jour avec des photos.

Conversion de demi-trame caméra 35mm. Mis à jour avec des photos.

j'ai récemment pris une caméra libre Vivitar IC 400 Focus à un magasin d'aubaines pour 2 $. J'avais l'intention d'utiliser son viseur énorme pour un autre projet, mais comme j'ai été prendre à part, j'ai remarqué que je peux facilement convertir cett
Arduino haute vitesse d’Oscilloscope avec interface PC

Arduino haute vitesse d’Oscilloscope avec interface PC

Utilisez votre Arduino et votre PC comme un Oscilloscope à mémoire rapide.L'Arduino peut recueillir fiable des lectures de tension à une fréquence d'entre 141 et 153 KiloHertz.lecture des données 1000 peut être utilisé en vers 6.8ms.Viré à un PC, ces