conception d'un grand afficheur pour une horloge sous arduino

donc montage tester avec quelques modifications :

  • alimentation 9V (12V + 7809)
  • résistances tous 4.7 kohm

résultat : marche pas ... quelques segments s'allume de façon non satisfaisante ... et affichage incorrect ... je revérifie ça demain ... j'ai déjà très mal à la tête ...

Bonjour;

Au passage, en haut à droite, les symboles ne sont pas cohérents, il y a du P et du N mélangés.
Pour le reste (pilotage des 2 transistors) je ne vois pas de bug.

jeanfranlec:
Bonjour;

Au passage, en haut à droite, les symboles ne sont pas cohérents, il y a du P et du N mélangés.
Pour le reste (pilotage des 2 transistors) je ne vois pas de bug.

oué oué ... mais c'est juste le symbole ... j'ai utilisé du P

je ne sais que faire ... j'ai un problème de soudure ??? ... l'alimentation n'est pas suffisante ??

enfin ...

je refais tous d'est le début ... mais il me faut un peu de temps pour repartir ...

mon montage actuelle :

résultat : les afficheurs n'affiche pas ce qu'il devrais afficher (j'ajoute des photos demain) ... en + tous les segments n'ont pas la même luminosité ... j'utilise une alimentation 12v 1A

:frowning:

001.pdf (29.5 KB)

je me demande si ce n'est pas la nature de l'afficheur (4 digits multiplexé) qui pose problème ...

je recommence ....

Bonsoir;

Si ca peut aider:
1/ L'ULN2803 est un circuit sorties collecteur ouvert, pour qu'il conduise bien, il faut qu'il soit en mode "saturé", le fabricant à bien entedu fait le max pour qu'il sature (darlington) à condition que l'utilisateur fasse aussi le necessaire pour cela.
2/ tu indique que toutes tes résistances sont des 4.7k
Admettons que les collecteurs ouverts soient bien en mode saturé, et en négligeant la chute de tension dans les diodes des segments, on peut alors approximer (et de loin) la valeur du courant max dans un segment = 12/4.7 (en mA) soit à 2.5mA MAXI par segment.
Si on tient compte de la chute de tension dans les diodes, on tombe en dessous de 2.5mA

A mon avis, avec 2.5mA par segment, ce n'est pas possible de fonctionner correctement.
Il faut saturer les transistors de sorties de l'ULN et aussi "pousser" un peu plus l'intensité de sortie pour donner plus de courant aux segments.

Selon moi, tu peux diviser au moins par 10 les résistances 4.7k sur a, b, c, d, e, f, g (soit 470 Ohms, voir 390 Ohms au lieu de 4.7k Ohms) car se sont ces résistances qui limitent le courant dans les segments.

c'est noté jeanfranlec ... merci

Ne pas oublier que dans un montage darlington il y a 2 jonctions base émetteur en série soit 0,8 V x 2 = 1,6 V
et qu'il faut en tenir compte pour le calcul de la résistance de base.
Un peu de lecture :
https://forum.arduino.cc/index.php?topic=100727.0

j'ai effectué les modifications suivantes au niveau des résistances :

j'aimerais tester l'allumage des leds .. donc si j'ai bien compris : il faut que je place 5v à l'une des entrée du ULN2803 et un 5v sur l'une des bases du BC548 (avant la résistance de 4.7 k ohm) et je devrais avoir un segment de mon digit allumé ... non ?

002.pdf (33.5 KB)

j'aimerais tester l'allumage des leds

C'est effectivement indispensable avant d'envisager la moindre ligne de programme.

sur l'une des bases du BC548 (avant la résistance de 4.7 k ohm)

Je préfère lire : AVEC la résistance de 4,7 k en série.
On ne met jamais dirrectement une base de transistor au +5 V.

68tjs:
....
Je préfère lire : AVEC la résistance de 4,7 k en série.
On ne met jamais dirrectement une base de transistor au +5 V.

oué .. c'est ce que je voulais dire .. et j'ai bien lu cette remarque dans votre excellent tutorial sur les transistor :wink:

j'ai pas bien compris un truc important : les sorties du 74HC595 doivent être tous à l'etat +5V pour que les segments s'allume ?!? ... pourtant une des sortie sera connecter au + des leds et l'autres au - des leds ... non ?

j'arrive pas à saisir ce truc ...

si vous pouvez m'expliquer (une explication pour les nuls) ...

Merci

pepe:
Les transistors Darlington de l'ULN2803 agissent comme des inverseurs (d'où le symbole sur mon schéma). Ainsi, lorsqu'un niveau haut est produit sur une sortie du 74HC595, la sortie de l'ULN2803 correspondante est tirée vers la masse et alimente les segments qui y sont reliés, côté cathodes.

Les transistors NPN et les transistors MOSFET P sont également montés en inverseurs, de sorte que lorsqu'un haut est produit sur une sortie du 74HC595, le drain du transistor MOSFET correspondant est tiré vers le 12V (inverseur NPN + inverseur MOSFET = non-inverseur) et alimente les segments qui y sont reliés, côté anodes.

Il faut donc bien toujours présenter un niveau haut sur les sorties du 74HC595 correspondant aux cathodes et anodes des segments sélectionnées.

j'arrive bien a suivre là ... c'est clair ... merci

mais j'essai de comprendre le fonctionnement sans le ULN ni PMOS ... car au départ ce montage arduino fonctionne avec un petit afficheur 4 digits multiplexé a anode commune

donc j'ai deux 'haut' en sortie du 74HC595 relié directement aux cathodes et anodes de l'afficheur 4 digits multiplexé ... c'est normal ?

pepe:
Non, certainement pas.

Dans le cas de figure de 74HC595 seuls (sans transistor) directement branchés à un afficheur AC, les sorties reliées aux cathodes doivent forcément produire un niveau bas pour allumer un segment.

(NB: en principe, on équipe les sorties de sélection des digits de transistors, car un 74HC595 ne doit pas produire plus de 35 mA par pin et 70 mA par boîtier.)

mais c'est le même montage d'origine que j'adapte ! ... donc normalement les sorties que j'ai au niveau des 74HC595 sont niveau haut coté anodes et niveau bas coté cathodes ... puisque le montage d'origine est directement branché à un afficheur 4 digits multiplexé a anode commune ... afficheur que j'aimerais changer par un autre plus grand ...

je me demande si ce n'est pas à ce niveau ou il y a erreur dans notre modification ... ou (tous simplement) j'ai rien compris à cette histoire ...

pepe:
...

Si l'on ne veut pas modifier le programme, on peut par exemple rajouter une porte inverseuse à l'entrée série du premier 74HC595 (pour inverser les bits à destination des ULN2308) et une autre à l'entrée du second 74HC595 (pour rétablir les bits à destination des anodes).

ola !! ... :o

donc une porte inverseuse .. un autre ULN2308 par exemple ?
et les l'entrée série du 74HC595 c'est les pins 10 ou 11 ?

aie aie aie ... c'est plus compliqué que j'ai prévu

:frowning: :frowning:

pourquoi pas tous simplement un autre ULN2803 pour re-inversé les sorties vers les cathodes ?

sinon

j'ai tester la configuration actuelle avec un seul segment ... ca marche ... mais la luminosité c'est pas la joie ... faible (pour moi) je pense qu'il n'y a pas assez de courant ... je ne sais pas si ca seras pire si je branche tous les segments ...

peut être que le ULN ne fournit pas assez de courant ... y a pas une solution ??

pepe:
Si tu veux utiliser des inverseurs, c'est parce que tu ne veux ou ne peux pas modifier le programme ?
...

j'ai "peur" du programme que j'ai ajuster après une longue agonie ... mais bon si il faut le changer ... beiiiiiin ...

sinon merci pour les explications :slight_smile:

essayons de cerner le problème ...

regarder j'ai fais deux test :
1er test :

marche impec et allumage excellent !

2eme test :

intensité des leds faible

il ce peut que la fréquence du multipléxage soit la cause de ce problème ? ou le 74HC595 qui donne en sortie un courant <<< 5V ...

:confused:

hello

il me semble bien qu'il y a des gars qui jouent sur la fréquence pour régler la luminosité .

j'ai remonté tout le post mais je n'ai pas trouvé de prg.

quelle est la fréquence. et quels sont les % positifs ?