Double compte a rebours

Bonjour a tous , je suis tout neuf dans le monde de l'Arduino ( a 50 ans je ne suis pas vraiment neuf physiquement :D ) et je dois dire que je suis impressionné par les possibilités de ce si petit circuits et après avoir acheté mon premier kit et fait tous les tuto d'apprentissage j'aimerai bien créer mon premier " truc " et c'est la que j'ai besoin de vous . Mon idée et besoin ,puisque je fais parti d'une association de réal game, j'aimerai créer un double compte a rebours :

Fonctionnement : je sélectionne le temps ( plage de 5 a 60 min suffit ) , il s'affiche sur deux affichage a leds de grande taille avec min et secondes , quand j'appuis sur le bouton 1 , le compte a rebours de l'afficheur 1 commence , l’afficheur 2 ne bouge pas . Quand j'appuis sur le bouton 2 le compte a rebours de l’afficheur 2 commence et celui de l’afficheur 1 se fige , si je ré-appuis sur le bouton 1 le compte a rebours de l’afficheur 1 reprend et celui de l’afficheur 2 se fige et ainsi de suite jusqu’à la fin d'un des 2 compte a rebours avec un signal sonore type sirène ou buzzer en fin de compte a rebours .

J'aimerai que ce montage soit fais avec un microcontrôleur et une batterie de 7.4v et c'est la que j'ai besoin de vous , j'ai retourné la toile et j'ai rien trouvé de similaire , beaucoup de chose se rapprochant mais rien de concluant . Mes questions sont : Quel type de matériel utiliseriez vous ( microcontrôleur , afficheur ) et éventuellement avez vous des schémas et programmes pour ce circuit ou similaire . Merci d'avance a tous et excusez ma jeunesse d'arduinien ;D

Bonsoir,

En tant que débutant, je commencerais par le tuto un simple bouton d'eskimon, pour le démarrage de décompte. ensuite un encodeur pour choisir le temps, et ici la gestion et affichage d'un miniteur..

Mais déjà vous avez un kit? lequel ?Avec l'arduino fournis et quelques boutons vous pouvez commencer votre programme et affiché tout ça dans le terminal à moindre frais...

Pour la BOM ; 1 Arduino (suivant l'affichage), 2 Boutons, 1 Encodeur et l'affichage ... Mais pour l'affichage grand ? grand comment ?

@+

Tout d'abord merci beaucoup pour votre aide d'une grande valeur pour moi, J'ai un kit commun à beaucoup je pense, carte uno + capteur divers + écran LCD, boutons, Led, résistances, breadboard etc..., j'ai déjà fait pas mal de test avec succès :), pour l'affichage j'ai vu qu'il existait des block 7 segments de 1 à 5 pouces mais 2 pouces serait bien. À la place d'une uno la nano ferait l'affaire ? Merci encore pour vos conseils que je vais suivre à la lettre et vos liens, si vous avez d'autres idées ou conseils je suis preneur

Pour la programmation, je verrais bien une petite machine d’états

  • Etat 1: Idle, attente du bouton 1 pour lancer le chrono 1 et passer à l’état suivant
  • Etat 2 : Décompte chrono 1. Attente bouton 2 pour arrêter le décompte et passer à l’état suivant, ou revenir à Idle en fin de décompte
  • Etat 3 : Décompte chrono 2. Attente bouton 1 pour arrêter le décompte et passer à l’état précédent, ou revenir à Idle en fin de décompte
    La sélection des temps se ferait dans le setup (par exemple). Et il faut une fonction d’affichage des 2 chronos sur l’afficheur à leds.

Bonjour lesept , tout d'abord merci pour ta participation , je suis tout ouï mais IDLE qu'est ce que c'est ? a tu des tuto , exemple liens pour que j'apprenne , merci d'avance

C'est juste un nom pour dire 'en attente'. J-M-L a fait un tutoriel sur les machines d'états, dans la section tutos du forum français.

Tu devras aussi apprendre à faire un code non bloquant, c'est à dire ne pas utiliser la fonction delay (à part pour un anti-rebond pour un bouton poussoir)

Ça marche, je vais étudier ça, grâce à vous j'ai beaucoup avancé aujourd'hui, je vous en remercie et je n'hésiterai pas à vous soumettre mes avancées et les problèmes rencontrés

Ça marche

C'est tout a fait possible , j'ai réalisé 3 chronos simultanés , un en décrémentation et 2 en incrémentation , ça tourne en même temps , affiche ... il ne faut juste rien utiliser de bloquant (les while en particulier).

Si tu n'as d'autre choix que d’être bloquant , tu peux toujours mesurer le temps de ton blocage et le soustraire a ton chrono cible en sortie de code bloquant ... mais c'est du bricolage un peu ! le résultat sera bon mais il faut penser le code non bloquant d'entrée de jeu c'est plus simple ...

tu as la librairie simpleMinuteur qui peut t'aider a manipuler le temps très simplement et très efficacement !

je pense que tu vises un module de jeu type airsoft ...

perso j'ai procédé en utilisant un switch case sur l'etat du jeu ... ainsi tu peux gérer tes différentes infos a afficher et si je détecte un changement d’état, je fait un lcd.clear() ... et je re-affiche dans le "case" qui va bien ...

bon courage !

Merci Limp47 , effectivement je suis président d'une asso d'airsoft et j'ai des membres exigeants :D , pour le moment en suivant les conseilles de J4l13n j'ai réussi a placer faire fonctionner mes 2 boutons qui allume une bande led RVB soit en vert , soit en bleu selon si on appui sur le bouton 1 ou 2 8) ;D maintenant je travaille sur l'affichage , je suis partie sur deux 74hc595 et 8X7 segments ( 2 afficheurs de 4X7 segments ) et pour maitriser ce 74HC595 je suis actuellement plongé dans le superbe tuto de Eskimon mais c'est pas de le tarte .

tuto de Eskimon (maitrise du 74HC595)

tu ne met pas de LCD donc ?

pour la gestion des boutons , perso je me suis créé une fonction booléenne :

  • elle renvoi true si l'appuis correspond au besoin pour capturer selon le mode de jeu ... sinon elle renvoi false ...

donc dans ton programme au lieu de gérer des digitalRead(tonBouton) , tu vas juste écrire un if(allowCapture()) ou allowCapture est le nom que j'ai choisi pour cette fonction, et la fonction fera la surveillance des boutons et pourra basculer ton jeu neutre / capture etc ...

du coup , a partir de ça , tu peux par exemple leur laisser le choix pour certains mode (ou l'attaquant sera connu avant , je leur demande qui attaque avant avec un : appuis sur la couleur de l'équipe qui attaque) de pouvoir capturer avec un double appuis (le rouge et le bleu simultanément) ... sur le terrain c'est sympa , ils doivent poser leur répliques pour armer ça change le game play ... perso je ne joue pas , j'aime juste programmer pour des assos :)

bon courage pour la suite !

Alors la Limp47, tu m'intéresse vraiment, si tu as un peux de temps à nous consacrer est ce que je peux te contacter en MP

Je pense que tu peux poser tes questions ici , ca peut profiter a d’autre :slight_smile: