Forum: Mikrocontroller und Digitale Elektronik Ansteuerung 7-Segment Anzeige - Fehlersuche


von Andreas G. (andreas_g155)


Angehängte Dateien:

Lesenswert?

Hallo nochmal,
ich bin immer noch mit meiner Positionsanzeige einer Drehmaschine Elesta 
Visulesta 2e zugange.
Das Problem mit den Tastern habe ich mittlerweile beheben können.
Nun habe ich allerdings noch das Problem identifiziert, dass zwei 
7-Segement Anzeigen nicht korrekt funktionieren. Ich habe Ersatz 
7-Segement Bausteine eingebaut, aber der Fehler bleibt bestehen.
Angesteuert wird das Display vermutlich von einem Intel P8279. Zumindest 
gehen von da die Outs zu einem der PROM’s. Teilweise kommen aber auch 
noch Leiterbahnen von dem Schaltungsteil unten links. Das ist auch der 
Bereich wo von der Rückseite die Eingänge der Messstäbe auf dieser 
Platine ankommen.

Im Bereich der Anzeigen sind insgesamt
- 3x UDN2981A 8-fach Leistungstreiber
- 2x bzw. 3x ULN2064B mit jeweils 4 NPN Darlington Transistoren (was 
auch immer das ist)
- 2x TBP18S030 256Bit PROM
- HD1133R 7-Segment Module (gemeinsame Kathode) verbaut.

Die Ansteuerung muss ja – allein weil nicht so viele Widerstände verbaut 
sind – seriell erfolgen, so dass die einzelnen Anzeigen wahrscheinlich 
nacheinander bedient werden.
Da ich die Leiterbahnen in dem Bereich nur schwer verfolgen kann fällt 
es mir schwer die Schaltung da zu verstehen. Kann vielleicht jemand aus 
dem Bauch sagen, in welchem Bereich ich am besten anfange zu suchen? 
Interessant ist ja, dass nur in jeder Reihe jeweils eine Anzeige 
betroffen ist. Demnach muss ja grundsätzlich vom Controller her alles 
passend kommen und was auch immer dann in Richtung 7-Segmentanzeige 
dazwischen ist, scheint für eine Anzeige defekt zu sein. Wahrscheinlich 
irgendwo im Leistungsteil. Nur ich verstehe nicht, warum dann nur die 
beiden Anzeigen teilweise betroffen sind.

Kann mir jemand einen Tipp geben, wo ich anfange zu suchen?

Gruß
Andreas

von MaWin (Gast)


Lesenswert?

Andreas G. schrieb:
> Die Ansteuerung muss ja – allein weil nicht so viele Widerstände verbaut
> sind – seriell erfolgen, so dass die einzelnen Anzeigen wahrscheinlich
> nacheinander bedient werden

Das nennt man Multiplexen. Der 74LS145  decodiert wohl 1 von 8 Stellen.

Die PROMs werden als 7-Segment Decoder für je eine Zeile arbeiten, Die 
UxN als Zeilen und Spalten Treiber.

Mit einem Oszilloskop findet man den Fehler schnell, die Spannungspegel 
werden nicht ganz stimmen, nicht satte low und high sein.

Ich hab ja die PROMs in Verdacht.

von Andreas G. (andreas_g155)


Lesenswert?

MaWin schrieb:

> Das nennt man Multiplexen. Der 74LS145  decodiert wohl 1 von 8 Stellen.
Der links von den Anzeigen ist aber für die Tasten zuständig. Das Thema 
hab ich schon durch (auch hier im Forum zu finden). Vom Intel geht es 
direkt in Richtung PROMs

> Die PROMs werden als 7-Segment Decoder für je eine Zeile arbeiten, Die
UxN als Zeilen und Spalten Treiber.
Ws bedeutet in dieser "Sprache" Zeile? Eine Zeile der Anzeigen, sprich 
eine Reihe die zusammengehört? Und was sind Spalten? So richtig bin ich 
noch nicht auf der Höhe...

