Go Down

Topic: leds am schieberegister blinken (Read 509 times) previous topic - next topic

Satzende

Hallo

ich habe 3 schieberegister(CD74HCT164E) in reihe geschaltet und steuere so 24 LEDs.
Aber immer wenn ich die bits neu schiebe, blitzen die anderen für einen moment auf.
Jemand eine idee wie man das beheben kann ?

Arduino Uno

michael_x

Bin kein Experte, aber :

Ein 595 anstelle des 164 hätte einen Latch - Eingang ...

Vielleicht hilft ein schnellerer Takt ein wenig.

volvodani

So lange du keinen Latch hast werden die LED immer blinken. Du kannst die Schieberegister auch mit dem SPI benutzen also anstatt ShiftOUt(). SPI.transfer nutzten (musst aber dann auch an die SPI Schnitstelle Pin 10-13)
Clock des Register(SCK) an 13
Data In des Registers(MOSI) an 11
die anden SlaveSelect und MISO (Pin12) brauchst du nicht,

damit bist du um einiges schneller da der SPI bis zu halben Systemtakt arbeitet


Gruß
Der Dani
So ist das Leben:
Manchmal bis du das Denkmal, manchmal die Taube!

Transistorfips

#3
Sep 13, 2013, 08:06 pm Last Edit: Sep 13, 2013, 08:15 pm by Transistorfips Reason: 1
>Vielleicht hilft ein schnellerer Takt ein wenig.
Hihi. Ja - man muß so schnell eintakten, daß die Leds so träge werden, daß sie nicht mehr schnell genug einschalten können. Das sollte so ab etwa 2MHz funktionieren...



Ok. Jetzt zum Ernst der Sache:
Schau dir mal das Datenblatt zum '164 an. Dort findest du eine Wahrheitstabelle - schau sie dir ganz genau an. In ihr sind alle relevanten Kombinationen dargestellt sind.

Wenn du Pin 8 (/CLEAR) auf high legst während du die Daten auf die fallende Flanke eintaktest dann ändern die Ausgänge ihre Pegel nicht.

Allerdings hätte ich wie ein Vorredner schon vermerkt, ebenfalls einen '595 genommen. Kostet bei Reichelt ein paar Cent. Bei denen ist Schiebe- und Speicherregister sauber getrennt. Und Abschalten kann man die Ausgänge auch noch.

Go Up