Gamoover

[move]Vous vous épilez le maillot et collectionnez les bornes d'arcade avec des hommes musclés dessus ? Alors soyez les bienvenus sur Gamoover ! [/move]

Testeur TTL/CMOS Artisanal (Automatique ou manuel)

Démarré par tilowil, Jeudi 02 Avril 2020, 00:26:06 AM

tilowil

Bonjour à tous,

Comme vous le savez nous sommes cloitrés dans nos maisons, enfin encore plus quand vous êtes dit "à risque".

Vous avez peut-être suivi le début de la remise en route du Time Machine . Puis avec le confinement, rappelez-vous de cette période qui a fait le vide dans les rues. Bref j'en ai profité pour avancer sur le dépannage d'une MPU Data East. Mais en voulant faire un mini banc de test, j'ai vu des comportements assez incohérent de la part des moniteurs de sortie (voir dans le post de la remise en route du Time Machine). Ayant du temps, confinement oblige, et n'étant pas du genre à me tourner les pouces, je me dis que des circuits intégrés de la MPU sont fatigués, mais lesquels ?
Vous me direz :  "Tu n'as qu'a suivre les schémas, Tilowil."
C'est ce que j'ai fait. Je dessoude le composant potentiellement défectueux, je recherche le datasheet sur le net et je prends mes grips, je clampe, je mesure, je râle parce qu'un grip se fait la belle, et au bout de 2 fois, ça me soule, et la c'est

dans mon crane.
Donc, en tant que developpeur faignant, je me suis dit il me faut un système pour tester les TTL et les CMOS, simplement et rapidement.
Je recherche sur le net , car pourquoi réinventer la roue, si elle existe déjà ?
Je trouve effectivement des appareils bien sympa, allant d'une quarantaine d'euros à 950€. Bon une quarantaine d'euros pourquoi pas, mais avec la période de confinement, j'ai plusieurs colis qui se trouvent coincées dans les aéroports en partance pour la France attendant que les vols reprennent et je me demande quand le testeur va arriver si je le commande. J'ai envie d'avancer et de profiter de l'isolement pour poursuivre.

Un peu de réflexion et j'ai trouvé une solution honorable.

En exclusivité pour Gammover depuis le laboratoire Tilowil.

Attention Tout ce qui suit est soumis à licence

Cette outil est mise à disposition selon les termes de la Licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International.

Le but de ce partage n'est pas d'inventer une Nième version d'un testeur de TTL/CMOS, surtout que dans le commerce il y en a plein, mais dans le cas présent de trouver un moyen de dépannage rapide, simple et efficace.

En gros voici ma solution (en temporaire pour le moment, c'est fonctionnel depuis aujourd'hui)

Mais c'est aussi une interface sur le moniteur série sur le PC, plus intuitive, car elle permet de pouvoir sélectionner exactement le composant que l'on veut tester.


Vue générale


Le circuit intégré à tester


Le bouton Start, le lecteur de carte µSD et l'Arduino Mega 2560


Durant la recherche automatique. Il donne à la fin le probable CI correspondant.

Mais on peut aussi utiliser l'interface du moniteur serie Arduino.

Ici la liste des Circuits Intégrés admissible par le système de test. Cette liste n'est pas fixe. Elle peut se compléter par ajout des lignes dans le fichier txt. Il stocke les tables de vérité de chaque composant. J'ai repris le principe de fichier créé par JorBi, car il est simple à comprendre et simple à remplir.
Actuellement ma base de composant compte 179 CI (il manque le 74273 sur la photo). Dès que je rencontre un nouveau CI j'enrichis la base.


Je veux tester uniquement le 74244, je saisie le numéro dans le moniteur série.


Et le résultat pour ce CI désigné.


Je passe en mode explicatif (exclusivement sur le moniteur série)


Et voici le détail du test. On retrouve le nombre de broches du CI. Ici le 74244 a 20 broches. Je peux tester les CI à 14, 16, 20 et 24 broches. L'on peut voir les lignes de la table de vérité (signal), comment les ports sont paramétrés (set), ce qui est envoyé (send) et ce qui est lu (read).  Si toutes les lectures correspondent aux attentes, le composant est bon.



