Banc de test NG - Sonde et testeur de composants

Pinup
Banc test

Dépannage des cartes électroniques

Banc universel, pour un diagnostic facile
des systèmes à base de processeurs.

Toutes marques de flipper
(Gottlieb, Bally, ... et bien d'autres)

Première partie du projet
"Banc de test NG"

Hardware

La sonde commune est constituée des éléments suivants:

  • Un Arduino MEGA 2560
  • Un module écran LCD 1602 (16 x 2) - optionnel
  • Un module "shield"
  • Deux nappes de raccordement
  • Un module "sonde DIL40"
Les deux premiers sont archi-standard et se trouvent très facilement dans le commerce.

Le module LCD utilisé est celui de DF-ROBOT, mais n'importe lequel fera l'affaire (le clavier n'étant pas indispensable). Les modules "shield" et "sonde DIL40" sont à construire, mais ne présentent aucune difficulté particulière.

Hardware

Première version du shield et de la sonde

Afin de valider le concept et économiser l'étude d'un circuit imprimé, nous avons dans un premier temps utilisé la version de Paul Swan. Celle-ci était en effet, facilement et rapidement disponible. Nous lui avons juste apporté quelques modifications mineures, selon nos besoins.

Mais à l'usage, il est finalement apparu que ce shield et cette sonde n'était pas tout à fait adaptés à l'usage prévu. Nous avons donc décidé de concevoir et réaliser notre propre couple shield/sonde.

  • 3 jeux de sondes et shields.
  • Montage du shield en cours.
  • Montage de la sonde en cours.
  • Shield et sonde sans résistance.
  • Jeu de 3 shields terminés.
  • Prêts à tester.
  • Câble en nappe simple.

Branchements

Ceux-ci sont légérement différents du projet de Paul Swan:

  • L'Arduino doit être relié au PC par le câble USB (en revanche, il n'a pas besoin d'alimentation externe).
  • Les cavaliers sur le connecteur "sonde" ne sont pas utilisés, ne pas les brancher ! (pas de mise à la masse des broches 1, 2, 20, 21, 29 ou 30).
  • La masse sera reliée à partir de J13 (sur le "shield") avec un grip ou une pince crocodile, vers la carte à tester (il est toujours facile de trouver une masse, aux bornes d'un condensateur par exemple).
  • On intercalera un support "lyre" de 40 ou 28 broches entre la sonde et le circuit. La broche 1 étant commune aux DIL 28/40 (ceci pour tester les CPU à petits boitier, comme le 6503).
  • Le connecteur AUX (J14 du "shield") sera utilisé exclusivement en entrée (pour éviter les accidents).

Modules shield et sonde Brochages
Shield sur Arduino Module complet

Deuxième version du shield et de la sonde

Sera décrite prochainement...

Exemples de connexions sur cartes 6502 (Gottlieb)

La sonde vient se brancher en remplacement du CPU 6502, ou sur le connecteur TC1. La masse de la sonde (connecteur J13) est à relier à celle de la carte par un fil. Lorsque la sonde est prête et que la carte est correctement alimentée, le type de CPU est affiché sur le LCD. Si la carte est mal alimentée, la sonde le signale.

Sonde sur 6502 Sonde sur TC1

Attention, même si on peut connecter deux sondes sur 6502 et TC1, seule une peut être active à la fois. On peut également brancher la sonde sur les cartes sons MA-216 à base de 6502.

Sondes sur 6502 et TC1 Sonde sur carte son MA-216
Le test des cartes SYS80 sans déssouder le CPU6502 est possible en utilisant le TC1.
Sonde sur TC1
Dans ce cas, les signaux A11 et PHI2 seront injectés via des grip fil.

Utilisation avec d'autres processeurs (par exemple 6503)

La sonde vient se brancher en remplacement du CPU 6503, mais en intercalant un support 28 broches. Ceci permet de dépanner les cartes audio "simple" Gottlieb (6503 + 6530), ou encore les cartes CPU pour table cocktail VALLEY Spectra IV.

Sonde sur 6503 - carte Valley Spectra IV Sonde sur 6503 - carte audio MA-216

Firmware

La sonde ne fonctionne évidement, qu'après avoir été programmée avec le firmware adéquat. Celui-ci est chargé dans l'Arduino de manière classique à partir de l'USB. La même prise sert ensuite d'interface entre l'API et le PC.

La sonde ainsi programmée peut déjà être testée, sans avoir recours à un autre logiciel. L'API est accèssible via l'interface USB/série standard de l'Arduino (à 115200 bauds). On peut utiliser le moniteur série de l'interface Arduino (CTRL + SHIFT + M) pour envoyer des commandes à la sonde.

Commande Help() Exemples de commandes

API

L'interface met à disposition un certain nombre de commandes, des plus simples aux plus complexes. La syntaxe est proche de celle utilisée en C, elles peuvent êtres tapées en minuscules ou majuscules. Tous les paramètres sont exprimés en hexadécimal et de taille fixe (1, 2, 4, ou 8 chiffres).

La commande principale à connaitre est "Help()" qui permet d'afficher la liste de toutes les commandes et leur paramètres.

On y trouve :

  • Les commandes basiques de lecture-écriture, communes à tous les systèmes.
  • D'autres commandes complexes permettent de tester les composants périphériques (PIA, TPI, VIA, RIOT et autres CIA).
  • Les calculs de checksums et de crc, ainsi que les controles avec les algorithmes spécifiques (Gottlieb).
  • Des commandes spécifiques à certains systèmes (Valley Spectra, Gottlieb).
  • Certaines commandes fonctionnent aussi en mode 4 bits (par exemple pour les RAM 5101).

D'une manière générale, tous les traitements complexes ou répétitifs ont été intégrés dans la sonde. Le logiciel sur PC étant déchargé de ces tâches, sera ainsi beaucoup plus simple et facile à écrire.

Le testeur de composants

Il s'agit d'un module hardware additionnel sur lequel vient se brancher la sonde. Il est principalement constitué de deux supports ZIF et de plusieurs cavaliers de configuration.

Testeur

Cet accessoire permet de tester de manière approfondie, les composants complexes tels les PIA, RIOT, VIA, CRTC. Il fait également les RAM, les ROM, les PAL/GAL et d'une manière générale tous les composants que l'on peut trouver dans un flipper. Complément indispensable à la sonde, il peut aussi fonctionner de manière autonome. La sonde dispose d'un menu spécifique intégré, dans lequel on peut naviguer grâce aux boutons de l'écran LCD.

Les grip-fils

La sonde est équipée de plusieurs pointes de test, simples à utiliser et repérées par des couleurs. Afin de faciliter leur manipulation, nous avons utilisé du câble extra souple à gaine silicone.

Fils Fils

La valise

Le banc de test ainsi que le testeur de composants ont été intégrés dans une valise métallique de taille réduite. Le montage est ainsi très bien protégé et cela permet de ranger proprement tous les câbles et nappes. Ainsi finalisé, le module a un aspect très professionnel.

Valise Valise

Valise Valise

Interface CAVEMAN

Afin de tester les cartes du bloc vidéo du CAVEMAN, nous avons réalisé un adaptateur permettant de les brancher sur le banc de test NG. Les cartes EPROM et RAM I/O peuvent ainsi être vérifiées directement sur le banc.

Interface CAVEMAN

Interface CAVEMAN Interface CAVEMAN

Logiciel

Le logiciel utilisé sur PC est décrit dans la seconde partie de cet article.

Distribution

Cette réalisation est actuellement indisponible, mais nous étudions la possibilité de sa diffusion (gratuite ou payante) pour le futur.

A l'étude

Dernière mise à jour de cette page: 7 Août 2018