Arduino Forum

Forum 2005-2010 (read only) => International => Deutsch => Topic started by: el_kekso on Nov 03, 2009, 06:43 pm

Title: 595 DaisyChain
Post by: el_kekso on Nov 03, 2009, 06:43 pm
Hallo zusammen,
als völliger Neuling habe ich anscheinend ein Verständnisproblem bei der Verwendung von Schieberegistern.
Mein Ziel ist es ein paar 7Segment displays mit gemeinsamer Kathode anzusteuern, dazu habe ich das tutorial Shifting Out & the 595 chip gelesen und mit einem 595 + 7segment funktioniert das auch -
für übermittelte Werte von 1,2,4,8,16... wird je ein Segment abgeschaltet.
Also versuchte ich im nächsten schritt zwei 595er aneinander zu hängen, optimalerweise sollte der zweite auf werte >=256 reagieren.

tatsächlich schaltete schon die 2 auf beiden displays ein segment ab, 4 schaltete gar nichts ab und bei 8 fingen einige segmente an zu blinken...
kann mir jemand auf die Sprünge helfen wo mein Denkfehler liegt?
Title: Re: 595 DaisyChain
Post by: mike_pa on Nov 03, 2009, 08:58 pm
Hallo,

beim zweiten 595 muss der DS EIngang mit dem Q7 Ausgang des ersten 595 verbunden werden. Die Pins SH_CP und ST_CP werden an die gleichen Pins wie die des ersten 595 angeschlossen. Der ST_CP darf dann natürlich erst nach 16 Taktimpulsen angesteuert werden, da ja jetzt 16 Bits in die Schieberegister getaktet werden müssen.

Michael
Title: Re: 595 DaisyChain
Post by: mike_pa on Nov 03, 2009, 08:59 pm
Hallo,

noch ein Hinweis:

die Bits für das zweite 595-Schieberegister müssen zuerst kommen.

Gruß
Michael
Title: Re: 595 DaisyChain
Post by: el_kekso on Nov 04, 2009, 08:56 am
besten Dank,

wenn ich dich recht verstehe zerlege ich meinen Wert also in 8bit-stücke ( da lag der denkfehler ) und schicke sie einzeln durch die 595erkette.
Die Sache mit den 16 Taktimpulsen klingt auch einleuchtend aber dazu muss ich mich an anderer Stelle nochmal schlau machen.
Title: Re: 595 DaisyChain
Post by: mike_pa on Nov 04, 2009, 08:52 pm
Hallo,

eine gute Beschreibung findet sich unter

Code: [Select]
http://www.mikrocontroller.net/articles/AVR-Tutorial:_Schieberegister

Michael