Ici deux 7402 défectueux, on voit bien le dysfonctionnement dans la lecture par rapport à l'attendu. Dès qu'il y a un dysfonctionnement le programme sort. inutile de continuer a tester les autres combinaisons, si une est mauvaise le composant n'est pas viable.


un 7402 correct.


Un 74154 défectueux.

Grace à ce petit outil, je peux tester, en mode automatique un CI en 9s et en mode manuel en 3s. Il y a plus rapide certes, mais l'outil me va bien.

Si vous vous demander pourquoi mon soft est en anglais, c'est parce que je vais publier ce montage sur un autre site (avec un robot comme logo) et que ce site impose la langue anglaise. Mais je vais aussi faire une version en français, enfin plutôt multilingue.


De quoi a t on besoin ?
- Un Arduino Mega 2560
- un lecteur de carte µSD SPI (MOSI, MISO, CS, SCK, VCC, GND)
- un Afficheur 16x2 (i2c ou standard) (facultatif)
- un bouton poussoir
- un support 24 broches ZIF (facultatif)
- une breadboard assez grande pour tout contenir
- des fils dupont male-male
- un PC pour le moniteur série

Aujourd'hui, j'ai commenté mon code, et j'ai mis en place le choix de la langue et les messages en français ou en anglais. Je viens de faire le schéma de tête (avec mon code en support pour les ports de l'Arduino), mais je vais faire des changements car les éléments choisis me posent des problèmes sur le PCB. Donc demain je vais reprendre le schema.

Le schema refait.


Et maintenant que mon schéma est bon, les images du Hat.

Coté Composants


Coté soudures

Pour le moment cela reste un Prototype, c'est la raison pour laquelle je n'ai pas mis le Gerber, le code Arduino, la database, les fichiers de langue en ligne, ni la BOM. Je vais lancer la fabrication de 5 prototypes et si tout est ok, je mettrai la v1 en ligne. Ensuite je me pencherais sur une v2 correspondant aux axes d'amélioration soumis par Little_Rabbit.

C'est tout pour le moment. La suite ici dans ce message.

A suivre.

olschool

#1
GÉNIAL
l'inventivité se trouve boostée en ces temps de confinement  ^-

Winner's Don't Use Drug mais ça aide quand même pour finir Ghost & Goblins.



Citation de: ducatman1098 le Lundi 05 Novembre 2018, 22:45:37 PM
En rentrant le camion au garage,  je me suis aperçu que j avais récupérer une after burner  ;D

rage

Je ne comprends pas tout mais je suis ça avec grand intérêt. Bravo  ^-

Little_Rabbit

Salut,

Il est génial ton testeur de composants tilowil !  :-)=

Bravo pour ce développement efficace et on ne peut plus utile !

Si je puis me permettre, voici une petite remarque :  en mode manuel, je trouve que tu devrais changer le message de fin. Les "possible match" et "no match found" sont très bien pour le mode automatique. Par contre, je trouve qu'il serait plus explicite de conclure le résultat du test manuel par quelque chose comme "Perfect match : this xxxxx IC is good !" quand il est testé comme bon, et un truc du genre "No match for xxxxx : IC detected as bad !", où xxxxx est la référence du CI testé :).

Et sinon, je me faisais la réflexion suivante : comme tu disposes d'un afficheur, que tu désignes comme facultatif, pourquoi ne pas en tirer profit, en ajoutant quelques boutons à ton montage ? :) L'idée serait d'avoir un testeur autonome, sans qu'il ait besoin d'être relié au PC : on aurait un bouton "<-", un bouton "->" pour balayer dans les 2 sens la liste des composants testables. Ton actuel bouton "Start" deviendrait le bouton "Auto" pour lancer un test automatique, et un bouton "Manual" pour lancer les tests sur la référence sélectionnée :).

