Fast richtig.1. Noch kein Takt-Signal erfolgt wenn Dateneingang auf 1 gesetzt wird, ist auch auf Pin 1 des Registers dann immer Strom, ich Schalte durch die Registerstellen mit 101010101 usw immer bei 1 Schalte ich 1 weiter und setze das Register neu. Der Wert des Registers in das ich schreibe wird in das nächste übertragen ? (ist glaub ich auch nicht so gut, wenn die Werte weitergeschoben werden.)
Du legst also eine 1 auf den Eingang, an den Ausgängen passiert noch nichts.
Jetzt gibst Du einen Taktimpuls auf den Takteingang des Schieberegisters.
Jetzt erscheint die 1 am Ausgang 1.
Nun legst Du beispielsweise eine 0 an den Eingang.
Da passiert noch nichts.
Jetzt gibst Du wieder einen Taktimpuls auf die Taktleitung.
Die 1 von Ausgang 1 wird auf Ausgang 2 weitergeschoben und die 0 vom Eingang wird auf den Ausgang 1 erscheinen.
So geht das weiter bist alle z.B. 8 Datenbits eingelesen sind.
Wie Du richtig erkannt hast werden die einzelnen Bits vom niederwertigsten Ausgang 1 bis zum höherwertigsten Ausgang 8 durchgeschoben - drum heisst das Ganze ja auch Schieberegister. Da das erscheinen der Bitinformationen auf den einzelnen Ausgängen ja sehr unschön ist hat man das Latch erfunden.
Auch hierbei werden die Bits durch das Schieberegister durchgeschoben, aber die jeweiligen Bits werden erst Dann auf die Ausgänge durchgeschaltet, wenn das Latch aktiviert wird (LE).
Bis zu diesem Zeitpunkt bleiben die Ausgänge der vorherigen Einstellung aktiv(Also die vom letzten Latch Enable). Also eigentlich genau das was Du brauchst.
Bei einer Relaisschaltung wäre zwar ein Latch nicht unbedingt nötig, bis das Relais anspricht oder abfällt ist die 1 bzw. 0 schon lange auf den nächsten Port weitergewandert. Du musst dann allerdings Programmmäßig dafür sorgen, das die komplette Information zügig in das Schieberegister eingelesen wird.
In einer Halbleiteranschlusstabelle sollte sich mit Sicherheit ein passendes Schieberegister finden lassen. Eventuell kenn ja auch jemand aus dem Forum hier was passendes.
Lesezeichen