Étape 6: La partie logicielle - explication du code (1)
Voici une explication détaillée du Code
1) nous commencerons par définir nos goupilles, nous utilisons tre Arduino épingles pour chaque 2 registres à décalage (se les documentations pour les broches)
http://Arduino.cc/en/Reference/int
Lignes de données à la pierre de l’heure Lignes de données à la pierre minute décimale Lignes de données à la seule minute Pierre boutons de réglage de l’heure et minute
int hlatchPin = 3 ;
int hclockPin = 4 ;
int hdataPin = 5 ;
int dlatchPin = 6 ;
int dclockPin = 7 ;
int ddataPin = 8 ;
int mlatchPin = 9 ;
int mclockPin = 10 ;
int mdataPin = 11 ;
const int hourPin = 12 ;
const int minPin = 13 ;
2) puis nous définissons nos variables
int h = 0 ; number_to_display octet ;
int m = 0 ;
mins int = 0 ;
d int = 0 ;
int previousHours = 0 ;
int previousMins = 0 ;
int hours_display [13] ;
3) puis nous définissons la valeur d’affichage de l’heure (binaire - il suffit de regarder la photo ci-jointe)
Une référence à une matrice : http://www.arduino.cc/en/Reference/Array
number_to_display [0] = 0000000000000000 ;
number_to_display [1] = 0000000001000000 ;
number_to_display [2] = 0100000001000000 ;
number_to_display [3] = 0100000000100100 ;
number_to_display [4] = 0010010000100100 ;
number_to_display [5] = 0010010001100100 ;
number_to_display [6] = 0110010001100100 ;
number_to_display [7] = 0110010000101101 ;
number_to_display [8] = 0010110100101101 ;
number_to_display [9] = 0010110101101101 ;
number_to_display [10] = 0110110101101101 ;
number_to_display [11] = 0110110100111111 ;
number_to_display [12] = 0011111100111111 ;
4) nous déclarons nos entrées / sorties
Pinmode () Référence : http://arduino.cc/en/Reference/PinMode
pinMode (hlatchPin, sortie) ; pinMode (dlatchPin, sortie) ; pinMode (mlatchPin, sortie) ; pinMode (hourPin, entrée) ;
pinMode (hclockPin, sortie) ;
pinMode (hdataPin, sortie) ;
pinMode (dclockPin, sortie) ;
pinMode (ddataPin, sortie) ;
pinMode (mclockPin, sortie) ;
pinMode (mdataPin, sortie) ;
pinMode (minPin, entrée);