Hallo zusammen, ich möchte mir eine Schaltung aufbauen, um 2 Treiber-Chip MAX7219 miteinander zu verbinden, da ich später 16x 7 Segment LED (insgesamt 16 Bit) hinzufügen möchte. Also 8x 7 Segment LED (insgesamt 8 Bit) pro Treiber-Chip. Im Internet habe ich einen Schaltplan gefunden, jedoch nur, wie man die einzelnen Leds mit dem Treiber-Chip verbindet. Die Schaltung habe ich dann etwas angepasst, und möchte von euch mal wissen, ob die Schaltung richtig ist oder ob da noch etwas angepasst werden muss? Im Anhang habe ich ein Bild von der Schaltung hochgeladen. Ich bedanke mich schon mal im Voraus für die Hilfe. Gruss
H.Joachim S. schrieb: > Und nimm lieber den MAX7221. Pass aber auf. Nur bei renommierten Distributoren bestellen (Mouser, TME, Reichelt, Digikey, Farnell...) und nicht bei Ebay. Die MAX7221 (vermutlich auch MAX7219) werden scheinbar oft gefälscht und bei Ebay viel günstiger verkauft.
ich habe bei 3 Bestellungen von LED Matrixmodulen mit MAX7219 auch 3 verschiedene Varianten sowohl von den Maxen als auch den LED Modulen bekommen, funktionieren zum Glück trotzdem alle. Die Zahl der Fälschungen oder Nachbauten nimmt subjektiv aber deutlich zu.
Vielen Dank für die Antworten. H.Joachim S. schrieb: > So siehts übersichtlicher aus :-) > Und nimm lieber den MAX7221. Ich möchte lieber einzelne Leds und keine 8er, da ich sie besser aufteilen kann und an beliebige Positionen Platzieren kann. Ich möchte später meine Displayanzeige mit MobiFlight konfigurieren, von daher weiß ich leider nicht, ob MobiFlight den Chip MAX7221 unterstützt. Timo N. schrieb: > H.Joachim S. schrieb: >> Und nimm lieber den MAX7221. > > Pass aber auf. Nur bei renommierten Distributoren bestellen (Mouser, > TME, Reichelt, Digikey, Farnell...) und nicht bei Ebay. Die MAX7221 > (vermutlich auch MAX7219) werden scheinbar oft gefälscht und bei Ebay > viel günstiger verkauft. Ich Danke Dir. Ich habe gestern bereits 2er Set bei Amazon bestellt, nur erstmal zum testen: [[https://www.amazon.de/gp/product/B06XKVL4PH?ref=ppx_pt2_dt_b_prod_image]] Ich werde es dann einfach mal testen und vielen Dank nochmal für die Antworten. Gruss
Chris F. schrieb: > von > daher weiß ich leider nicht, ob MobiFlight den Chip MAX7221 unterstützt. Wer ist MobiFlight, weiß ich leider nicht. Aber SPI kann mit beiden arbeiten. Mit MAX7219 kann ein Problem kommen, aber nur dann, wenn in der Schaltung und im Programm möglich ist, daß ~CS Impuls bekommt, ohne unmittelbar vorher 2 Bytes für MAX7219 übertragen werden. Falls nicht, ist 7219 sogar etwas besser, da mehr Stufen für Lichtstärke möglich. Das Problem mit MAX7219 kann man aber mit 1/2 von 74HC02 beheben.
:
Bearbeitet durch User
Danke Dir. MobiFlight ist ein Programm für Flugsimulatoren, mit der man bestimmte Geräte hinzufügen kann und viele Sachen selbst konfigurieren kann. Über das Programm wird eine Firmware von MobiFlight auf das Controllerboard hochgeladen. Von daher weiß ich nicht, ob die Firmware von MobiFlight einen anderen Chip unterstützt, für die Segment-Display Anzeige. Mehr dazu unter: https://www.mobiflight.com/de/index.html Ich habe da noch eine Frage: Brauche ich für jeden weitere MAX7219 2 zusätzliche Kondensatoren bzw. größere Werte, diese ich zwischen +5V und GROUND schalte? Oder reichen die 2 Kondensatoren (100nF und 10µF), wenn ich mehrere MAX7219 auf einer Platine verwende, diese ich dann zusammen koppel? Ich habe das ganze auf einem Steckbrett aufgebaut "mit 2x MAX7219 und 2x 7 Segment 4 Digit" und getestet, es funktioniert einwandfrei. Nur möchte ich wissen, ob die Kondensatoren reichen oder ob ich lieber etwas größere nehmen sollte? Ich bedanke mich schon mal für die Hilfe. Gruss
Chris F. schrieb: > Ich habe da noch eine Frage: > Brauche ich für jeden weitere MAX7219 2 zusätzliche Kondensatoren bzw. > größere Werte, diese ich zwischen +5V und GROUND schalte? > Oder reichen die 2 Kondensatoren (100nF und 10µF), wenn ich mehrere > MAX7219 auf einer Platine verwende, diese ich dann zusammen koppel? Nimm die Kondensatoren, die auch im Datenblatt des MAX7219 vorgeschlagen werden. Da es Bypass-Kondensatoren sind, brauchst du natürlich je einen direkt an den Pins VCC / GND bei jedem MAX7219. Es reichen nicht nur 2 (100nF und 10µF).
Chris F. schrieb: > Brauche ich für jeden weitere MAX7219 2 zusätzliche Kondensatoren bzw. > größere Werte, diese ich zwischen +5V und GROUND schalte? > Oder reichen die 2 Kondensatoren (100nF und 10µF), wenn ich mehrere > MAX7219 auf einer Platine verwende, diese ich dann zusammen koppel? 100n sollte in der Nähe von jeder IC stehen, 10u reicht einmal für mehrere.
Auf dem Bild ist Alice Cooper. Nicht Ozzy Osbourne! Und schon gar nicht Cher!
Vielen Dank für die Antworten. Veilchenpastillenlutscher schrieb: > Auf dem Bild ist Alice Cooper. Nicht Ozzy Osbourne! Und schon gar nicht > Cher! Was genau meinst Du? Gruss
Ich kann dich beruhigen, ich hab rund 60 MAX7219 aus China (div. 20er Pack für 6-8€ und 50er Pack für ~15€ aus verschiedenen Quellen) in Betrieb und die funktionieren alle ohne Probleme
Crazy H. schrieb: > Ich kann dich beruhigen, ich hab rund 60 MAX7219 aus China (div. 20er > Pack für 6-8€ und 50er Pack für ~15€ aus verschiedenen Quellen) in > Betrieb und die funktionieren alle ohne Probleme Ich kann das so nicht bestätigen. Es gibt Exemplare bei Aliexpress wo der Decode Mode Register um eine Stelle verschoben ist. (0->1, 1->2, usw.) Solange man die IC nur für 7-Segment Anzeige oder nur für Led Matrix verwendet, es fällt nicht auf. Habe aber in einem Projekt die Digits 0-3 als 7-Segment Decoder, Digit 4 für 8 LEDs für Bargraph ohne Dekodierung gebraucht. So habe ich diesen Fehler entdeckt. Interessanterweise habe ich das Geld ohne Widerstand seitens des Verkäufers zurückerstattet bekommen. Er wusste offensichtlich bescheid darüber.
Ich hatte mal ein Problem, daß MAX7219 ab und zu Ziffer zeigt, die nicht erwünscht sind. Das Problem lag daran, daß ~CS für MAX7219 mit 74HC138 gemacht wurde und A0-A2 nicht auf einem Port lagen. Deshalb wurden Adresse-Pins mit cbi-sbi umgeschaltet, und gelegentlich ging eine Kombination durch, so daß MAX7219 ~CS-Impuls bekommen hat, und vorher wurden die Daten über SPI für andere IC geschickt. D.h. ab und zu kann es von Bedeutung sein, daß MAX7219 nicht vollständig SPI-kompatibel ist. Mit MAX7221 kommt das Problem nicht vor. Man kann aber das Problem mit 1/2 von 74HC02 beheben.
@Ozvald K (Gast): Danke für die Info. Ich verwende den Decoder nicht.
Vielen Dank für die Infos. Ich habe mir den MAX7219 erstmal zum testzwecken gekauft. Später, wenn meine Schaltung fertig ist, werde ich mir dann eventuell den MAX7221 kaufen. Gruss
Chris F. schrieb: > Vielen Dank für die Infos. > Ich habe mir den MAX7219 erstmal zum testzwecken gekauft. Wenn nur für eine Probe, dann gibt es bei Amazon und Ebay verschiedene Module. Es gibt ein Modul mit 8 7-Segm.Ziffer, es gibt ein Modul mit 32x8 Punktmatrix, dort sind 4 X Max7219 seriell geschaltet. Blöd nur, daß die "Säulen" dort horisontal platziert sind, deshalb muß man umkodieren, wenn man Zeichen kleiner als 8 P.breit will. Bei mir klappte das mit solch riesigen Funktion:
1 | void max7219_sendbuf(void){ // gibt max7219_buf zu LED-Matrix |
2 | |
3 | for(u8 i=0;i<8;i++){ |
4 | spi_intern_start(); |
5 | for(u8 x=0;x<4;x++){ |
6 | u8 temp = 0; |
7 | spi_send(i+1); |
8 | if (max7219_puffer[(3-x)*8] & (1<<(7-i))) temp |= (1<<0); |
9 | if (max7219_puffer[(3-x)*8+1] & (1<<(7-i))) temp |= (1<<1); |
10 | if (max7219_puffer[(3-x)*8+2] & (1<<(7-i))) temp |= (1<<2); |
11 | if (max7219_puffer[(3-x)*8+3] & (1<<(7-i))) temp |= (1<<3); |
12 | if (max7219_puffer[(3-x)*8+4] & (1<<(7-i))) temp |= (1<<4); |
13 | if (max7219_puffer[(3-x)*8+5] & (1<<(7-i))) temp |= (1<<5); |
14 | if (max7219_puffer[(3-x)*8+6] & (1<<(7-i))) temp |= (1<<6); |
15 | if (max7219_puffer[(3-x)*8+7] & (1<<(7-i))) temp |= (1<<7); |
16 | |
17 | spi_wait(); |
18 | spi_master_transmit(temp); |
19 | }
|
20 | |
21 | spi_intern_stop(); |
22 | } // 4723 c 590,38 us |
23 | |
24 | }
|
Danach habe ich ein eigenes Modul entworfen, wo die Säulen physisch vertikal sind. So spart man 590 us (wenn F_CPU = 8 MHz)
:
Bearbeitet durch User
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.