Faire un calendrier Tzolkin Maya (5 / 5 étapes)

Étape 5: Code d’Arduino

Enfin, le code qui utilise une puce de CCF pour régler l’heure sur le plateau, puis calcule la date de Julian et de celui fonctionne où dans les deux tours de Tzolkin le jour tombe. Il écrit ensuite la séquence de bits appropriés dans les registres à décalage. Il s’agit de mon premier programme Arduino, et je me suis appuyé fortement sur les sources de référencés et le cookbook Arduino pour l’assembler.

Code :

/ * Avec grâce aux sources suivantes pour les pièces de ce code et les ressources :

Aire de jeu pour la bibliothèque : http://www.arduino.cc/playground/Code/Time

Puce de CCF : https://www.sparkfun.com/products/99

calcul des jours : http://arduino.cc/forum/index.php?topic=94925.0

Définition : La date de Julian (JD) est un compte continu des jours depuis le 1er janvier 4713.

*/

#include < Time.h > //include bibliothèques nécessaires pour le calcul du temps

#include < Wire.h >

#include < DS1307RTC.h > / / une base bibliothèque DS1307 qui retourne le temps comme un time_t

int dataPin = 2 ; définir les Pins pour le registre à décalage

int clockPin = 3 ;

int latchPin = 4 ;

int seqtzn1 [] = {128,64,32,16,8,4,2,1,0,0,0,0,0}; //arrays contrôlant les LEDs

int seqtzn2 [] = {0,0,0,0,0,0,0,0,128,64,32,16,8} ;

int seqtzds1 [] = {128,64,32,16,8,4,2,1,0,0,0,0,0,0,0,0,0,0,0,0} ;

int seqtzds2 [] = {0,0,0,0,0,0,0,0,128,64,32,16,8,4,2,1,0,0,0,0} ;

int seqtzds3 [] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,64,32,16} ;

void setup()

{

Serial.Begin(9600) ; établir une communication série sur ordinateur

pinMode (dataPin, sortie) ; modes de mettre broche

pinMode (latchPin, sortie) ;

pinMode (clockPin, sortie) ;

setSyncProvider(RTC.get) ;   la fonction permettant d’obtenir le temps du CCF

if(timeStatus()! = timeSet)

Serial.println ("Impossible de synchroniser avec le CCF") ;

d’autre

Serial.println ("CCF a définir l’heure système") ;

}

void loop()

{

calculer Date de Julian et les deux numéros de Tzolkin en utilisant les fonctions ci-dessous

jd long = JulianDate() ;

tzn int = TzolkinNumber(jd) ;

TZD int = TzolkinDaysign(jd) ;

Serial.println(JD) ;

Serial.println(tzn) ;

Serial.println(TZDs) ;

Envoyer des données de registres à décalage

digitalWrite (latchPin, basse) ; loquet de traction faible commencer à envoyer des données

shiftOut (dataPin, clockPin, LSBFIRST, seqtzds3[tzds]) ;

shiftOut (dataPin, clockPin, LSBFIRST, seqtzds2[tzds]) ;

shiftOut (dataPin, clockPin, LSBFIRST, seqtzds1[tzds]) ;

shiftOut (dataPin, clockPin, LSBFIRST, seqtzn2[tzn]) ; Envoyer les données

shiftOut (dataPin, clockPin, LSBFIRST, seqtzn1[tzn]) ;

digitalWrite (latchPin, HIGH) ; loquet de traction haute cesser d’envoyer des données

Delay(300000) ; Patientez quelques instants avant de répéter

}

calcul de Julian date jd

long JulianDate() {}

time_t t = now() ; stocker l’heure durant la variable t

int todayDay = day(t) ;           la journée pour le temps donné t

int todayMonth = month(t) ;         le mois pour l’instant donné t

int todayYear = year(t) ;          l’année pour le temps donné t

long des siècles = todayYear/100 ;

saute depuis longtemps = siècles/4 ;

leapDays long = 2 - siècles + sauts ;         Remarque est négatif!!

yearDays long = 365,25 * (todayYear + 4716) ;     jours, jusqu’au 1 janvier de cette année

long monthDays = 30.6001* (todayMonth + 1) ;    jours jusqu'à 1 mois

entraîner longtemps = leapDays + todayDay + monthDays + yearDays-1524.5 ;

retourner le résultat ;

}

calculer les deux nombres de Tzolkin qui donnent la position en rotation du Tzolkin

int TzolkinNumber (long jd) {}

résultat int = (jd - 2456214) % 13 ; le nombre de jour du Tzolkin est calculé comme étant de 0 à 12

retourner le résultat ;

}

int TzolkinDaysign (long jd) {}

résultat int = (jd - 2456203) %20 ;  calculer signe de Tzolkin jour 0 à 19 ans de 10.3.12 et numéro d’ordre 0 de wikipedia

retourner le résultat ;

}

Articles Liés

Comment faire un calendrier dans Photoshop

Comment faire un calendrier dans Photoshop

Hi. Dans ce tutoriel je va vous montrer comment faire un calendrier dans Photoshop. Ce projet pourrait prendre un certain temps, mais il vaudra. Je vais faire une année de calendrier qui montre toute l'année sur une seule page.Table des matières :Pro
Faire un calendrier de l’Avent de Candy

