TheSUN, Arduino alimenté horloge murale design (4 / 6 étapes)

Étape 4: Code

Vous pouvez maintenant charger l’esquisse à l’Arduino. You´re aussi capable au fil de la LED bandes maintenant. Don´t connecter le Module BT!!! Nous voulons tout d’abord regarder le code, vous devez savoir où vous pouvez modifier plusieurs choses...

Télécharger l’IDE Arduino et la fréquentation.
IDE Arduino, AdafruitNeoPixel, temps, DS1307RTC

Installer l’EDI et mettez la fréquentation dans le dossier de la bibliothèque.
Ouvrir le fichier joint de INO et transférez-le sur votre arduino. Le code décrit ici est la même chose mais avec des commentaires ! Si vous avez tout fait correctement, vous pouvez maintenant voir la « bootanimation ». Il est possible de régler l’heure sur le serialmonitor. Il suffit de taper par exemple. (10:33).

N’hésitez pas à jouer avec le code...

Ill vous donnons ici une brève description du Code (installation sans RTC!)

DÉFINITIONS :

#define PIN 6 //Hour LED Strip
#define MINPIN 5 //Singelminute LED
#define NUMPIXELS 12 //Number de Pixels pour heure
#define MINNUMPIXELS 4 //Number de Pixels pour une seule minute
#define 115200 bauds / / Baudrate, doit correspondre le baudrate du Module BT
#define hind ' //start octet de TimeSync

timeset int = 0 ; drapeau de stocker si le temps a été défini après le démarrage
int delayval = 20 ; délai pour l’animation de la décoloration
int clocktimer = 10000 ; actualisation de l’heure
int timebright = 250 ; luminosité d’heure Strip
int mtimebright = 50 ; luminosité de singelmin
initialiser des int = 0 ; drapeau d’appeler la fonction clearpixels après démarrage
ahour int ;
int oldahour = 0 ; stocker l’heure précédente.
aminute int ;
int oldamin = 0 ; stocke la minute précédente pour mise à jour
aseconde int ;
aday int ;
amonth int ;
ayear int ;
mmin int ;
tmElements_t tm ;

Le programme d’installation pour les baies de NeoPixel LED 2 (nom = TYPE (nombre de PIXELS, qui épingle, FORMAT RVB ou GRB, FREQ) ; Consultez le guide Adafruit pour plus d’informations.

Adafruit_NeoPixel pixels = Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800) ;
Adafruit_NeoPixel minpixels = Adafruit_NeoPixel (MINNUMPIXELS, MINPIN, NEO_RGB + NEO_KHZ800) ;

PROGRAMME D’INSTALLATION :

void setup() {}

Serial.Begin(baudrate) ;
Wire.Begin() ;
Initialice les bandes, tous OFF
pixels.Begin() ;
minpixels.Begin() ;
pixels.Show() ;
minpixels.Show() ;

Faire une petite animation
Serial.println("Sunrise") ;
Sunrise() ;
Delay(1000) ;
Serial.println("Sunset") ;
Sunset() ;
pixels.Show() ;
Serial.println("Ready") ;
}

BOUCLE :

void loop() {}
cocher pour timesync
tandis que (Serial.available() > 0) {}
char c = Serial.read() ;
if(c == utch) //if il y a un @ sur la ligne, lire les prochains octets / ints
{
readTime() ;
}
}
initialice les LED, animation de démarrage claire

if(Initialize == 0) {}
clearpixels() ;
initialisation = 1 ;
}

ahour = heure() ;

aminute = minute() ;
Si (timeset == 1 || timeset == 0) / / ici, vous pouvez vérifier si le délai a été programmé, vous pouvez arrêter le programme ici si Timeset = FALSE, il suffit de retirer "|| TIMESET == 0"!

{

Si (oldamin < aminute || oldahour < ahour) //check si le temps a changé. TRUE = actualisation -> ensemble tous pour OFF, afficher la nouvelle heure
{
clearpixels() ;
ClockDisplay() ;
}
}
}

Affichage de l’horloge :

Sub ClockDisplay()
{

oldahour = ahour ;

oldamin = aminute ;
int xhour, xmin ;

Si (ahour > = 12) {}
xhour = ahour-12 ; Nous avons seulement 12 LED pour affichage 24h
}
else {}
xhour = ahour ;
}
redimensionnez-la en étapes de 5min
xmin = (aminute / 5) ;
if(oldamin < aminute)
{
oldamin = aminute ;
clearpixels() ;
}
prendre le reste de la division dor la singelmin LED
mmin = (aminute % 5) ; opérateur modulo par exemple. 24 % 5 = 4 ! très utile:-P
pixels.setBrightness(timebright) ;
pixels.setPixelColor (xmin, pixels. Color(5,125,255)) ; vous pouvez changer les couleurs ici ! jouer !
pixels.setPixelColor (xhour, pixels. Color(255,50,0)) ;
pixels.Show() ;

afficher les minutes de singel
pour (int m = 0; m

minpixels.setBrightness(mtimebright) ;
minpixels.setPixelColor (m, pixels. Color(255,255,0)) ;
minpixels.Show() ;
}
}

Lire et traiter TIMEinformation numéro de série

void readtime() / / si nous avons déjà obtenu des principaux « traiter les prochaines données et stocker l’heure pour le temps Lib
{

ahour = Serial.parseInt() ;
aminute = Serial.parseInt() ;
aseconde = Serial.parseInt() ;
Aday = Serial.parseInt() ;
AMonth = Serial.parseInt() ;
AYear = Serial.parseInt() ;
Serial.println("TIMESET") ;
Serial.Print(ahour) ;
Serial.Print(":") ;
Serial.println(aminute) ;
setTime(ahour,aminute,asecond,aday,amonth,ayear) ;
}

