Bonjour,
Après avoir cramé deux cartes Arduino Mega, je m’interroge sur les causes possibles.
La première carte était un modèle chinois 1er prix. Je me suis dit que c’était peut-être la cause. J’ai alors investi dans une carte officielle, avec le même résultat
Dans le passé, je reconnais volontiers avec fait des bourdes (inversion de polarité ou surtension). Mais cette fois c'est autre chose. Un coup, mon montage (accordéon numérique) fonctionne très bien. La nuit passe et le lendemain sans avoir mis les doigts dedans, l’accordéon ne fonctionne plus.
La commande des notes se fait par 27 poussoirs clavier PC reliés aux entrées digitales de la Mega en mode pull up interne.
Le défaut est que certaines pin sont constamment à l’état haut, même en mettant les pin à la masse,
Cela se vérifie par le chargement d’un petit bout de code pour afficher tous les états bas ou hauts des pins digitales avec la carte complètement isolée du reste du montage.
Un copain électronicien très branché sur le sujet a fait 2 remarques :
1ère remarque :
Les pull-up internes présentent un petit inconvénient dans la mesure où elles n'entrent pas en action au tout début de la mise sous tension de l'instrument. Le temps que le programme se lance, il peut s'écouler un "certain temps" pendant lequel elles ne sont pas en action. Même pendant quelques nano secondes, l’état de l'entrée est indéfini.
Solution : il conseille l'ajout de résistances pull-up externes qui elles assurent, dès la mise sous tension, l'état haut sur les entrées.
2ème remarque :
Ne pas laisser de fil en l'air. C'est bien la situation actuelle avec les liaisons (nappe/pistes/connecteurs) entre les boutons poussoirs du clavier et les entrées Arduino qui pourraient se comporter comme une antenne susceptible de recevoir des parasites et interférence de toutes sortes.
Solution : ajouter entre les boutons poussoirs et les entrées de la carte des résistances de 1 k en série.
Qu’en pensez-vous ?
Cordialement
Jean-Claude à Quimper