Hallo, ich eröffne hier einen Thread für das „Projekt“ Platine mit 8 Stück 5*7 DOT-Matrix-Display DLG7137. Ausschlaggebend ist die Resonanz auf meinen Verkauf dieser Platinen und die darauffolgenden Mails einiger User. Beitrag "[V] #VERKAUFT# Platine mit 8 Stück DLG7137, 5*7 Punktmatrix" Das Interesse scheint groß zu sein die Platine zum laufen zu bringen, also anzusteuern. Die Platinen habe ich vor Jahren mal gekauft. Ursprünglich ging es mir nur um die intelligenten Displays die ich eigentlich auslöten wollte. Der Plan ist dann aber erstmal im Sande verlaufen. Aufgrund einiger Mails ist es aber doch interessant geworden die Platinen so zu benutzen. Ein User hat bereits mit dem „reverse engineering“ begonnen und im ursprünglichen Verkaufsthread gepostet. Schon mal vielen Dank an Peter dafür. Um die Diskussion aber nicht im Unterforum Markt fortführen kam die Idee für diesen Thread hier. Vielleicht schreibt sogar jemand eine Code (Arduini & Co) um z.B. eine Uhr aus der Platine zu machen. Natürlich eine Uhr..was sonst😀 Anbei Fotos von der Platine und Datenblätter der ICs und Displays. Auf 2 Fotos sind Beschriftungen angegeben, damit eine Grundlage für den Austausch besteht. Mal sehen was draus wird..ich freue mich auf eine sachliche Diskussion und Informationsaustausch. Mir ist bewusst dass ich hier nur einen kleinen Teil der User anspreche. Den Post von Peter füge ich in einem folgenden Kommentar dem Thread bei.
Gerade habe ich den Thread abgeschickt und sehe diesen Post.. Vielen Dank an John👍 Beitrag "Re: [V] #VERKAUFT# Platine mit 8 Stück DLG7137, 5*7 Punktmatrix" ..und auch an Peter: Beitrag "Re: [V] #VERKAUFT# Platine mit 8 Stück DLG7137, 5*7 Punktmatrix"
:
Bearbeitet durch User
Hallo Jörg - ich habe deine Antwort im Nachbarthread zu spät gelesen, deswegen liegt der Teilschaltplan auch dort ab.
John H. schrieb: > Hallo Jörg - ich habe deine Antwort im Nachbarthread zu spät > gelesen, deswegen liegt der Teilschaltplan auch dort ab. Hallo John, das hat sich gerade alles überschnitten. Ich sitze gerade im Gartencenter und wurde von meiner Frau im Cafebereich geparkt:-) Da kam mir die Idee den Thread hier zu eröffnen. Ich hänge den Link zu Deinem Kommentar hier an, ebenso den Plan und das Foto. Beitrag "Re: [V] #VERKAUFT# Platine mit 8 Stück DLG7137, 5*7 Punktmatrix" Ich möchte Euch dann bitten in diesem Thread hier weiter zu posten.
:
Bearbeitet durch User
Hier der Schaltplan der Platine. Vielleicht kann den Jemand ins reine zeichnen :) Bevor jetzt an Format, Größe usw. rumgemeckert wird, ich bin mit der Scan-to-Email-Funktion des Kopierers hier nicht vertraut. Ich bin froh, daß ich da überhaupt etwas rausbekommen habe...
:
Bearbeitet durch User
Hallo, ein Update zum Code. Die Zeile
1 | const uint8_t displayIndex[] = {23, 22, 21, 20, 15, 14, 13, 12}; |
soll in
1 | const uint8_t displayIndex[] = {151, 150, 149, 148, 143, 142, 141, 140}; |
geändert werden. Ansonsten wird bei jedem setzen eines chip enable das Register für die Helligkeitswerte zurückgesetzt, was zu einer flackernden Anzeige führt. Bei statischem Betrieb ist das egal, da ich die Helligkeit erst im Anschluss gesetzt habe. Beim programmieren einer Uhr hat es sich dann aber bemerkbar gemacht. Ebenso sollte write-Impulse mit dem Code
1 | ctrlRegister.digitalWriteByte(196); // Write-Impuls auslösen |
ausgelöst werden. Vorher war es ...digitalWriteByte(64), was ebenfalls zum löschen der Anzeige führt. Letzter Punkt, ein typo: Um die Helligkeit auf 100% zu setzen, muss der Wert 7 in den PCF geschrieben werden. Ich hatte im veröffentlichten Code 6 geschrieben.
Beitrag #7848875 wurde von einem Moderator gelöscht.
In Zusammenarbeit mit Jörg habe ich den Schaltplan nun finalisiert. Jörg hat netterweise die Bilder zur Zuordnung der Bauteile beigesteuert. Ich denke nun ist alles soweit komplett. Anbei im Archiv das KiCad 8.0 Projekt sowie der Schaltplan. Dieser auch noch einmal als PDF extra angehängt (auch im Archiv enthalten).
Da mir die Schaltung der Original Platinen ziemlich aufwändig erschien, und das Arduino Programm bei mir nicht funktioniert hat, habe ich eine meiner Platinen "ausgeschlachtet" mit dem Ziel die DLG7137 Displays weiter zu verwenden. Hierzu habe ich eine Platine entworfen, die ebenso eine 8-stellige Anzeige beherbergt, sowie ein kleines C-Testprogramm für einen ATtiny2313 geschrieben. Alles funktioniert wie gewünscht auf meiner Musterplatine. Die Datenübergabe erfolgt parallel über Port B. Die 8 Chip-Select-Signale werden über einen der ebenfalls ausgelöteten 74HC138 Decoder erzeugt. Auch LED-Test und Helligkeit lassen sich per µC über die 16-polige Stiftleiste ansteuern. Auch wenn das Interface der Original Platine dank I2C mit nur 2 Signalen auskommt, ist dies wie ich finde eine einfache und praxistaugliche Alternativlösung. Anbei Schaltung, Platinenlayout & Demo-Firmware.
Thomas K. schrieb: > In Zusammenarbeit mit Jörg habe ich den Schaltplan nun finalisiert. > Jörg hat netterweise die Bilder zur Zuordnung der Bauteile beigesteuert. > Ich denke nun ist alles soweit komplett. Anbei im Archiv das KiCad 8.0 > Projekt sowie der Schaltplan. Dieser auch noch einmal als PDF extra > angehängt (auch im Archiv enthalten). Ich bedanke mich für die bisherigen Antworten und den nicht unerheblichen Zeitaufwand. Thomas K. hat in kürzester Zeit einen kompletten Schaltplan aus der Platine erstellt..und soweit ich das bisher beurteilen kann fehlerfrei. Den Ansatz von Thomas N., eine neue Platine zu erstellen, gefällt mir auch. Schließlich war es mein Plan, als ich die Platinen vor Jahren gekauft habe, die Displays auszulöten und für andere Projekte zu verwenden. Der Plan ist dann aber lange in der Versenkung verschwunden. Thomas N. hat mir dann aber den Tipp gegeben die Display mit einer Heißluftpistole aus dem Baumarkt auszulöten. Ich hatte so ein Teil bereits, sogar eine regelbare, und habe es dann ausprobiert. Das funktioniert wunderbar, ein Display lässt sich innerhalb von Sekunden auslöten. https://www.mikrocontroller.net/attachment/665438/DLG7137-A.jpg https://www.mikrocontroller.net/attachment/665439/DLG7137-B.jpg Peter N. schrieb: > Was ich mich frage: > Wozu liegt P5 von U3 auf gnd? Gute Frage. Die Verbindung ist tatsächlich so, habe es extra nochmal überprüft. Der PCF8574 arbeitet bidirektional. Vielleicht wurde in der ursprüngliche Verwendung hier irgendeine Abfrage gemacht. Meines Wissens nach stammen die Display aus einem Gerät der Audioindustrie (Tonstudio?) und es waren 2 von den Platinen in einem Gerät verbaut. Also, nochmals vielen Dank für die bisherigen Kommentare:-)
:
Bearbeitet durch User
Jörg R. schrieb: > Gute Frage. Die Verbindung ist tatsächlich so, habe es extra nochmal > überprüft. Der PCF8574 arbeitet bidirektional. Vielleicht wurde in der > ursprüngliche Verwendung hier irgendeine Abfrage gemacht Ja, aber der Sinn erschließt sich mir nicht. An der Stelle kann man bei jeder Platine immer nur 0 auslesen. Festzustellen, ob eine Platine vorhanden ist, kann man auch anders... Der Int-Ausgang wird wahrscheinlich bei einer bestimmten Anzeige gesetzt. Vermutlich wenn die rote Seitenled aufleuchtet?
Basierend auf den Vorarbeiten für den Schaltplan von Thomas K. und dem Arduino Beispiel von John Hermann habe ich damit begonnen die Ansteuerung der Platine für kleinere Atmel Controller per Bitbang I2C zu adaptieren. Beides funktioniert soweit auf einem ATtiny85 ganz gut. Allerdings gelingt die Ansteuerung der Flächen LEDs noch nicht wie erwartet. Wenn ich über U3 und U5 BAR_FF_STATE1 setze und dann eine positive Taktflanke an BAR_FF_CLK erzeuge gehen beide LED Balken gleichzeitig an. Das kann ich mir anhand der Schaltung nicht erklären, es sollte nur die grüne LED betreffen. Ebenso unklar ist, dass sich die LED Balken mit BAR_FF_STATE1=0 und nachfolgend positiver BAR_FF_CLK Taktflanke nicht wieder ausschalten lassen. Noch verwunderlicher ist, dass mit BAR_FF_Reset nicht nur die LED-Balken sondern auch alle 8 Displayziffern abschalten. Vielleicht hat jemand von euch eine Idee hierzu? Noch eine Bemerkung zu dem Arduino Sketch: Hier sind im Header des Sketches die Anschlüsse von Pin2 PCF und Pin3 PCF vertauscht. Um die Adressen 0x24 und 0x25 einzustellen liegt Pin2 an GND und Pin3 an +5V.
Da mir die Ansteuerung der Flächen-LEDs nach Maßgabe der Schaltung nicht gelungen war, habe ich die Verschaltung der beiden D-Flipflps U8 zur Steuerung der LEDs überprüft und dabei 2 Fehler in der bisherigen "final" Schaltung gefunden: 1.) Der D-Eingang BAR_FF_STATE1 an U8B ist mit Pin 4 von U2 verbunden, und nicht wie angegeben mit Pin 11 von U3 (für die grüne LED) 2.) Der D-Eingang BAR_FF_STATE2 an U8A ist mit Pin 5 von U2 verbunden, und nicht wie angegeben mit Pin 10 von U2 (für die rote LED) Hiermit gelingt dann auch die Ansteuerung der beiden Flächen LEDs. Vielleicht könntet ihr die Schaltung diesbezüglich aktualisieren, ich nutze kein KiCad. Etwas "tricky" ist die Verknüpfung der Ansteuerung der Flächen-LEDs mit der Helligkeitssteuerung, die sowohl die Alpha Displays als auch die Flächen LEDs betrifft. Anbei ein kleines Demo-Programm, das die Ansteuerung der Flächen-LEDs demonstriert und vorab auch den LED Test der DLG7137 Anzeigen zeigt. Damit sind nun alle Display Funktionen für eigene Anwendungen nutzbar.
Oha, da habe ich euch ja ein Ei gelegt zu Ostern. Sorry. Ich habe den Schaltplan und das KiCAD File mal schnell angepasst. Gute Arbeit! Frohes Osterfest!
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.