PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : 74HC165 kaskadieren



Felix H.
14.07.2010, 22:48
Hi,

ich habe dre 74HC165 nach folgendem Muster kaskadiert:

http://www.mikrocontroller.net/wikifiles/a/a7/74xx165-2.png

Als ich nun das Programm schreiben wollte, ist mir aufgefallen, dass diese verschaltung gar nicht funktionieren kann! Die CE Pins von jedem IC müssten an den µC geführt sein. Ansonsten schiebe ich mit jedem Takt an CLK ja auch das erste Schieberegister weiter und der Eingang "DS" wird nichtmehr zum Q7 durchgeschleift.

Sehe ich das richtig oder gibts da eine möglichkeit?

Michael
14.07.2010, 23:31
Hallo Felix.H,


Sehe ich das richtig oder gibts da eine möglichkeit?
das ist schon richtig, /CE heißt nichts anderes als Chip enable und ist Low aktiv.

Mit einem Low-Impuls an PL liest du die Daten ins Latch und mit 16 Clocks schiebst du sie nach DIN durch. Ab dem 17. Clock liegt an DIN nur noch Low an weil DS von IC1 auf GND liegt.
Wenn der PL-Puls vorbei ist, also wieder High, dann dürfen schon wieder neue Daten an die Eingänge gelegt werden für die nächste Runde.

Gruß, Michael

Felix H.
14.07.2010, 23:37
ok, das bedeutet dieser schaltplan ist absoluter quatsch und kann so nicht funktionieren... -.-

Michael
14.07.2010, 23:54
Hallo Felix.H,


ok, das bedeutet dieser schaltplan ist absoluter quatsch und kann so nicht funktionieren... -.-
hmm, wie kommst du darauf? Die Jungs im µC.net sind nicht blöd. Und ich kann da auch keinen Fehler finden.
Was willst du denn hören?

Gruß, Michael

Kampi
15.07.2010, 08:08
mmh was soll den das für eine Schaltung werden?

Felix H.
15.07.2010, 11:47
Das ist eine Eingangserweiterung.

Dann sag mir bitte wie das funktionieren soll... Ich lade mit PL die daten ins Schieberegister. So, dass heisst an beiden IC´s ist der Pin DS am Ausgang Q7 durchgeschleift.

Mache ich nun den ersten Takt an CLK schieben beide Register eins weiter. Sprich D0 liegt jetzt am Ausgang Q7 an. Damit ist das obere Register vom unteren abgeschnitten und es können keine weitere Daten vom oberen Register durchs das untere durchgeschleift werden (DS ist ja nichtmehr zu Q7 verbunden!).

Das es funktioniert müsste der CE Pin des unteren IC´s mit in dem µC verbunden sein und so lange High bleiben (Takte am CLK werden ignoriert) bis ich das komplette obere IC ausgelesen habe.

Verstehst du jetzt was ich meine?

PICture
15.07.2010, 12:19
Hallo!


So, dass heisst an beiden IC´s ist der Pin DS am Ausgang Q7 durchgeschleift.

Wie der Michael meint, ist die Schaltung völlig i.O. Leider verstehst du die Funktionsweise noch nicht ausreichend um für sie ein Programm zu erstellen. :(

MfG

Felix H.
15.07.2010, 13:20
Ich verstehe die funktion sehr wohl.

mit PL die Daten ins Register laden, mit CLK die Daten nach und nach an den Ausgang Q7 schieben. Geht ja umgekehrt wie beim 74HC595. Den habe ich ja auch programmiert bekommen.

Vllt. erklärt es mir mal jemand? Meiner Ansicht nach kann und wird es so nicht funktionieren. Oder hat jemand von euch das genau so schon aufgebaut und es geht?

Besserwessi
15.07.2010, 17:52
Das sollte so schon funktionieren:
Über den Puls an PL werden die Eingangsdaten in das Schieberegister geladen. Danach werden diese Daten mit jeden Takt vom CLK einen weiter geschoben. Die Verbindung vom oberen Chi zum unternen sorgt gerade dafür, das die Daten auch von oben nach unten weitergegeben werden. Die Daten die der obere Chip ausgibt landen also unten im Schieberegister zu D0.

Der /CE pin ist nur eine Verknüpfung mit dem Taskt Signal. Wenn /CE auf high ist, wird der talt ignoriert - das brauchen wir hier aber nicht.