Bonjour,
J'essaie de remplacer le clavier matriciel d'une machine par une interface graphique avec écran tactile. Pour cela j'utilise un Raspberry connecté à une petite carte électronique que j'ai confectionnée elle même connecté au CPU de la machine à la place du clavier physique. Le raspberry est connecté en HDMI à un écran sur lequel il y a une dalle tactile elle même connecté en USB.
Le clavier est tout simple : clavier matriciel 18 touches. du coup il y a 9 fils connectés au CPU : 4 colonnes et 5 lignes.
Voici le schéma du clavier :
fs123.jpg
Voici le plan de la carte :
fs122.png
Côté software, pour simuler l'appui sur un bouton du clavier, j'active deux transistors (1 ligne et 1 colonne) pendant 1/50 seconde ce qui ferme le circuit du point de vue du CPU comme si quelqu'un avait appuyé sur un des boutons. La machine se met alors en route etc.
Tout fonctionne globalement très bien SAUF que de temps en temps, sans explication apparente, la machine exécute une action qui ne correspond pas au bouton dont l'appui a été simulé ! Pourtant les LED que j'ai mis sur ma carte s'allument bien en face des bon transistors.
J'ai observé que le problème est plus ou moins fréquent en fonction de deux paramètre :
- Type de cable utilisé pour aller de ma carte au CPU de la machine (cable blindé 9 brins ou nappe plate)
- Ordre dans lequel j'active les transistors : colonne puis ligne ou ligne puis colonne, sachant que les deux instructions sont exécutés l'une après l'autre et que la latence entre les deux est de quelques microsecondes.
Malgré tout le problème ne disparait jamais complètement ... c'est en train de me rendre chèvre !!!
Pour informations, la machine est constitué d'une carte CPU à la quelle est connecté le raspberry avec un cable de 15cm environ.
A l'intérieur de la machine il y a une carte de puissance pilotée par le CPU qui elle même commande des moteurs.
Si vous pouviez me donner des pistes de résolution ce serait génial !
D'avance merci de votre aide.
-----