Forum: Mikrocontroller und Digitale Elektronik hct595 Kaskadierungproblem


von Max M. (max_m75)


Lesenswert?

Hallo,
ich habe schon öfters mit hct595 gearbeitet und nie Probleme gehabt nur 
habe ich jetzt ein Phänomen was ich nicht verstehe.
Erstmal der Aufbau:

Hinter einem MSP430-2012 hängen 5 x 595er. Dabei hängen SHCP,STCP und DS 
vom 1. am MSP wobei SHCP,STCP aller MSP Parallel geschalten sind.
OE, MR sind fest verlötet.
Der 2. 595er hängt am Q7' des 1. usw

Mein Problem ist wenn ich jetzt 8Bit in den ersten 595er schiebe und 
danach ein Storage mache habe ich das Q7 gleichzeitig im Q0 des 
nächsten.

Als Beispiel wenn ich 0xff in den ersten Schiebe dann sieht es nach 8 
Shifts und anschließendem Storage so aus:

1.595                       2-595
Q0_Q1_Q2_Q3_Q4_Q5_Q6_Q7_Q7' Q0_Q1_Q2_Q3_Q4_Q5_Q6_Q7_Q7'
1   1  1  1  1  1  1  1  1   1  0  0  0  0  0  0 0   0

Mir ist im Timing Diagram des 595 aufgefallen, das Q7' schon bei der 
fallenden Flanke von STCP gesetz wird, aber das kann bei mir ja nicht 
sein, da ich erst alle 8bit shifte und sie dann gemeinsam storage.

Könnte es ein Timing Problem sein? Im Moment fahre ich das alles noch 
ohne delays, da ich die bis jetzt nie gebraucht habe (MSP430 ohne Quarz, 
sollte so bei 12khz liegen)

Mir gehen langsam die Ideen aus ?!

mfg

von Klaus (Gast)


Lesenswert?

Vielleicht findest du ja hier einen Tip

http://www.mushroo.me/voxel-sheild

MfG Klaus

von Max M. (max_m75)


Lesenswert?

Ich habe mir sowohl die HW wie auch die SW angeschaut und kann keine 
Besonderheiten erkennen, die eine Verbesserung im Vergleich zu meinem 
Aufbau bringen könnten

von Peter D. (peda)


Lesenswert?

Entweder Software oder Layoutproblem.

Ich hab 21 Stück kaskadiert, ohne Probleme:

Beitrag "Re: Programmer mkII gibt auf"


Peter

von Max M. (max_m75)


Lesenswert?

Software schließe ich eigentlich aus, da sie auf anderer HW gut läuft.
Ich werde Sie später hier einfach posten, ist minimalistischen 
BitBanging.

Layout:
Ist halt ein Lochrasteraufbau, Leitungslänge Maximal 10cm. Und die 595er 
hängen direkt an den Pins, also kein SPI oder so.

von Dietrich L. (dietrichl)


Lesenswert?

Mit welcher Spannung betreibst Du die HCT595? HCT braucht 4,5...5,5V.

Gruß Dietrich

von Peter D. (peda)


Lesenswert?

Max M. schrieb:
> Mein Problem ist wenn ich jetzt 8Bit in den ersten 595er schiebe und
> danach ein Storage mache habe ich das Q7 gleichzeitig im Q0 des
> nächsten.

Nö.
Du schiebst ja nur ein Byte ein, d.h. Dein 2. Q0 wurde irgendwann vorher 
reingeschoben.

Wenn Du 5 SRG kaskadiert hast, mußt Du auch immer 5 Byte reinschieben 
und dann erst latchen.


Peter

von Max M. (max_m75)


Lesenswert?

@ Dietrich Vcc ist 5V nur die Inputs sind 3.3V, wobei cih eigentlich 
HC595 wollte - Sorry Schreibfehler - Ich schaue daheim mal nach, ob sie 
die falschen ausgelifert haben. Andererseits haben die auch schon an 
3.3V funktioniert...

@Peter
Wieso die vollen 5 Byte -also ich werde es testen,
aber nach meinem Verständnis, liegt nach dem 8.shift an D7' zwar ein 
High und damit auch am DATA IN des 2. 595er, aber es fehlt ihm ja noch 
der shift um es in das Q0 des 2. 595er zu shiften ?

Danke für die Anregungen - ich werde Testen und Berichten...

von Karl H. (kbuchegg)


Lesenswert?

Max M. schrieb:

> aber nach meinem Verständnis, liegt nach dem 8.shift an D7' zwar ein
> High und damit auch am DATA IN des 2. 595er, aber es fehlt ihm ja noch
> der shift um es in das Q0 des 2. 595er zu shiften ?

Aber nur, wenn das SR nach dem Einschalten auf 'alle Bits 0' war. 
Ausgehen würde ich davon aber nicht.

Ausserdem ist das sowieso ein 'Streit um des Kaisers Bart', denn du 
wirst ja nicht 5 Stück SR kaskadieren um dann 4 überhaupt nicht zu 
benutzen. Um daher 1 Ausgabebit (egal welches) zu verändern, bleibt dir 
damit sowieso nichts anderes übrig als alle 5 Bytes rauszutakten und 
damit ist es dann egal wie die SR nach dem Einschalten standen.

von Max M. (max_m75)


Lesenswert?

Danke nochmal an Alle!

Wieder erwarten hatte ein HW Fehler seine Finger im Spiel.

Ich habe es jetzt so gelöst, dass ich erst alle 5byte shifte und dann 
latche. Hatte es vorher nur anders, da ich auch mit einzelnen gearbeitet 
habe und deshalb habe ich es einfach übernommen.

Ich habe mir die Lötstelle bestimmt vorher 5mal angeschaut, aber nach 
dem Durchmessen musste der Fehler in HW liegen. Das tükische, es war 
kein Kurschluss - daher beim Piepen nicht aufgefallen :(

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.