Sur mon programmateur d'EPROM Velon, j'ai une fonction de test de composants TTL/CMOS, qui m'a déjà donné de faux résultats : composant donné comme bon alors qu'il était mauvais ! Je serais curieux de comparer le résultat avec ton testeur :) (je dis ça, mais je ne sais pas si j'ai gardé les composants en question... quoique, comme je suis du genre "Il ne jette rien !" c'est bien possible :D).

Quoiqu'il en soit, je te renouvelle toutes mes félicitations pour ce super développement !  ^-^

A+
Recherche bornes dédiées ou PCB originaux: Miss Pacman, Dig Dug, Galaga, Mappy, Asteroids, Battlezone, Missile Command, Tempest, Star Wars, Donkey Kong (+ Jr), Mario Bros, Moon Patrol, Defender, Joust, Frogger, Gyruss, Pooyan, Space Tactics, Zaxxon, etc. Flip : Gottlieb des années 80 (Spirit, Amazon Hunt, ...), Baby Pac Man. Divers :  Ice Cold Beer => Trois fois rien quoi ! :D
Ma séance sur le divan : c'est grave Docteur ? :-\
Ma gaming room, ma storage room

tilowil

#4
Bonjour,

Merci pour vos retours, ca fait plaisir.

@Little_Rabbit : Merci pour tes axes d'améliorations. Oui je suis en train de faire des modifications, maintenant que je sais que le principe de fonctionnement est là. D'abord faire en sorte que le produit fonctionne, puis viens le temps de la cosmétique. En ce moment je suis en train d'écrire les commentaires dans mon code. Puis effectivement il faut que je gère les messages entre le mode 'recherche de CI' et le mode 'test de CI'. J'ai encore du travail devant moi, mais c'est un WIP comme un autre  ;).  A l'origine je ne voulais faire un retour que par le moniteur série, car je peux écrire ce que je veux. Puis j'avais ce 16x2 qui prenait la poussière et je me suis dit que l'ajouter pourrais faire gagner en autonomie, être moins dépendant du PC, d'où le facultatif. Mais au final je me dit que le 16x2 n'est pas forcement facultatif. Pour mon utilisation, je ne regarde que le moniteur série, mais quand je vais donner un exemplaire à mon ami qui m'aide sur le Time Machine et qui m'a aidé sur le Genesis, il lui faudra un système autonome et clair. Donc le 16x2 ou le 20x4 serait la voie vers l'autonomie.

L'idée de parcourir la base pour sélectionner le CI que l'on veut tester sur l'afficheur est à réfléchir effectivement.

Il faut aussi que je fasse le schéma puis faire un Hat pour un Arduino Mega2560. Vu la taille du Mega je devrais avoir la place pour quelques boutons  :D.

Je suis aussi content que tu t'intéresses à ma très modeste réalisation, car quand j'ai regardé les testeurs du commerce, ils annoncent 1300 CI testables, mais ils sont capable de différencier , par exemple, les 7402, les 74LS02, les 74HC02, les 74HCT02. Pour moi je ne teste que la partie logique et donc ils sont tous identiques. Mais quel est vraiment la différence ? est ce facile de savoir les différencier ? non je ne cherche pas à concurrencer les testeurs chinois, mais c'est pour ma culture.

Cet après midi je poursuis mes commentaires tant que le programme est frais dans ma tête. Puis schéma, tant qu'il est frais aussi  :D.
Ensuite on fera de la cosmétique  ;)  8).

Je vais aussi prévoir le futur, en ajoutant les paramètres pour des CI allant de 6 pattes à 24 pattes et pas seulement les 14, 16, 20 et 24 pattes.

Je réfléchis aussi, maintenant que le principe fonctionne, a y inclure les ampli op et j'aimerai bien aussi tester le ne555 (utilisé sur la MPU Data East) et pourquoi pas le NE556.

Encore merci pour vos messages.

A suivre.

Maitre_Poulpi

Moi aussi, ça dépasse mes compétences mais j'ai tout lu.
Je trouve ça super de s'occuper de la sorte avec les moyens à disposition, un peu à la MacGyver quoi  ;)
May the Gamooforce be with you !
À partir du moment où un fou sait qu'il l'est, peut-on toujours le nommer ainsi ?
Boulot, rétro, dodo... et un peu (beaucoup) de TATC© (Touche A Tout Compulsif)...
Le WIP en slip et le hack Sega en Pijama !