> Ich hab ja die PROMs in Verdacht.
Das wäre der worst case, weil ich nicht weiß, was programmiert ist, 
geschweige denn das nachprogrammiert bekomme, oder?

von MaWin (Gast)


Lesenswert?

Andreas G. schrieb:
> Ws bedeutet in dieser "Sprache" Zeile? Eine Zeile der Anzeigen, sprich
> eine Reihe die zusammengehört? Und was sind Spalten

Die ULN2064 werden die Digits bedienen wegen CC, die UDN2981 die 
Segmente.

Ich rechne mit 8 Stellen plus den 3 LEDs als 9. Stelle, daher den 
74LS145 als Decoder, ein 74LS138 reicht dann nicht.

von Andreas G. (andreas_g155)


Lesenswert?

So langsam beginne ich das mit dem PROMs zu verstehen. Der P8279 gibt 
Signale raus, welche durch das PROM in die Ansteuerung der 
7-Segmentanzeigen übersetzt werden. Ich stelle mir das so vor, dass der 
P8279 dem PROM "sagt" ich möchte z.B. eine "0" und das EPROM hat 
gespeichert welche Segmente an der "0" leuchten müssen. Es muss ja auch 
irgendwas in dieser "Übersetzung" sein, da sonst ja einzelne Elemente 
der betoffen Elemente mal leuchten und mal nicht leuchten würden.
Ich gucke mir das die nächsten Tage mal an. Nur wenn es die Dinger sind 
wird es schwierig mit dem Auslesen und dem neu Programmieren. Ich habe 
noch eine Kiste da die heile ist. Aber die darf auf keinen Fall durch 
herumdoktoren unbrauchbar werden.
Gruß
Andreas

von MaWin (Gast)


Lesenswert?

Andreas G. schrieb:
> Ich stelle mir das so vor, dass der P8279 dem PROM "sagt" ich möchte
> z.B. eine "0" und das EPROM hat gespeichert welche Segmente an der "0"
> leuchten müssen.

Genau. Kann auch ein 74LS247. Aber der Erbauer wollte wohl besondere 
Zeichen für 10-15 haben, also musste er einen Decoder selber 
programmieren. Kann heute auch ein ATF16V8, ist aber nicht 
pinkompatibel.

Deine Schaltung ist zudem so gebaut, dass die 3 Anzeigen a 8 Stellen a 8 
Segmente kann, angeschlossen an den 16x8 Display-IC, nur ist 1 Anzeige 
inklusive ihrer Treiber -IC nicht bestückt und die 8 bit werden zu 2 x 8 
decodiert zu 16 x 16 LEDs mit den PROMs. Die 3 extra LED könnten auch 
ungenutzte Dezimalpunkte sein. Und eventuell ist die Schaltung so, dass 
auch 4 8-stellige Anzeigen steuerbar wären.

von Andreas G. (andreas_g155)


Lesenswert?

Gibt es eine einfache Möglichkeit das PROM "auszuklingeln" während es 
eingebaut ist? Möchte irgendwie ungerne an dem funktionierenden Gerät 
das Teil auslöten. Hab sorge, dass ich mir die funktionierende Kiste 
kauptt repariere.

von MaWin (Gast)


Lesenswert?

Andreas G. schrieb:
> Gibt es eine einfache Möglichkeit das PROM "auszuklingeln" während
> es eingebaut ist?

Das dürfte! man spontan sehen, wenn man den Schaltplan sieht, Ziffern 
0-9 sind ja schon klar, Sonderzeichen werden in der Bedienungsanleitung 
zu sehen sein, man muss also nur die Anschlussverteilung und Pilarität 
sehen.
Das sind alles handliche Bauteile und viele parallele Leitungen, das hat 
man an einem Tag durchgeklingelt und abgezeichnet.
Man kann natürlich auch wochenlang Fragen stellen.

von Jörg R. (solar77)


Lesenswert?