Faire un calendrier de l’Avent de Candy

Vidéo un lien au cas où ce qui précède ne fonctionne pas : https://www.youtube.com/watch?v=a9TSn-COjx4Les vacances sont rapides approchant, alors voici un projet rapide pour vous fournir un moyen délicieux à rebours jours jusqu'à Noël !Calendriers de
Faire le calendrier perpétuel de calendrier de l’année dernière

Faire le calendrier perpétuel de calendrier de l’année dernière

Happy New year !Maintenant que c'est une nouvelle année, sera poubelle ce vieux calendrier ?Inutile, quand on peut faire un calendrier perpétuel de lui !Tournez simplement le « disque de jours » pour s'aligner avec les jours !Étape 1: Outils et matér
Comment faire une calendrier-horloge à mélanger dans le code de lot

Comment faire une calendrier-horloge à mélanger dans le code de lot

Hé là les gars ! Aujourd'hui, je vous montre comment faire un calendrier et une horloge dans un code, j'espère que vous apprécierez !PS: Je sais c'est très basique, mais j'ai l'intention d'être des gens très nouveau lot de codage, alors s'il vous pla
Comment faire un bon marché, mais efficace airsoft grenade

Comment faire un bon marché, mais efficace airsoft grenade

c'est comment faire un bon marché, mais efficace airsof grenade. Petite que la grenade waterballoon, grenade oeuf, grenade de bicarbonate de soude ou quoi que ce soit que vous pouvez aller acheter et tout aussi efficaceÉtape 1: Liste d'épicerie bien
Comment faire un calendrier visuel ou un Conseil pour faire

Comment faire un calendrier visuel ou un Conseil pour faire

A calendrier visuel ne ressemble à un calendrier qui indique les jours du mois. Il contient des photos pour montrer visuellement les choses « À faire » afin d'aider à communiquer avec les gens avec une diminution des aptitudes ou compétences cognitiv
Comment faire un calendrier réutilisable de neige janvier

Comment faire un calendrier réutilisable de neige janvier

il s'agit d'un calendrier fait à partir de zéro qui peut être réutilisé chaque année. Voici comment le faire.Étape 1: Utilisation de Microsoft Word Pour cette étape, vous devez avoir Microsoft Word, Microsoft Word Starter ou Google Docs. J'ai utilisé
Comment faire un calendrier Dogvent

Comment faire un calendrier Dogvent

Avec Noël juste autour du coin, il est temps de concocter un calendrier de l'Avent spécial supplémentaire pour le chien (ou pet) spécial dans votre vie. Après tout, c'est la saison pour donner;)Étape 1: Les ingrédientsRassemblez vos affaires ! Vous a
Chaud pour faire une catapulte simple mais efficace dans GMOD 10

Chaud pour faire une catapulte simple mais efficace dans GMOD 10

cette instructable vous montrera comment faire un simple, mais beaucoup de tir catapulte dans garry s mod 10. C'est un engin commun qui est parfait pour les débutants. joueurs de Mod de Garry plus savent comment faire quelque chose comme ça.Profitez
Comment faire une écharpe petite mais puissante

Comment faire une écharpe petite mais puissante

l'écharpe est une arme antique. Il est certain qu'élingues étaient connus des peuples néolithiques autour de la Méditerranée, mais il semble probable que la toile est beaucoup plus ancienne. Il est fort possible que la toile a été inventée pendant le
Comment faire une veilleuse awesome (mais il ne dure pas trop longtemps)

Comment faire une veilleuse awesome (mais il ne dure pas trop longtemps)

cela vous montrera comment faire une veilleuse awesome en utilisant un laser, cire et une ampoule.Étape 1: matériaux et outils les matériaux que vous aurez besoin sont :-une ampoule-cire de bougie-un pointeur laser (peut être vert ou rouge)outils don
Comment faire un grands-parents calendrier &amp; Scrapbook (même si vous ne savez pas comment faire pour scrapbook)

Comment faire un grands-parents calendrier &amp; Scrapbook (même si vous ne savez pas comment faire pour scrapbook)

il s'agit d'un cadeau de vacances très économique (et très apprécié!) pour les grands-parents. Cette année, j'ai fait 5 calendriers pour moins de 7 $ chaque.Matériaux :12 belles photos de votre enfant, enfants, nièces, neveux, chiens, chats ou autres
Faire votre propre tableau blanc et un calendrier personnalisé

Faire votre propre tableau blanc et un calendrier personnalisé

Certains calendriers vous donnent la semaine commencant avec dimanche, certains à partir de lundi et ainsi de suite. Je voudrais avoir mon front de week-end et centre pour moi de voir, et puis le reste de la semaine peut apparaître à sa place après l
Ultime Guide pour faire une Forge Aluminium pas cher mais efficace.

Ultime Guide pour faire une Forge Aluminium pas cher mais efficace.

Il y a beaucoup de guides et beaucoup d'idées, j'ai recueilli et, étant que j'ai terminé ce (premier... J'ai fait une toute nouvelle configuration juste pour cela instructible... vous devriez vous sentir spéciale.) dans les deux jours et surtout... à