kroustibat

toujours très interessant ce genre de projet. bravo  ^-^

tilowil

Bonsoir,

j'ai mis a jour le post 1, avec entre autre un schéma, qui va bouger rapidement car l'Arduino choisi me détruit le PCB. Donc je vais soit le modifier soit en prendre un autre.

Bonne nuit.

Little_Rabbit

Salut,

Citation de: tilowil le Vendredi 03 Avril 2020, 03:42:11 AM
../.. qui va bouger rapidement car l'Arduino choisi me détruit le PCB

Qu'entends-tu par là ? Je ne comprends pas ce que tu veux dire :).

Tiens, il me vient une question : tu dis pouvoir gérer des CI de différentes tailles (14 broches, 16 broches, 18, etc.) => comment gères-tu l'alimentation du circuit testé ? Car la broche d'alimentation sera tantôt la 14, ou la 16, ou la 18, etc. J'aurais imaginé qu'il était du coup nécessaire d'avoir une électronique externe (relais ou transistor) pour orienter le +5V vers la broche Vcc dont l'emplacement change.

A+
Recherche bornes dédiées ou PCB originaux: Miss Pacman, Dig Dug, Galaga, Mappy, Asteroids, Battlezone, Missile Command, Tempest, Star Wars, Donkey Kong (+ Jr), Mario Bros, Moon Patrol, Defender, Joust, Frogger, Gyruss, Pooyan, Space Tactics, Zaxxon, etc. Flip : Gottlieb des années 80 (Spirit, Amazon Hunt, ...), Baby Pac Man. Divers :  Ice Cold Beer => Trois fois rien quoi ! :D
Ma séance sur le divan : c'est grave Docteur ? :-\
Ma gaming room, ma storage room

tilowil

#9
Bonjour Little,

Pour répondre a tes questions.
Le Mega choisi dans la librairie a un contour indiquant une découpe et donc si j'envoie le gerber pour la fabrication il y aura un trou dans le PCB.
Pour illustrer  :D :D :D :D :D :D :D

ici tu vois le contour violet du mega (sur mon soft, le violet c'est la coupe). Donc la prévisualisation du resultat final  =:)) =:)) =:)) =:))

Un beau trou.


Pour répondre à ta seconde question. En premier lieu et la question de base est : connais tu le fonctionnement de l'arduino ?
Au pire cela servira pour ceux qui ne connaissent pas le fonctionnement d'un Arduino (ca tombe bien c'est les cours que je donne, bénévolement, aux élèves et membres du FabLab du Lycée Paul Langevin à Beauvais). On va faire simple.
L'arduino est une carte servant à gérer des entrées et des sorties, en gros. Pour le besoin, je ne me sert que des E/S digitales (2 niveaux logiques Haut ou Bas,  1 ou 0, +5v ou 0v).

Pour illustrer la suite je prends comme exemple le 74LS244.
L'information trouvé sur le net 74244 datasheet

On y retrouve la table de vérité (function table)
Si on reprend l'information pour tester un circuit (le signal), du 74244 par exemple, voici un extrait de ma base :
$74244
Octal 3-STATE buffer/Line Driver/Line Receiver
20
00H0H0H0HG1L1L1L1L0V
01L1L1L1LG0H0H0H0H0V


on a, précédé par '$', le nom du composant ici 74244, puis, à la ligne en dessous, sa désignation. J'ai ensuite le nombre de pattes du circuit, ici 20 pattes et enfin les lignes de la table de vérité du composant, jusqu'à ce que je retombe sur un $ ou la fin du fichier.

Si je détaille la ligne de test :
- 0 impliquera un niveau Bas en entrée
- 1 impliquera un niveau Haut en entrée
- L impliquera un niveau Bas en sortie
- H impliquera un niveau Haut en sortie
- G impliquera une mise à 0V (Niveau Bas)
- V impliquera une mise a +5V (Niveau Haut)

J'ai aussi comme paramètre :
- C impliquera un signal Clock/ Trigger
- X impliquera une E/S non pertinente

