Ich selber habe nicht die geringste Ahnung, wo man da ansetzt, dachte aber, ich mach mal den Anfang und (hoffentlich) fähigere Leute als ich erweitern das dann so peu a peu.
Es soll also um die Reperatur von defekten PCBs gehen. Wie geht man da genau vor? Was gilt es zu beachten, was sollte man auf gar keinen Fall tun? Was für Geräte benötige ich? Aus was für Bausteinen besteht eine PCB und woher bekomme ich Ersatz? Wohin kann ich mich wenden, wenn meine Skills nicht ausreichen?
Zuallererst wollen wir mal grundsätzlich versuchen auszuschließen, dass nicht irgendetwas anderes im Automaten defekt ist, so kann man sich schon mal gleich viel Arbeit und Kummer ersparen. Daher:
A: Grundwissen
Punkt 1: Ursache Automat?
Laufen andere Platinen im Automaten korrekt? Wenn andere Platinen einwandfrei funktionieren, geht es weiter zu Punkt 2.
Punkt 2: Spannungen:
Kommen alle benötigten Spannungen (+5V, +12V, evtl. -5V) an der Platine an? Ein überaus wichtiger Punkt, da eine Spielplatine ohne Strom nicht läuft. Es gibt keine andere Möglichkeit dies festzustellen, als es zu messen. Das Messen geschieht mittels Messgerät, bspw. einem Multimeter, die es für wenig Geld (schon ab 5 Euro) im Elektronikhandel oder bei Ebay käuflich zu erwerben gibt. Wichtig für die korrekte Darstellung von Grafik sind in erster Linie die +5V. Diese sollten sich in einem Spektrum von 4,9 bis etwa 5,1 Volt ansiedeln. Weniger führt in einigen Fällen zum Kollaps, mehr ebenfalls. Leute mit einem Netzteil, bei dem man die +5V nicht regeln kann, sollten dies ändern und sich ein Schaltnetzteil besorgen, dass z.B. im Arcadeshop erhältlich ist.
Liegen alle benötigten Spannungen an, geht es weiter zu Punkt 3.
Punkt 3: Roms:
Es kann mit der Zeit und durch vielfachen Transport passieren, das gesockelte Roms nicht mehr in richtig in der Fassung stecken. Gesockelte Roms kann man mit einer dafür vorgesehenen Zange vorsichtig aus dem Sockel lösen und sodann wieder einsetzen und fest aufdrücken. Das ganze sollte man - wie gesagt - vorsichtig tun, damit keine Beinchen abbrechen. Auch ist es wichtig die Roms wieder in die richtige Position einzusetzen.
Auch kann man checken ob nicht evtl. irgendwo bereits ein Beinchen abgebrochen ist. In diesem Fall lötet man eine Kabel-Verbindung von Rom zu Sockel. Sind alle Roms festgedrückt und auch äußerlich ist keine Beschädigung zu erkken, geht es weiter zu Punkt 4.
Punkt 4: Verbindungen:
Viele PCBs sind mehrstöckig, d.h. sie besteht aus mehreren Platinen, die miteinander verbunden sind. Es bietet sich an, diese Verbindungen zwischen den einzelnen Platinen durchzuklingeln. Das können z.B. Flachbandkabel sein oder Custom-Stecker wie bei CPS-Platinen.
Punkt 5: Suicide Batteries:
Einige PCBs haben sog. Suicide Batteries eingebaut, um die PCB vor Raubkopierern zu schützen. Dies gilt vor allem für Spiele CAPCOM und SEGA. Eine Ursache für eine defekte PCB kann eine Batterie sein, die ihre Spannung verloren hat, woraufhin ein bestimmer Entschlüsselungs-Mechanismus nicht mehr greift. Das typische Zeichen für eine defekte PCB aufgrund einer leeren Batterie ist im Falle eines CPS2-Boards ein grüner Bildschirm. Man checke daher auf dieser Seite, ob die jeweilige PCB evtl. eine Suicide Battery eingebaut hat, die tot sein könnte:
http://www.arcadecollecting.com/dead/dead.html
B: Erweitertes Grundwissen
Weiter gehts. Als nächstes wollen wir etwas tiefer in die Materie gehen und uns einen IC anschauen:
[ATTACH=CONFIG]16196[/ATTACH]
Im Allgemeinen hat ein IC entweder eine Kerbe oder einen Punkt als Orientierungspunkt. Man zählt dabei gegen den Uhrzeigersinn. Im Beispiel ist der mit dem Punkt markierte Pin unser Pin 1, der rechts daneben Pin 2 usw.
Angenommen auf einer x-beliebigen PCB (als Beispiel nehmen wir VS Super Mario Bros) funktioniert ein Knopf nicht mehr (als Beispiel soll der Credit-Button nicht mehr funktionieren). Dann schauen wir in den Schaltplan und verfolgen das Signal vom Jamma-Anschluss bis zum ersten IC. Auf dem Foto sehen wir einen Teil-Ausschnitt des Schaltplans von VS Super Mario Bros. Ganz recht unten sehen wir das Signal für Coin 1 und Coin 2.
[ATTACH=CONFIG]16197[/ATTACH]
Das Signal führt durch Widerstände schließlich zum IC 8M, evtl. ist dieser IC defekt. Wir prüfen die beiden Pins, an denen die beiden Coin-Signale von Jamma-Stecker ankommen, also Nr. 15 und Nr. 13.
C.1: Spezialwissen
Alles anzeigen
Eine PCB macht Millionen Arbeitsschritte in der Sekunde, und alles ist zeitgesteuert verknüpft durch den sogenannten Systemtakt.
Kein Takt, keine Funktion, basta. In der Digitaltechnik sind die Informationen in der Zeit codiert, und nicht in der Spannung!
Es gibt immer nur 1 oder 0, also H bzw. L Level, aber der exakte Zeitpunkt ist wichtig. Und damit alle Bausteine mikrosekundengenau
miteinander arbeiten können, beginnt nach dem Starten alles mit einem gemeinsamen Reset. Damit wird definiert, wer mit wem und wann spricht!!
Bei einer toten PCB lohnt es sich daher, nachzuschauen, ob das Clock-Signal überhaupt da ist und ob der Reset funktioniert.
Manchmal ist ja nur der Schwingquarz lose oder abgebrochen.
Mal mit dem Fingerrücken über die Bauteile gehen, wenn da ein IC sehr heiß wird, ist das auch ein Fingerzeig.
Kontaktfehler aller Art sind gerade bei mehrstöckigen Konstruktionen die häufigste Ausfallursache, allem voran die breiten Verbindungskabel von Etage zu Etage.
ICs in ihren Sockeln, wobei sone PCB vlt. länger im Keller lag und die Anschlußbeinchen korrodiert sind. Passiert auch mit den Sockeln selbst.
Bestimmte Baureihen der ICs bekommen regelrecht schwarze Beinchen, die sind z. B. mit einem Glasfaserstift wieder blank zu kriegen, vorsicht, brechen gerne dabei ab.
Überhaupt: Große und damit schwere Bauteile verlieren gerne mal den Halt in ihren Lötstellen, allem voran Elkos und Lastwiderstände.
Da ist einfache Sichtprüfung angesagt. Zigpolige Steckverbindungen fallen oft durch kalte Lötstellen auf, meistens beginnend an den äußeren Kontakten.
Kein Ton: 12V vorhanden? Eigentlich funzen alle PCBs ohne die 12V-Schiene, halt nur ohne Ton.
Ältere PCBs brauchen oft noch eine Hilfsspannung -5V, weil die Umsetzung hinter dem DAC mit OPs realisiert wird, die eine geteilte Speisung benötigen.
Endstufen-ICs fallen auch gerne aus, manchmal sieht man schon abgeplatzte Stellen am IC, oder es wird irre heiß. Oder es bleibt total kalt, auch verdächtig.
Elkos lose in den Lötstellen (siehe oben), Poti für die Lautstärke defekt oder ganz runtergedreht. In diesem Falle hört man aber noch ein Surren oder Rauschen
aus dem Lautsprecher, wenn das IC noch ok ist. Poti aufdrehen sollte diesen Effekt deutlich zeigen, spätestens, wenn man mit einem Metallstück den Schleifer
des Potis berührt, sollte ein Brummen hörbar werden.
Bei Teildefekten der Steuerung erstmal schauen, ob am zuständigen Pin die Pullup-Spannung (~5V) ansteht. Wenn ja, hilft nur, die Leiterbahn bis hin zu dem ersten IC zu verfolgen, das ist möglicherweise defekt, so daß die Aktion dem Datenbus nicht mitgeteilt werden kann.
C.2: Einen Logic Probe benutzen
Was ist ein Logic Probe? Ein Logic Probe ist ein Werkzeug, um das Verhalten eines aktiven elektronischen Schaltkreises zu analysieren (in unserem Fall handelt es sich um eine Spielplatine, die mit den benötigten Spannungen versorgt wird). Ein typischer Logic Probe sieht so aus und kostet nicht viel (geht schon bei 15 Euros los):
[ATTACH=CONFIG]24708[/ATTACH]
Man sieht das Gerät selbst, die Messspitze und zwei Kroko-Klemmen, rot + schwarz. Der rote Anschluss wird an den Spannungs-Punkt des Schaltkreises geklemmt (meistens sind es +5V, maximal +15V), der schwarze an Ground. Mit der Messspitze werden nun die Pins der zu erforschenden ICs, Transistoren etc. geprüft.
Achtung: Beim Brücken von Pins kann es zu Kurzschlüssen kommen, die den betreffenbden Baustein zerstören können. Also aufpassen.
Was prüft ein Logic Probe?
Im Prinzip analysiert der Logic Probe digitale Logik, also Nullen und Einsen. Das digitale Signal ist entweder ON (HIGH, Spannung) oder OFF (LOW, keine Spannung):
[ATTACH=CONFIG]24709[/ATTACH]
Die Abfolge der Nullen und Einsen wird bestimmt durch das Clock Signal. Das Clock Signal sagt der CPU zu welchem Zeitpunkt sie den Zustand eines Bausteins (HIGH oder LOW) abfragen soll. Man nennt dies auch den Pulse. Hier ein Beispiel für das Pulsieren des Clock Signals:
[ATTACH=CONFIG]24710[/ATTACH]
Das obige Beispiel zeigt, das die ON-Zeit genauso lang ist wie die OFF-Zeit. Man könnte sagen, dass das Pulsieren des Clock Signals so etwas wie der Herzschlag der Spielplatine ist. Je schneller der Herzschlag der Platine, desto schneller kann die CPU die Nullen und Einsen senden und interpretieren (3 Megahertz bedeuten beispielsweise 3 Million Zyklen pro Sekunde.
Das wars schon. Mehr muss man fürs Erste nicht wissen!
EinLogic Probe zeigt uns also 3 Zustände an (via LEDs):
- ON
- OFF
- Pulsing
Einsatz:
Wir haben Problem X und wollen wissen, ob Bauteil Y dafür verantwortlich ist. Wir besorgen uns also die Schematics von Bauteil Y (kann man sehr, sehr leicht ergoogeln, es genügt meist einfach nur die Bezeichnung des Bausteins bei Google einzugeben, z.B. ein Z80 Prozessor). Im ausgeschalteten Zustand knipsen wir dann die rote Krokodil-Klemme an +5V und die schwarze an Ground (aufpassen, dass nichts kurzgeschlossen wird!). Nun schalten wir das Spiel ein. Mit der Messspitze tippen wir nun auf die zu prüfenden Pins von Bauteil Y. Das Logic Probe sagt uns nun (via LED), ob der Pin LOW oder HIGH ist.
Wir wissen nun, wie wir den Logic Probe einsetzen. Um ihn sinnvoll einzusetzen, müssen wir noch verstehen, wie das zu messende Bauteil funktioniert. Dazu analysieren wir vor dem Messen die Schematics/das Datasheet des Bauteils. Hier das Datasheet eines 74LS02:
[ATTACH=CONFIG]24715[/ATTACH]
Wir sehen die verschiedenen Pins des Chips, Pin 7 ist bspw. Ground (GND), Pin 14 ist VCC +5V. Der Rest ist entweder INPUT oder OUTPUT.
So ein Logic Probe ist bei der Fehlersuche nur bedingt brauchbar, da sich die meisten Signale dynamisch sehr schnell ändern. Ein Logic Probe der besseren Art ist ein Oszilloskop, welches den Verlauf der Logikpegel direkt sichtbar macht. Mit einem einfachen Logic Probe wie dem hier beschiebenen kann man aber zumindest einmal feststellen, ob gewisse Pegel dauernd auf logisch 0 (0V) oder auf logisch 1 (5V) sind. Wenn der Probe zum Beispiel an einem Chip-Select (CS#) ein permanentes "0" anzeigt, so sollte das stutzig machen, da kaum ein Speicher (gerade EPROMs nicht) permanent selektiert wird (Chip Select ist im Allgemeinen invertiert aktiv, also angewählt bei Pegel "0")... Vielleicht sind aber die anderen Impulse nur zu kurz, um vom Probe angezeigt zu werden. Das wiederum kann man dann nur mit dem Oszi überprüfen. 74LS138 (1 aus 8 Decoder) ist so ein klassischer Baustein, um aus drei Adressleitungen acht verschieden CS-Signale zu erzeugen. Und die Dinger gehen gerne kaput, meist mit einer permanenten "0" auf einem der Kanäle. Das kann man mit dem Logic Probe schon mal erahnen.
Alles anzeigenEinen LogicProbe (LP) kann man wunderbar einsetzen, um grundsätzlich festzustellen, ob in einer PCB noch leben steckt oder nicht. Hier mein grobes vorgehen, wenn ich eine PCB in die Finger bekomme, die nix mehr sagt:
Zunächst muss festgestellt werden, ob alle erforderlichen Spannungen anliegen. Dazu wurde schon genug gesagt an anderen Stellen, das spare ich mir mal. Weiter geht es mit dem LP. Den wie vom Hass beschrieben anklemmen und als erstes an der CPU anfangen zu messen. An der CPU sind besonders die Daten- und Signalleitungen, Reset und Clock interessant. Wie ebenfalls beschrieben, funktioniert JEDE Spielplatine im Prinzip so oder so ähnlich: Der Prozessor liest aus den ROMs einen Befehl und arbeitet ihn ab. Dabei legt er auf die Adressleitungen die Adresse der Speicherstelle im ROM, die er nun lesen möchte. Der Adressdecoder erkennt daraus, welches ROM er aktivieren muss, setzt das entsprechende Signal (ChipSelect - CS, ist an jedem ROM ein spezieller Pin) und legt die Adresse auf den Adress-Bus. Aus genau dem gewählten ROM fliesst nun die Information, die an der Adresse zu finden ist über den Datenbus ins RAM oder an die CPU. So geht es mit jedem Takt immer weiter vorwärts im Programm. Zusätzlich werden noch die Inputs mit ein den Ablauf eingebunden aber dazu vielleicht später mehr....
Mit dem LP testet man zunächst, ob die CPU überhaupt arbeitet. Wir nehmen mal den berühmten Z80-Prozessor als Beispiel. Wenn man sich das Pinout des Chips ankuckt, sind folgende Anschlüsse für unseren rudimentären Test interessant:
A0-A15: Adressleitungen des Chips
D0-D7: Datenleitungen
RESET: Reset ist active Low, d.h. muss "0" sein, damit der Prozessor läuft
5V (Power): Versorgungsspannung
GND: Ground
CLOCK: Taktsignal
Erster Messpunkt ist 5V. Hier sollte der LP "High" anzeigen, bei GND "Low". Clock sollte pulsieren, ebenso die Adress- und Datenleitungen. Reset muss fest auf "Low" stehen. Sollte hier ein Pulse Signal kommen oder gelegentlich mal ein Flackern auf dem LP zu sehen sein, ist das ein Indiz dafür, dass die Platine aus irgendwelchen Gründen resettet. Clock muss ebendfalls pulsen. Wenn dies alles ok erscheint, muss man weiter graben. Sollte eines der Lebenszeichen unkoscher aussehen, kann man direkt an der Stelle in den Schaltplänen rückwärts gehen und an dem Teilbereich der PCB weiter schauen.
Sieht die CPU gut aus, geht es bei den ROMs und RAMs weiter. Hier kann man recht analog verfahren. Auch die RAMs/ROMs haben Daten- und Adressleitungen, die pulsen sollten. Ausserdem kann man auch hier GND und 5V verifizieren. Wichtig dort ist auch der CS (ChipSelect). Auch da braucht es ein Pulse.
All das kann man perfekt und schnell mit dem LP messen. Man hat oft an den ROMs an den Adressleitungen Signale, die sich nicht verändern. Man spricht da von "Stuck High" oder "Stuck Low". Ist dann oft etwas im Adressdecoder oder sowas ... dazu irgendwann mal genaueres.