Hallo,
ich habe 2 MAX7219 und wollte diese kaskadiert ansteuen.
Das Ansteuen von einem geht problemlos, leider das kaskadieren nicht.
Nach dem Initialisieren sollte jeweils das °C zu sehen sein.
Source hängt an.
Die Verschaltung ist wie im Datenblatt DOUT1>>DIN2.
Das senden der Daten wurde nur verdoppelt.
Ich danke euch für eure Unterstützung.
Grüße Klaus
Hallo,
was genau funktioniert denn nicht? Zeigt der erste denn richtig an? Oder
der zweite? Oder keiner?
Ich hab das mit 28 Stück am Laufen und das klappt super. Alles nach
Datenblatt gemacht, passt.
Zeig mal die Schaltung, das könnte helfen.
Hallo und Danke.
@ Teo: ich habe 2 x 100µ in die Spannungsversorgung eingebaut, leider
nix.
@ Thomas: beim ersten (man nächsten am MC) leuchten alle Segmente bei
allen Stellen und am 2. 7&8 Stelle richtig 6. Stelle (L.) .
Das ganze ist im Moment noch mit einem Steckbrett zusammengesetzt.
Die MAX7219 sind auf Modulen mit je 2x4 7Segmentanzeigen.
Die Brücken hab ich mehrfach kontrolliert. Mit einem geht es ja.
Danke & Grüße Klaus
Schau mal meinen alten Thread an:
Beitrag "Tempertur/Feuchte Display/Logger mit ATMega128 SHT75 SD-Karte"
Dort habe ich einen Temp/Feuchte Logger gebaut. In dem Thread hat dann
ein anderer User seinen Aufbau mit zwei kaskadierten MAX7219 gepostet.
Ev. findest Du da einen Hinweis auf Dein Problem.
Noch was zu den MAX7219. Ich kann mich noch erinnern, dass die Dinger
ziemlich empfindlich sind, was die Leitungslängen anbelangt, also die
Verbindung vom Processor zum MAX7219. Wenn die zu lang sind, gibt es
komische Effekte.
Daniel B. schrieb:> Ich kann mich noch erinnern, dass die Dinger> ziemlich empfindlich sind, was die Leitungslängen anbelangt, also die> Verbindung vom Processor zum MAX7219. Wenn die zu lang sind, gibt es> komische Effekte.
Eher, wenn sie nicht korrekt terminiert sind. Insbesondere, wenn die
Taktleitung spinnt. Das kann man aber mit einem Oszi messen...
Im Beitrag "Re: Serienwiderstand bei Hochfrequenz" und im
Beitrag "Re: Signalproblem bei langem Kabel" gibt es ein paar
Beispiele dazu.
Klaus H. schrieb im Beitrag #5072177
> Das ganze ist im Moment noch mit einem Steckbrett zusammengesetzt. Die> MAX7219 sind auf Modulen mit je 2x4 7Segmentanzeigen.
Sind das diese <2€ ebay-Module? Die haben Cs drauf, da mußt dir keine
Sorgen machen. Wenn ich jetzt C könnte .....
Hab erst ein Display 4x16 mit 8 MAX7219 gebaut und keine Probleme.
Crazy H. schrieb:> Sind das diese <2€ ebay-Module? Die haben Cs drauf, da mußt dir keine> Sorgen machen. Wenn ich jetzt C könnte .....> Hab erst ein Display 4x16 mit 8 MAX7219 gebaut und keine Probleme.
Und die hast Du über SPI angesprochen ? Bei mir ging damals SPI
irgendwie nicht (kann aber auch an mir gelegen haben...).
Habs dann von Hand programmiert, vorallem da im Datasheet auch noch
steht, dass nur der MAX7221 SPI konform sei.
Daniel B. schrieb:> Crazy H. schrieb:> Sind das diese <2€ ebay-Module? Die haben Cs drauf, da mußt dir keine> Sorgen machen. Wenn ich jetzt C könnte .....> Hab erst ein Display 4x16 mit 8 MAX7219 gebaut und keine Probleme.>> Und die hast Du über SPI angesprochen ? Bei mir ging damals SPI> irgendwie nicht (kann aber auch an mir gelegen haben...). Habs dann von> Hand programmiert, vorallem da im Datasheet auch noch steht, dass nur> der MAX7221 SPI konform sei.
Ja hab ich. XMega256A3U @ 64MHz mit Hardware SPI.
Hallo zusammen,
Danke für eure Hilfe :-)
Nun das mit den Blockkondensatoren... ich bitte um Entschuldigung.
Die Pause des Bastelns war dann doch größer.
Das mit den Signalen werde ich prüfen. Ich habe einen Logikanalysator
bemüht...Ich sehe die Probleme :-)
Ich werde das jetzt anpassen und noch mal testen. Bis später.
Hallo,
testen testen testen.. lesen und probieren...
irgendwie ist der Wurm drin!
Ich hab in der Sendefunktion ein anders Portpin gewählt.
PORTD &= ~( 1 << PD3 ); // PIN PORTD3 Löschen
nachdem senden wieder hoch:
PORTD = ( 1 << PD3 ); // PIN3 PORTD setzen
Manchmal klappt es... leider nicht immer.
Ich hab schon alles ausprobiert, jetzt noch das PIN mit einem
Abschlußwiederstand versehen.
Ich hoffe, es hat jemand eine Idee?
Grüße Klaus
Hallo zusammen,
Fehler sind gefunden!
Ich hatten den ATMEGA auf einem kleinen Programmerboard mit
Textoolfassung gesteckt und die Displays mit Kabeln auf ein Steckbrett.
Ich weiß nicht warum, daher kamen die Nadelimpulse auf den CS Signal.
Einen anderen Fehler hab ich auch noch gefunden:
adr1=0x0C; adr2=0x0C; dat1=0x01; dat2=0x00; // Normal Operation
Das dat2 = 0x00;(richtig wäre 0x01) ist falsch so das der 1.MAX7219
dunkel geblieben ist.
@Crazy H.: danke für deine Realisierung, damit wusste ich das es geht
muss.
Manchmal zählt der Ansporn ;-)
Danke