à lire verticalement, j'ai ajouter sur les 2 premières lignes le numéro de patte à titre informatif, mais on commence toujours par la patte 1 jusqu'à la patte x ou x désigne le nombre maximum de pattes du composant :
00000000011111111112
12345678901234567890
00H0H0H0HG1L1L1L1L0V


Ce qui donne comme instruction pour l'arduino :
- Tu alimentes la broche 1 en 0v
- Tu alimentes la broche 2 en 0v
- Tu lis la broche 3 et tu devrais avoir +5v
.
.
.
- Tu alimentes la broche 10 en 0v (GND)
.
.
.
- Tu alimentes la broche 20 en +5v (Vcc)

ainsi ma table de vérité me donne aussi la position des pattes servant à l'alimentation du circuit. Les E/S de l'Arduino étant dirigeable dynamiquement par le programme, c'est un jeu d'enfant.
C'est pour ca que quand je detailles ce que fait l'arduino sur le moniteur série j'ai ce genre d'information :

essaye : 4066
nombre de pattes: 14
signal  : 0HH000G0HH000V
config. : -HH---G-HH---V
entrees : 0--000-0--000-
sorties : -HH-----HH----
signal  : 1HH100G1HH100V
config. : -HH---G-HH---V
entrees : 1--100-1--100-
sorties : -HH-----HH----
signal  : 0LL011G0LL011V
config. : -LL---G-LL---V
entrees : 0--011-0--011-
sorties : -LL-----LL----
signal  : 1HH111G1HH111V
config. : -HH---G-HH---V
entrees : 1--111-1--111-
sorties : -HH-----HH----
A repondu correctement.
Fin des essais
4066 a passe avec succes le test. Est OK.


et par conséquent je retrouve systematiquement 4 lignes pour chaque ligne de la table de verité

signal  : 0HH000G0HH000V
config. : -HH---G-HH---V
entrees : 0--000-0--000-
sorties : -HH-----HH----

- La ligne 'signal' me rappelle la ligne de la table de vérité
- La ligne 'config.' paramètre les E/S (les H et les L vont définir des E/S en entrée et le G et le V vont definir des E/S en sortie (LOW et HIGH respectivement)
- la ligne 'entrees' paramètre les niveau des E/S et les définies en sorties
- la ligne 'sorties' lit chaque E/S definie en entrée et teste sont niveau logique par rapport au niveau logique attendu.

Il peut être un peu confusant par moment cette notion E/S. Il faut penser que je parle du point de vu de l'arduino, par contre les notions évoqué dans les lignes sont celle du CI à tester.

On peut faire de même avec un PIC, par exemple un PIC16F1519 à 36 E/S auquel on peut rajouter si nécessaire un MCP23017 pour l'étendre avec 16 E/S, pour l'afficheur par exemple, avec communication par protocole I2C et pour tout stocker tu peux utiliser une EEPROM I2C SN24C512 qui contient 512Kb soit 64 Ko ma base fait pour le moment 33 682 caractères soit 33 682 octets   (32,89 ko)

J'espère avoir répondu a tes questions et avoir un peu plus éclairci le sujet pour ceux qui le suivent.

tilowil

Bonjour,

Mise à jour du post 1.

- Mise en ligne du schéma final de la V1 (a écraser le précédent).
- Mise en ligne des images du PCB Prototype (Rouge).

A suivre à réception des plaques prototype.

Fred G5

Sujet très intéressant, un grand Bravo à toi et merci pour le partage  <:) ^-^
Flipper: DE "Laser War"- WMS "F14-Tomcat"- GTB " Hollywood Heat" - Bally "Black Pyramid"
Borne: Konami "Lethal Enforcers" - New Game "N'Styl"- René Pierre 1982 - Jeutel Neo Geo 16/9 - Simulateur Twin Konami "Midnight Run Road Fighter 2"
Jeu/Système de jeu: 53 PCB Jamma, 7 cartouches MVS, slot Neo-Geo MV-1T, MV-2F, MV-4F, MV-6F
Console: Nintendo SNES 2CHIP, SNES 1CHIP-02 + 43 jeux

