projet machine à sous

Bonjour,

Je suis en train de réaliser moi et mon groupe une machine à sous qui est physique et non virtuelle. Pour ma part, je m'occupe de la partie éclairage de la machine. J'ai déjà fais un câblage, pour cela j'utilise une puce 74HC595 shift register 8 bits pour pouvoir gérer ces ampoules, une puce pour l'état haut des ampoules qui se nomme TD62783APG et une puce pour l'état bas des ampoules qui se nomme ULN2804AG. Et la puce 74HC595 est relié à un arduino. Certaines de ces ampoules sont branchées avec les mêmes câbles +, dès que je branche le système (arduino + câblage) à la machine à sous et que je fais exécuter un petit programme (ci-dessous) qui fais allumer les ampoules.

Et mon problème est là, pour allumer les ampoules il me faut envoyer un code binaire, mais vu que le câble + est relié à plusieurs ampoules, et je ne sais pas comment faire pour allumer une seule ampoule.

Merci d'avance pour vos réponses !

//Broche connectée au SH_CP du 74HC595
const int horloge = 11;
//Broche connectée au ST_CP du 74HC595
const int verrou = 10;
//Broche connectée au DS du 74HC595
const int data = 9;

#define FIN 00000000 
#define L23 00000100 //L23 veut dire Lamp N°23
#define L24 00101000

void setup()
{
 pinMode(horloge,OUTPUT);
 pinMode(verrou,OUTPUT);
 pinMode(data,OUTPUT);
}

void loop()
{
       //On active le verrou le temps de transférer les données
       digitalWrite(verrou, LOW);
       //on envoi toutes les données grâce à shiftOut (octet inversée avec '~' pour piloter les LED à l'état bas)
       shiftOut(data, horloge, LSBFIRST, L23);
       //et enfin on relache le verrou
       digitalWrite(verrou, HIGH);
       //une petite pause pour constater l'affichage
       delay(1000);
       
       //On active le verrou le temps de transférer les données
       digitalWrite(verrou, LOW);
       //on envoi toutes les données grâce à shiftOut (octet inversée avec '~' pour piloter les LED à l'état bas)
       shiftOut(data, horloge, LSBFIRST, 0);
       //et enfin on relache le verrou
       digitalWrite(verrou, HIGH);
       //une petite pause pour constater l'affichage
       delay(1000);
}

Tuto

infobarquee: Tuto

Merci mais j'ai déjà consulter cela...

Un petit schéma de l’installation ne serait pas de trop pour comprendre comment fonctionne ton montage.
Et lire ça pour comprendre comment insérer du code dans un post.

Maintenant, sauf si les ampoules sont imposées, il y a des LED “intelligentes” (style Neopixels, ou équivalentes) qui se pilotent avec un fil ce qui évite le montage et la gestion de registres à décalage et de réseaux de transistors. On trouve des librairies arduino pour les programmer.

Bonjour,

Je ne comprend pas tout Tu parles d'une puce 74HC595 c'est à dire qu'on peut commander 8 ampoules (leds ??) Ensuite tu parles d'un TD62783APG donc driver pour 8 ampoules à l'état haut Ensuite tu parles d'un ULN2804AG donc driver pour 8 ampoules à l'état bas. Commandé comment puisque les 8 sorties du 74CH595 sont prises? Et pour couronner le tout dans ton source tu parles de la led 23 ???

Est ce multiplexé?

Comme le dit fdufnews un schéma ne serait pas de trop, je pense qu'il est même impératif si on veut y comprendre quelque-chose.