1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| #define verrou 7 //Broche connectée au ST_CP du 74HC595
#define horloge 8 //Broche connectée au SH_CP du 74HC595
#define data 9 //Broche connectée au DS du 74HC595
byte table8Diodes[] = {
0b00000001,
0b00000011,
0b00000111,
0b00001111,
0b00011111,
0b00111111,
0b01111111,
0b11111111};
void setup(){
pinMode(verrou, OUTPUT);
pinMode(horloge, OUTPUT);
pinMode(data, OUTPUT);
}
void loop(){
//on affiche les 10 chiffres de 0 à 9 en binaire
for (byte i=0; i<=7; i++){
digitalWrite(verrou, LOW); //On active le verrou pour l'envoi
for (char j=7; j>=0; j--){
//on lit pour chaque segment sa valeur 0 ou 1
digitalWrite(horloge, LOW);
delay(33);
digitalWrite(data, bitRead(table8Diodes[i],j));
delay(33);
digitalWrite(horloge, HIGH);
delay(33);
}
digitalWrite(verrou, HIGH);//et enfin on relâche le verrou
//Sans pause, cela défilerait trop vite
delay(1000);
}
} |
Partager