tilowil

Bonjour,
Merci à tous pour vos messages. C'est plaisant de voir que le sujet intéresse.

Je vais bientôt reprendre mes tests, en effet les PCBs prototypes viennent de sortir de fabrication, et normalement d'ici 3-4 jours ils seront à la maison.
Cela va me laisser le temps de passer commande chez mouser des 2-3 références qu'il me manque.

En attendant comme je suis coincé sur la MPU data east, sur le testeur de TTL/CMOS, je me suis dit qu'apprendre la programmation des PIC serait drôle. Et pourquoi pas essayer, bon pas de suite, de refaire le Testeur avec un PIC. A ce moment la on va rejoindre l'idée de @Little_Rabbit qui proposait une utilisation de l'afficheur 16x2 pour le résultat, mais aussi pour la navigation.

Avec l'arrivée des PCBs Protype, d'autres sujets vont aussi bouger. Surprise !

A bientôt pour la suite.


Little_Rabbit

Salut,

Hâte de voir ce que seront ces surprises ! :)

Merci pour tes précédentes explications. Je ne connais pas intimement les Arduino, mais je connais le principe.

Ce qui me surprend ici, c'est que tu utilises une porte de sortie logique pour alimenter un circuit intégré type TTL :). Je ne sais pas quelle est la techno interne d'un port d'Arduino, mais souvent, un niveau logique haut, qu'on assimile à du +5 V n'en est pas tout à fait (autour de 4,6 ou 4,8 V ?). Ensuite, je ne connais pas la sortance d'un port d'Arduino. Les portes TTL de la famille S par exemple sont assez gourmandes. C'est pour ça qu'il me semblait plus académique d'alimenter les broches d'alimentation du circuit intégré testé par un circuit en propre (via des transistors qui eux seraient piloter par un des ports de l'Arduino), sans s'appuyer sur un port d'E/S de l'Arduino :). Mais c'était un pure questionnement car je ne connais pas les caractéristiques électriques/électroniques des Arduino.

Vivement la suite !  ^-

A+
Recherche bornes dédiées ou PCB originaux: Miss Pacman, Dig Dug, Galaga, Mappy, Asteroids, Battlezone, Missile Command, Tempest, Star Wars, Donkey Kong (+ Jr), Mario Bros, Moon Patrol, Defender, Joust, Frogger, Gyruss, Pooyan, Space Tactics, Zaxxon, etc. Flip : Gottlieb des années 80 (Spirit, Amazon Hunt, ...), Baby Pac Man. Divers :  Ice Cold Beer => Trois fois rien quoi ! :D
Ma séance sur le divan : c'est grave Docteur ? :-\
Ma gaming room, ma storage room

Amano J

Thread très intéressant, merci pour le partage !
J'attends la suite avec impatience  :)

tilowil

#15
Bonjour,
Merci pour vos messages.

@Little_Rabbit, j'adore tes messages, j'apprends toujours quelque chose. Je dois avouer que je n'ai pas tout compris en suivant le lien vers wikipedia, je ne suis qu'un modeste développeur et un piètre joueur en électronique.

Pour peut être mieux comprendre, j'ai fais un programme simple

void setup() {
pinMode(18,OUTPUT);  // Broche 18 en sortie
}

void loop() {
digitalWrite(18,HIGH); // Met la broche 18 à +5v
delay(50);             // Attend 50 ms
digitalWrite(18,LOW);  // Met la broche 18 à 0V
delay(50);
}


J'ai branché mon oscillo, calibre 1v, calibre de temps 50ms, entre la masse et la broche 18 et voici le resultat :


Peut être que ces informations pourront te donner un elements de réponse. Moi je ne sais pas. J'ai tenté quelque chose, et cela a fonctionné.

Maintenant les premiers essais que je fais avec un PIC sont beaucoup moins concluant. Les PICs semblent plus complexes au niveaux du choix de la bête. Avec un PIC16F628A, le premier que j'ai sous la main, j'ai voulu faire un test qui n'a pas été concluant. L'alimentation du TTL 7404 est en dessous de la valeur normale. Il faut que je me penche plus sur le sujet, mais pour le moment ce n'est pas gagné.