Andreas G. schrieb:
> Gibt es eine einfache Möglichkeit das PROM "auszuklingeln" während
> es
> eingebaut ist? Möchte irgendwie ungerne an dem funktionierenden Gerät
> das Teil auslöten. Hab sorge, dass ich mir die funktionierende Kiste
> kauptt repariere.

Wenn Du eine funktionierende Platine hast ist das doch ein großer 
Vorteil. Du kannst einen 16-Bit LA (gibt es recht preiswert) an die 
Proms (A0 bis A4 und Q0 bis Q7) anschließen, und den Inhalt quasi 
auslesen. Du musst lediglich die Verbindung der Ausgänge zu den 
jeweiligen Segmenten ausmessen, um den Bezug Segment/Ausgang 
herzustellen. Natürlich unter Einbezug der Treiber, denn der liegt 
zwischen Prom und 7-Segment.

Das Prom TBP18S030 ist einfach gestrickt, es hat lediglich einen 
Steuereingang, G (Pin15). Der könnte sogar auf festen Potential liegen, 
denn die Ausgänge der Chips werden vermutlich nicht parallel geschaltet 
sein.

http://pdf.datasheetcatalog.com/datasheets/320/502478_DS.pdf

Im Worstcase (Prom nicht erhältlich, Programmierung nicht möglich) 
könntest Du die Proms durch kleine Eproms (2716) ersetzen. Es wäre etwas 
Bastelarbeit (Huckepack-Platine) und es ist Overdressed, aber Platz ist 
vorhanden.


Auf der Platine sitzt auch ein gesockeltes Eprom. Den würde ich a) von 
der funktionierenden Platine auslesen und sichern und b) mit dem der 
defekten Platine vergleichen. Vorausgesetzt beide Platinen sind gleich 
und haben denselben Software-/Revisionsstand.

: Bearbeitet durch User
von Andreas G. (andreas_g155)


Lesenswert?

Jörg R. schrieb:
> Wenn Du eine funktionierende Platine hast ist das doch ein großer
> Vorteil. Du kannst einen 16-Bit LA (gibt es recht preiswert) an die
> Proms (A0 bis A4 und Q0 bis Q7) anschließen, und den Inhalt quasi
> auslesen. Du musst lediglich die Verbindung der Ausgänge zu den
> jeweiligen Segmenten ausmessen, um den Bezug Segment/Ausgang
> herzustellen. Natürlich unter Einbezug der Treiber, denn der liegt
> zwischen Prom und 7-Segment.
Das mit dem Messen habe ich verstanden, aber ich habe null Plan was ein 
16-Bit LA ist. Bin halt Elektronikbanause. Aber ich verstehe das so, als 
wenn ich den "Traffic" mitschneiden kann und dann im Protokoll was der 
LA aufzeichnet gucken kann, was passiert? Dann entfällt doch auch das 
mit dem Ausmessen, oder nicht?

> Das Prom TBP18S030 ist einfach gestrickt, es hat lediglich einen
> Steuereingang, G (Pin15). Der könnte sogar auf festen Potential liegen,
> denn die Ausgänge der Chips werden vermutlich nicht parallel geschaltet
> sein.
>
> http://pdf.datasheetcatalog.com/datasheets/320/502478_DS.pdf
>
> Im Worstcase (Prom nicht erhältlich, Programmierung nicht möglich)
> könntest Du die Proms durch kleine Eproms (2716) ersetzen. Es wäre etwas
> Bastelarbeit (Huckepack-Platine) und es ist Overdressed, aber Platz ist
> vorhanden.
Ich hatte schon ein wenig rund um das PROM gegoogelt und es gibt wohl 
verschiedene Ansätze ein solches zu ersetzen. Aber bevor ich da ansetze 
muss ich wissen, wo der Fehler ist, und was im originalen PROM drin 
ist...
> Auf der Platine sitzt auch ein gesockeltes Eprom. Den würde ich a) von
> der funktionierenden Platine auslesen und sichern und b) mit dem der
> defekten Platine vergleichen. Vorausgesetzt beide Platinen sind gleich
> und haben denselben Software-/Revisionsstand.
Was soll das bezwecken? Datensicherung oder glaubst du das hat was mit 
dem Fehler zu tun?

