Hallo zusammen, folgendes Problem: Ich habe mir die Tage aus China einen Satz von den MAX7219 gekauft. LED-Matrizen bzw. Module hatte ich von einem Kollegen bekommen. Während ich auf die Lieferung aus China gewartet habe, habe ich mich um den Quellcode zur Ansteuerung der Module gekümmert. Angefangen habe ich mit einem Modul und dann das ganze stückweise erweitert, sodass THEORETISCH mehrere hübsche Sachen mit einer 24x24 Matrix bestehend aus 9 einzelnen LED-Modulen, jeweils mit einem MAX7219 möglich sein sollten. Gestern kamen dann die MAX7219 an und voller Vorfreude habe ich mit STK500, JTAG ICE MK3 und Breadboard mich an einen ersten kleinen Test-Aufbau gemacht. Und wie es immer so schön ist: Es hat nicht funktioniert. Genauer: Alle LEDs leuchten einfach. Nach einer ersten Recherche scheint das wohl der Display-Test-Mode zu sein. -> Okay, vielleicht habe ich ja einen Fehler irgendwo gemacht. "Egal, den such ich morgen!". Noch fix nach einigen Code-Beispielen ( beispielsweise dieses hier: https://gist.github.com/adnbr/2352797 )gesucht und durchprobiert. Kein Erfolg. Auch der Einbau von Delays (bis zu 1 Sekunde) zwischen dem Senden der Befehle an den Chip brachten keinen Erfolg. Natürlich auch hier die SuFu bemüht und es wurden in diesem Zusammenhang mehrmals die Kondensatoren als Problemquelle genannt. Da ich gerade keine 10µ zur Hand hatte habe ich einfach einen 100µ Elko (natürlich in Kombination mit einem 100n Kerko). Abgesehen davon ist auch die Möglichkeit/Idee genannt worden, dass es sich um einen (billigen) Fake handelt. Recherchiert und in der Tat, es handelt sich offensichtlich nicht um ein Original (hier der entsprechende Artikel http://tronixstuff.com/2013/05/16/the-max7219-led-display-controller-real-or-fake/ ). Soweit fürs erste Experimentieren kein großes Problem. Die Verdrahtung habe ich mehrmals selber kontrolliert und von einem Kollegen kontrollieren lassen. Immerhin, alle LEDs leuchten auch brav. Und auch die Verbindung von MOSI -> DIN, SCK -> CLK und SS -> Load steht. So langsam gehen mir die möglichen Fehlerquellen aus... Software kann ich eigentlich ausschließen. Natürlich habe ich dort auch immer beachtet, dass ich sie an den ATMEGA32 im Zweifelsfalle anpassen musste (meistens nur F_CPU). Habt ihr Erfahrung mit den Modulen aus China? - Oder habt ihr noch weiter mögliche Fehlerquellen? - Klar, das Breadboard. Wie siehts aus, habt ihr mit der Kombination Breadboard und MAX7219 bzw. SPI allgemein Erfahrungen? So langsam drängt sich mir der Verdacht auf, dass das China-Modul einfach nur eine WIRKLICH billige Kopie ist, ohne nennenswertem Inhalt ausser vielleicht ein paar Transistoren, damit alles hübsch leuchten kann... Nachtrag: Als weitere Debugging-Option lasse ich mir morgen mal ein UART zu USB Wandler mitbringen. Zur Not werde ich den mal mit einem "kleinen" Atmega auf einer Platine verbauen, welcher dann die SPI-Schnittstelle "abhört" und die empfangenen Daten an den Computer weiterleitet. Bis ich mit dieser Methode widmmen kann wird es allerdings noch ein kleines Bisschen dauern... Nachtrag 2: Ein analoges Oszi (bis 20 MHz) habe ich. Dieses hat auch einen wechselnden Pegel am Eingang des Chips erkannt (zwischen 0 und 5V). Ein Logic-Analyzer habe ich leider nicht...
:
Bearbeitet durch User
Die billigen MAX7219 aus China sind allesamt Fälschungen/Plagiate. Schau mal, was Maxim dafür nimmt! Ich habe jedoch noch nie gehört, dass die Fakes nicht funktionieren.
Dass die Dinger nicht echt sind habe ich mir auch schon gedacht, da aber bisher keine großen Probleme berichtet wurden habe ich sie für erste Experimente einfach mal gekauft. Später wird ohnehin nur das Original verbaut.
Hallo, hab solche Dinger aus aus China bestellt und verbaut, dabei gab es keine Probleme. Es sind in meiner Uhr 28 Stück in einer Daisychain hintereinander, es klappt ohne Probleme. Siehe hier: https://www.youtube.com/watch?v=WJEo7s-o4Kw Gruß Thomas
Hallo, Stefan Schmidt schrieb: > Recherchiert und in der Tat, es handelt sich offensichtlich > nicht um ein Original (hier der entsprechende Artikel > http://tronixstuff.com/2013/05/16/the-max7219-led-display-controller-real-or-fake/ Wenn ich es richtig sehe ist auf dem von Dir verlinkten Artikel kein einziger echter MAX7219 zu sehen. Maxim bedruckt seit 2002 seine ICs nicht mehr sondern ätzt die Beschriftung. http://www.aeri.com/counterfeit-electronic-component-detection/ Ansonsten: hast Du schon mal den Widerstand zwischen den Pins nachgemessen? Vielleicht ist ja nur eine Drahtbrücke zwischen Versorgung und den LED-Ausgängen verbaut. Gruß Anja
Neben viel Mist habe ich gestern auch das angehängte Bild an "Segment C" gemessen (5V/div). Darauf hin habe ich ein wenig mit den Einstellungen für die Anzahl der Segmente herumgespielt und gemerkt, dass zumindest die Einstellungen korrekt übernommen wurden. Dann dämmerte mir gestern bzw. vielmehr in der Frühe, dass die Matrix wohl, entgegen der Beschreibung keine "allgemeine Kathode", sprich Common Cathode, sein könnte, sondern eine Common Anode. Ich werde heute Nachmittag allerdings erstmal den Chip ausführlich ausmessen und meine Erkenntnisse berichten.
:
Bearbeitet durch User
Hallo, das common Kathode bezieht sich auf die 7-Segment-Displays die an den Baustein angeschlossen werden. Gruß Anja
Ja. Aber das ist natürlich auch für die Matrix relevant. Hier ist ein Link, wo in einem Ar***no-Forum die Thematik diskutiert wurde. Man müsste eben einfach nur Software - seitig die Ansteuerung von Segment und Digit vertauschen forum.arduino.cc/index.php?topic=117102.0 marco-difeo.de/2013/02/21/drive-max7219max7221-with-common-anode-display s/
:
Bearbeitet durch User
Stefan Schmidt schrieb: > wo in einem Ar***no-Forum Sch*re im K*pf? M*m *arf auch hier in diesem F***m Namen verwen***.
Stefan Schmidt schrieb: > entgegen der Beschreibung keine "allgemeine Kathode", sprich > Common Cathode, sein könnte, sondern eine Common Anode. Wenn die LEDs verkehrt rum gepolt sind, darf keine leuchten.
Peter Dannegger schrieb: > Wenn die LEDs verkehrt rum gepolt sind, darf keine leuchten. kann ich so nicht bestätigen. Es ist sowohl ein digit source current als auch ein segment sink current spezifiziert. (obwohl die Ströme relativ gering sind). Gruß Anja
Ich habe endlich des Rätsels Lösung gefunden! Es war einen leichter Wackelkontakt bzw. Kurzschluss im Breadboard am DIN-Pin des MAX7219. So hat er grundsätzlich einen (mehr oder minder) High-Pegel bekommen, was ihn dazu veranlasst hatte in den Test-Modus zu gehen. Mit einem neuen Breadboard tut nun die Schaltung so, wie sie soll! Trotz allem ein Danke an alle, die geantwortet haben!
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.