A suivre.
[Edit]
Suite à ton questionnement, je me suis dit que les S dont tu parles, ce doit être les TTL genre 74LS. Et j'ai un 74LS154 qui est declarer defectueux par le système.
Qu'au cela ne tienne, je vais reprendre la vieille méthode, bien casse pied.
Pour mémoire le test nous donne le CI défectueux car :
essaye : 74154
nombre de pattes: 24
signal  : LHHHHHHHHHHGHHHHH000000V
config. : LHHHHHHHHHHGHHHHH------V
entrees : -----------------000000-
sorties : HHHHHHHHHHH-HHHHH-------
Fin des essais
74154 a echoue au test. N'est PAS OK.

Si je traduit, même si ceux qui suive le topic, savent lire le test maintenant, si je met toutes les entrées à 0v, je dois avoir la sortie 0 (patte 1) à LOW toutes les autres à HIGH.
Hors à la lecture la sortie 0 (patte 1) est à HIGH.
Avant de faire quoi que ce soit, le datasheet du composant :

on y voit que la tension minimale de fonctionnement est 4.75v, la nominal est 5v et la maximale est 5,25v
Je prends la tension entre la sortie 5v et GND de l'arduino avec un voltmètre => 4,71v
Je modifie mon programme pour que les broches de l'arduino ne repassent pas toutes à 0v et que je conserve les positions de l'alimentation, résultat 4,51v à la patte 20 (Vcc).
Je me dit qu'avec 4,71v le test manuel risque d'échouer aussi.
Je teste les 3 premières positions de la table de vérité, et la : 

Position 1 - A=0, B=0, C=0, D=0, G1 et G2 = 0


Position 2 - A=1, B=0, C=0, D=0, G1 et G2 = 0


Position 3 - A=0, B=1, C=0, D=0, G1 et G2 = 0

Donc le composant à l'air de fonctionner. Ce ne serait qu'un problème de tension. J'ai déjà rencontré ce genre de problème par le passé, du fait qu'actuellement le Mega est alimenté par le port  USB. Je vais donc faire un essai par le port d'alimentation. En faisant cela je vais perdre le moniteur Serie.
Donc avec un adaptateur secteur mes 4,71v se sont transformé en 5.01v. C'est mieux. Par contre n'ayant pas encore développé la partie choix du CI à tester je n'ai pas pu choisir de tester seulement le 74154. mais une chose est sure il ne me le détecte toujours pas, donc potentiellement je n'ai toujours pas la bonne tension.
Je vais donc lui forcé la main pour ne faire qu'un seul test en automatique.  :D

[Edit 2]
Donc en ayant modifier le programme pour qu'il se lance automatiquement sur le 74154, le test échoue bien. Par contre j'ai 4,83v sur Vcc. Donc si le composant réagit bien à 4,71v pourquoi n'en fait il pas de même à 4,83v ? et sachant que 4,83v c'est au dessus du minimum requis par le constructeur. 
grosse réflexion a venir.  =:))

[Edit 3]
Sachant que je n'ai plus acces au moniteur Serie quand je suis sur la prise secteur, je me suis dit que j'allais derouté le code envoyé au Serial vers le SD. une petite heure de dev, et voici toutes les ecritures recueillies sur la SD :
recherche d'informations pour 74154
essaye : 74154
nombre de pattes: 24
signal  : LHHHHHHHHHHGHHHHH000000V
config. : LHHHHHHHHHHGHHHHH------V
entrees : -----------------000000-
sorties : HHHHHHHHHHH-HHHHH-------
Fin des essais
74154 a echoue au test. N'est PAS OK.


Même cause de rejet. Hum ! :-[ compliqué comme test  ::) J'attends un jeu de remplacement du 74LS154, je le testerai bien à ce moment là.
Ensuite dans toute la série que j'ai testé sur la MPU Data East, il y avait d'autres 74LS qui ont passé le test avec succès. Donc je ne sais pas quoi pensé.