von oszi40 (Gast)


Lesenswert?

AAndreas G. schrieb:
> dass nur in jeder Reihe jeweils eine Anzeige betroffen ist.

Wenn z.B. eine Datenleitung des Prom falsche Werte liefert?
Ohne jetzt große Klimmzüge zu machen, würde ich mal alle Datenleitungen 
des PROMS mit dem Oszi ansehen und vergleichen. Wenn die Signale sauber 
ankommen, würde ich mir die Treiber vergleichen. DANN erst würde ich den 
PROM persönlich vorsichtig anfassen (wenn es nötig sein sollte und ihm 
möglichst kein Bein krümmen). PROMS können verschiedene Fehler haben. 
Manchmal ist eine ganze Datenleitung krank, eine Adressleitung krank 
oder nur eine Zelle fehlerhaft. Oft kommt jedoch das Übel von außen 
durch Zinnklumpen und Schrauben. Deswegen erst Datenleitungen ansehen.
https://rn-wissen.de/wiki/index.php/Siebensegmentanzeige

von Jörg R. (solar77)


Angehängte Dateien:

Lesenswert?

Andreas G. schrieb:
> Das mit dem Messen habe ich verstanden, aber ich habe null Plan was ein
> 16-Bit LA ist. Bin halt Elektronikbanause. Aber ich verstehe das so, als
> wenn ich den "Traffic" mitschneiden kann und dann im Protokoll was der
> LA aufzeichnet gucken kann, was passiert? Dann entfällt doch auch das
> mit dem Ausmessen, oder nicht?

Ja, kommt ungefähr hin.

Ein LA ist ein Logik Analyser. Die gibt es mit 8 Bit, 16 Bit usw. 8 Bit 
ist für dich zuwenig, deshalb 16 Bit. 5 für die Adresseingänge des 
Proms, 8 für die Ausgänge.

Vorteil LA...es muss nichts ausgelötet werden. Die Signale werden 
einfach nur abgegriffen.

Die Schaltung rund um die Displays wäre schon interessant, auch um nach 
anderen Alternativen für die Proms zu suchen. Nur für die 
7-Segment-Displays reicht vermutlich ein z.B. CD4511 o.ä. Damit ließen 
sich aber nur die Ziffern 0-9 decodieren. Wenn von den Proms alle 5 
Adresseingänge genutzt werden gibt es rein rechnerisch 32 Möglichkeiten 
der Darstellung, also eine Art von Sonderzeichen, stark eingeschränkt 
auch wenige Buchstaben wie A, E, U...
Oder einfach nur Striche senkrecht oder waagerecht. Dazu kommt das auch 
die LEDs angesteuert werden müssen.

Interessant ist auch wie die Kathoden angesteuert werden. Die ULN2064 
haben je nur 4 Treiberstufen. Es sind 3 von den Chips vorhanden, also 12 
Treiber. Bei 16 Digits plus die LEDs müssen die daher mehrfach verwendet 
werden.

https://www.st.com/resource/en/datasheet/uln2068b.pdf


Andreas G. schrieb:
> Ich hatte schon ein wenig rund um das PROM gegoogelt und es gibt wohl
> verschiedene Ansätze ein solches zu ersetzen. Aber bevor ich da ansetze
> muss ich wissen, wo der Fehler ist, und was im originalen PROM drin
> ist...

Ja, du musst feststellen wo der Fehler liegt. Wenn es nicht an den Proms 
liegt muss dafür natürlich auch kein Ersatz geschaffen werden.


Andreas G. schrieb:
> Was soll das bezwecken? Datensicherung oder glaubst du das hat was mit
> dem Fehler zu tun?

