Etape 1: Le programme :
En lisant un manuel concis et consultez Exemples (ici et là), je suis venu pour le programme suivant :
(Désolé je ne sais pas comment faire pour obtenir ceci dans une fenêtre de nice)
/ * Apprendre comment programmation Arduino * /
/ * par Rob van Staalduinen - Pays-Bas * /
la num de Byte [] = {192,249,164,176,153,146,130,248,128,144,64,121,36,48,25,18,2,120,0,16} ;
Tableau avec les chiffres 0-9 et 0. -9. (pour les chiffres [1] de l’heure)
la temps de Byte [] = {0,0,0,0} ; Tableau pour mettre le temps
push de Byte ; compteur de retard bouton-poussoir
installation Sub ()
{pour (octet a = 3; a < = 13 ; un ++) / / sets datapins 4 à 13 à la sortie
{pinMode(a,OUTPUT);} 3 = sonnerie 4 = verrou 7 = clk 8 = données 10-13 = LED
digitalWrite(3,HIGH);} arrête le buzzerd de bip
void loop()
{long vitesse = 37500+(1024-analogRead(0)) * 2; / / temps change encontre ; temps-vitesse pour
planches á utilisent POTENTIOMETRE bouclier
pour (c octets = 10; c < = 13; c ++) / / boucle de leds
{digitalWrite(c,HIGH);} Jeux dirigé par secondes [c] off
Pour (long un = 0; a < = vitesse ; un ++) / / delay timer
{Si (analogRead(1)==LOW) / / lit button1
{temps [1] = temps [1] +(!push) ; push = 60;} Ajoute 1 heures
Si (analogRead(2)==LOW) / / lit button2
{[2] le temps = temps [2] +(!push) ; push = 60;} Ajoute 10 minutes
Si (analogRead(3)==LOW) / / lit button3
{[3] le temps = temps [3] +(!push) ; push = 60;} Ajoute 1 minutes
Push push de =-(push>0) ; bas-compteur pour bouton-poussoir
Si (temps [3] > 9) {temps [3] = 0; temps [2] = temps [2] + 1;} / / définit les minutes + 10 si plus de 9 et aller à 0
Si (le temps [2] > 5) {temps [2] = 0; temps [1] = temps [1] + 1;} / / sets heures + 1 si plus de 5 et aller à 0
Si (temps [1] > 9) {temps [1] = 0; temps [0] = temps [0] + 1;} / / définit les heures + 10 si plus de 9 et aller à 0
Si ((temps [0] > 1) & & (temps [1] > 3)) {temps [1] = 0; temps [0] = 0; / / sets heures à 0 si supérieur à 23
digitalWrite(3,LOW) ; Delay(30);digitalWrite(3,High);} émet un bip toutes les heures
pour (char b = 0; b < = 3; b ++) / / boucle pour l’écriture de 4 chiffres
{digitalWrite(4,LOW); / / désactiver les sorties
shiftOut (8, 7, MSBFIRST,(num[time[b]+10*(b==1)])) ; écrit des données-nombre
shiftOut (8, 7, MSBFIRST,(241+(b==1)+3*(b==2)+7*(b==3))) ; écrit des chiffres-données
digitalWrite(4,HIGH);} Envoyer des données aux sorties
digitalWrite(a/(speed/4)+10,LOW);} ensembles de 15 secondes a conduit
[3] le temps = temps [3] + 1;} Ajoute 1 minute à temps