Effacer tout!

void clearpixels() / / la valeur de chaque PIXEL unique OFF pour actualiser l’affichage
{

pixels.Begin() ;
minpixels.Begin() ;
pour (int i=0;ipixels.setPixelColor (i, pixels. Color(0,0,0)) ;
minpixels.setPixelColor (i, pixels. Color(0,0,0)) ;
pixels.Show() ;
minpixels.Show() ;
}
}

Articles Liés

Arduino DCF77 Master horloge murale

Arduino DCF77 Master horloge murale

Arduino Master horloge murale.Temps affiché sur les écrans de grande 1"(26mm) 7 segments avec affichage des informations secondaire 4 x 20 LCD. L'horloge peut être utilisée isolée ou fournit les impulsions suivantes aux horloges esclave 1sec alternan
VU-mètre analogique et horloge (Arduino alimenté)

VU-mètre analogique et horloge (Arduino alimenté)

ce projet ramène l'ancien temps VU-mètre analogique, avec la fonctionnalité supplémentaire d'une horloge à la recherche soignée ! Lorsque vous éteignez votre musique les compteurs balancent automatiquement en mode horloge. Derrière tout cela est l'Ar
Horloge murale LED

Horloge murale LED

C'est juste une façon simple de redécorer votre horloge murale avec des matériaux de base autour de la maison.Étape 1: Matériaux nécessaires Vieille horloge muraleSources de lumières LED - Led de chapeau de paille blancPile 9V + ClipAlteco colle/Top
Horloge murale Art de bandes en aluminium

Horloge murale Art de bandes en aluminium

Nous faisons beaucoup d'oeuvres d'art en aluminium bande et nous voulions faire une protection Galdr, (Galdr (pluriel galdrar) est un mot de vieux norrois pour « épeler, incantation »). Nous avons décidé de faire une horloge de mur, et voici comment
Comment rendre votre très propre professionnel horloge murale

Comment rendre votre très propre professionnel horloge murale

j'ai fait cette horloge étonnante mettant en vedette "le Zapper!' à l'aide de matériaux bureautiques et une horloge de Wal-Mart, j'ai acheté pour $3,49.Étape 1: matériaux Les matériaux dont vous aurez besoin pour cette étape inclure :Horloge murale a
Faucon Millenium bricolage horloge murale

Faucon Millenium bricolage horloge murale

Tout d'abord : cette instructable peut être fait avec n'importe quel thème vous voulez ! J'ai décidé de faire un de Star Wars, comme c'était un cadeau pour un ami qui est dans ce.Pour commencer, imprimez votre conception et découpez-le.Étape 1: Tradu
Horloge murale binaire

Horloge murale binaire

Construire un Edison Intel basé horloge murale binaire avec synchronisation de l'heure NTP WiFi.Sur la tournée d'information Intel en 2014 de Munich, nous avons essayé de construire une horloge binaire intelligent. Un total de 33 LED vous dire la dat
Arduino alimenté Gainclone (amplificateur)

Arduino alimenté Gainclone (amplificateur)

pour ceux d'entre vous qui ne connaissent pas (et je n'ai pas jusqu'à une date récente), un Gainclone est un ampli qui est un « clone » de la conception originale d'un ampli fabriqué par 47 Labs appelés un Gaincard et reposent sur des amplificateurs
Arduino alimenté RGB ambiance lampe plus Simon

Arduino alimenté RGB ambiance lampe plus Simon

c'est fondamentalement une lampe d'ambiance RGB arduino alimenté plus le jeune simon dit jeu, deux en un.Mode d'emploi : L'appareil commence avec le programme de lampe d'ambiance RVB par défaut, lorsque vous appuyez sur une des quatre touches en bas,
Horloge murale

Horloge murale

Salut les gars, aujourd'hui nous allons apprendre certaines compétences de conception à faire impressionnant mur des horloges. Dans ce projet, nous utiliserons InkScape pour concevoir notre horloge murale et utilisera une machine de coupe laser à cou
Vélo - arduino alimenté système de purification de l’eau (à l’aide de lumière UVC)

Vélo - arduino alimenté système de purification de l’eau (à l’aide de lumière UVC)

Cette instructable montre comment alimenter un système de purification de l'eau UV-C avec un contrôle de la bicyclette et arduino. Une dynamo à l'arrière de la bicyclette charge une batterie (que nous avons initialement chargé déjà pour ce projet) qu
Brodé horloge murale Vintage

Brodé horloge murale Vintage

J'ai récemment trouvé beaucoup de vieux jute dans mon sous-sol (Oui, assez vieux pour être vraiment vintage!).Pour cette raison, je pensais à des façons de l'utiliser, quand l'idée de l'horloge est venu à mon esprit. Toile de jute est vieux ou nouvea
Recadrer : transformer iPhone ancienne horloge murale ou sticker !

Recadrer : transformer iPhone ancienne horloge murale ou sticker !

Vous avez un vieil iPhone fonctionnel qui est assis autour de collecte de la poussière ? C'est un mini-ordinateur Super avancé complètement fonctionnel avec un écran magnifique, haut-parleurs, microphones et une tonne de capteurs construit en. J'ai d
Horloge murale en bois de palette

Horloge murale en bois de palette

Créer une horloge murale des planches de palettes de bois recyclé est incroyablement simple et semble fantastique. Ce Instructable documente le processus.* Si vous aimez ce Instructable envisager de voter pour lui au concours de temps ! Comme toujour