Nun, zum einen können die Eproms Daten verlieren, die Speicherstellen 
kippen dann auf „1“ um. Dann hättest Du die Daten um Ersatz zu brennen. 
Zum anderen kann! das Eprom auf der defekten Platine nicht i.O. sein, 
was aber eher unwahrscheinlich ist. Aber wer weiß...🤔

Welche Möglichkeiten zu messen hast Du überhaupt? Wobei es ohne Oszi 
vermutlich nicht funktioniert. Nur ein DMM wird nicht reichen.


Ich würde aber auf jeden Fall versuchen einen Schaltplan rund um das 
Display und die LEDs zu erstellen. Also ab den Ausgängen der Proms, 
Treiber, LEDs und Displays.


Gibt es den Hersteller noch? Hast Du dort mal vorsichtig nach einem 
Servicemanual und weiteren Informationen gefragt. Vermutlich hat es 
keinen Zweck, aber Fragen kostet nix.


2 ICs scheinen schon ausgelötet worden zu sein. Hat das etwas mit der 
Fehlersuche zu tun? Gut aussehen tun die Lötstellen nicht, jedenfalls 
nicht was auf dem Foto zu erkennen ist;-)

: Bearbeitet durch User
von Jörg R. (solar77)


Lesenswert?

Wie wirkt sich der Fehler eigentlich genau aus? Auf dem Foto sieht man 
einige fehlende Segmente. Ich frage mich gerade ob es tatsächlich an den 
Proms liegen kann. Die dienen vermutlich nur der Decodierung. Bei einem 
Fehler im Prom müsste sich der Fehler auf alle (8) Stellen im Display 
auswirken. Wenn also z.B. bei einer Ziffer das Segment „c“ fehlt müsste 
der Fehler an allen (8) Stellen auftreten. Ich hoffe jetzt keinen 
Denkfehler zu machen;-)

Interessantes Problem;-)

: Bearbeitet durch User
von Olaf (Gast)


Lesenswert?

> ie wirkt sich der Fehler eigentlich genau aus?

Das Frage ich mich auch. Bei einer Multiplexanzeige muesste man den 
Fehler anhand des Fehlerbildes sehr gut erraten koennen sobald man das 
Multiplexprinzip verstanden hat. Lad mal irgendwo ein 5s Video vom 
Fehler hoch.

Olaf

von H. B. (Gast)


Lesenswert?

Wenn man die Logik von einem funktionierenden PROM auslesen kann (am 
besten mit einem Logic Analyser oder etwas umständlicher mit einem 
Oszilloskop) oder
es auch über die Verdrahtung im Schaltplan "rauslesen" kann, ist es ganz 
einfach mit einem ganz simplen 8-Bit Mikrocontroller das umzusetzen. 
Dazu sind im Programm nur einige Lookup Tables und ein paar weitere 
Programmzeilen nötig.

von Andreas G. (andreas_g155)


Lesenswert?

Wow, was für eine Resonanz hier. Leider hänge ich zeitlich ein wenig 
hinterher und kann mich bis Weihnachen nicht um die Reparatur kümmern. 
Werde Eure Tipps aber beherzigen und entsprechend weiter suchen und 
versuchen die Schaltung besser zu verstehen.
Ich habe ein Oszi da. Bin aber wie gesagt ein Elektronikbanause. Hab mal 
mit 15 'nen Elektronikkurs gemacht und mir danach immer Dinge irgendwie 
zusammengereimt.
Ich melde mich. Gruß Andreas

von Andreas S. (Gast)


Lesenswert?

Und bitte nicht an der Platine versuchen selber zu löten oder was 
auszulöten.
Das geht meistens schief - Leiterbahn abgerissen, Durchkontaktierung
weck etc.
Und Sorry nicht böse gemeint - lass bei soetwas lieber einen das machen 
der dass kann und davon was versteht.
Schade wäre es, wenn danach nichts mehr geht.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.