Je suis novice en matière de programmation C++ Arduino et j’ai un problème…
J’ai fais un montage sur « Breadboard » avec un NE555 en mode astable (impulsions à une seconde environ) et 4 « bascules D Edge-Trigered Flip-Flop » qui constituent un compteur binaire 4 bits : (2)0 (2)1 (2)2 (2)3 qui compte de 0 à 15 par le biais de LED’s qui s’allument en séquence. À gauche la LED de Bit de poids (2)0 faible et à droite la LED de Bit de poids fort (2)3 (voir photo jointe).
J’ai branché les quatre sorties de bascules D (CD4013):
(2)0 sur l’entrée digitale 1 de l’Arduino ;
(2)1 sur l’entrée digitale 2 de l’Arduino ;
(2)2 sur l’entrée digitale 3 de l’Arduino ;
(2)3 sur l’entrée digitale 4 de l’Arduino .
Et les entrées du TM1638 sur :
VCC / GND sur le 5V et le GND de l’Arduino ;
l’entrée STB sur la broche 10 de l’Arduino ;
l’entrée CLK sur la broche 9 de l’Arduino ;
l’entrée DIO sur la broche 8 de l’Arduino.
À ce stade, mon problème est le suivant, comment coder l’Arduino (via l’IDE) pour que celui-ci prenne en compte les impulsions délivrées par le compteur binaire 4 bits et les transmette au TM1638 afin que celui-ci incrémente son afficheur BCD en conséquence ?
ceci n'est pas une bonne idée, la broche 1 de votre uno est le Tx du port Série, ça vous empêchera de debugger. déplacez vos entrées sur 2,3,4 et 5
Pour bien débuter avec l'arduino, un bon point de départ c'est de lire les tutos d'eskimon (et de lire le tuto de base sur le C++ de Zeste de savoir si le C ou le C++ c'est du chinois pour vous)
Regardez comment on gère un bouton, lire une impulsion c'est la même chose.
Bonjour, merci pour tous ces conseils techniques qui constituent une très bonne base de travail. Je vais les étudier avec attention et essayer de les mettre en application. C'est comme cela qu'on progresse ;-).
À bientôt.
Merci de l'intérêt que vous portez tous à ce forum. Même si je manque un peu de temps en ce moment, je vais étudier et mettre en application tous vos conseils avisés. Je reviens vers vous dès que posssible. La moindre des choses étant de vous tenir informés de l'évolution de la résolution de mon problème.
Une bonne fin de week-end à vous tous.
Bonjour jpb bricole, j'ai bien installé la librairie TM1638plus et téléversé ton programme après avoir connecté le tout en fonction de celui-ci. Quand le compteur binaire n'est pas actif, l'afficheur affiche alternativement 0 et 15. Une fois le compteur binaire lancé celui-ci influence l'afficheur qui affiche de manière aléatoire les chiffres entre 0 et 15 mais sans rapport apparent avec les Leds du compteur 4 bits. Selon toi cela peut venir d'où? J'ai mis le bit de poids faible sur la pin 8 et le fort sur la pin 11. J'ai essayé de manière empirique d'inverser et d'alterner autrement les entrées sur les pin 8 à 11 mais rien n'y fait ;-). En tout cas ton programme est déjà une très bonne avancée dans mon projet. Si tu n'as pas de réponse ce n'est pas grave.
Cordialement.
Bonjour jpbbricole, effectivement cela fonctionne mieux...oups désolé!
Il ne reste plus qu'un petit problème, l'afficheur n'affiche que les nombres pairs : 0 - 2 - 4 - 6 - 8 -10 -12 -14 - 0 - 2 etc et ils correspondent bien aux Led's qui s'allument au niveau du compteur 4 Bits!!! Ce qui veut dire que seul mon Bit de poids faible, le 2^0 semble ne pas être pris en compte. J'ai revu toutes les connections, rien à signaler...Qu'en penses tu? On touche au but (enfin, "tu" touches au but).
Merci d'avance de ta réponse.
Cordialement.
for (int b = 0; b < 4; b ++)
{
pinMode(bcdInputPin , INPUT); // Initialisation des entrées BCD
^
ici
}
ça fonctionne quand-même parce que les broches sont par défaut configurées en entrées, mais dans l'absolu ...
pour ce qui est du bit[0] : que dit le moniteur série ?
cette ligne est faite pour y afficher la valeur lue :
Serial.println("BCD lu: " + String(bcdLu));
si le moniteur série affiche bien tous les nombres et pas seulement les pairs, ce doit être un souci avec le TM1638 ou sa liaison avec le µC
vérifie aussi (à l'oscillo ou au voltmètre) que ce bit sort bien du µC, on ne sait jamais
A quelle fréquence tourne l'horloge du compteur?
A quelle fréquence tu vois la LED du poids faible clignoter (précisément combien de temps est-elle allumée et combien de temps est-elle éteinte)?