Forum: Mikrocontroller und Digitale Elektronik Schieberegister


von Andy (Gast)


Lesenswert?

Hallo allerseits

Ich habe eine kurze Anfängerfrage:

Kann ich das Schieberegister HEF4094BP auch als Porterweiterung nutzen?
Ich weiß, dass es für ein Byte reicht, aber ich möchte es als Word
nutzen. D.h. ich möchte 2x 4094 kaskadieren. Hab ich auch probiert,
doch wenn ich ein Word raussende, kommt es an beiden 4094er gleich
raus.

Kann mir vielleicht irgendjemand helfen, das Ding korrekt
anzusprechen.

Vielen Dank!!!!


PS: Ich benutze einen ATMega8 mit Bascom. Die Schieberegister steuer
ich über SPI an!

Mfg
Andy

von Mike (Gast)


Lesenswert?

Ich tippe auf falschen Anschluss :-)

Für eine genauere Hilfe empfehle ich zu verraten, wie das ganze
angeschlossen ist und wie das Programm aussieht.

von Roland (Gast)


Lesenswert?

Poste mal den Schaltplan.

von Andy (Gast)


Lesenswert?

Also:

Mosi liegt auf Data in, Sck des uC auf Clock des 4094ers und SS vom uC
habe ich als Ausgang definiert und steuere damit Strobe an. Den
Enable-Pin des 4094ers nutze ich als Dimmeingang(PWM).

Im Programm habe ich eine Variable (Word). Mittels Spiout sende ich sie
raus und setze den Strobe-Pin, den ich auch gleich wieder resete.

Passt das so einigermaßen?? Den Schaltplan kann ich leider nicht
posten, weil ich alles auf einer Lochrasterplatine habe.

Danke für Eure Hilfe!!

von Klaus (Gast)


Lesenswert?

Du musst die (beiden)Schieberegister kaskadieren,
hintereinanderschalten.
Vom uP auf Din des 1. SR, und von dessen internem obersten Ausgangsbit
(das ist Pin 9 beim 4094) weiter auf den Din des 2. SR  .
Nur so geht das ; dann 16 x schieben (wenn man 2 SR hat), bevor ein
Strobe kommt.
Strobe und Clock der beiden SR sind parallel vom uP angesteuert.
Man kann zusätzlich den Pin 9 des obersten (hier 2.) SR nehmen und als
Eingabepin auf den uP zurückführen ; dann kann man einen "Selbsttest"
machen.
Klaus

von Andy (Gast)


Lesenswert?

@alle:

Vielen Dank für Eure Hilfe!!

Ich habe meinen Fehler schon gefunden. Ich habe bei SPIout vergessen,
dass ich einen 2er hinschreibe:

SPIOUT i, 2

Ich habe statt 2 nur 1 gehabt, somit ist immer nur ein Byte
rausgegangen!

Trotzdem Danke für die rasche hilfe!!


mfg
Andy

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.