Hallo zusammen,
die Schaltung im Anhang zeigt zwei 74HC595 in Reihe geschaltet, der Code
unten steuert die beiden an.
Das erste Schieberegister verhält sich wie erwartet, beim zweiten sind
alle bits um eins nach "hinten" verschoben, d. h. QB hat das bit,
welches in QA sein sollte.
"SER" im Schaltbild: DataPin, DataPort im Code
"SCK" im Schaltbild: ClockPin, ClockPort im Code
"RCK" im Schaltbild: LatchPin, LatchPort im Code
Einen einfachen Hardwarefehler á la Übersprechen oder Vertauschung halte
ich für unwahrscheinlich, der obere Baustein läuft wie geschrieben
perfekt und eine geringere Geschwindigkeit verändert nichts.
Findet jemand von euch den Fehler?
Vielen Dank
Bernhard
DL1BG
Ich sehe weder im Schaltplan noch im Programm einen Fehler. Deswegen
vermute ich, dass entweder die üblichen Abblock-Kondensatoren in der
Spannungsversorgung fehlen, oder die Takt-Signale nicht sauber (eckig)
genug sind. Optokoppler sind ziemlich träge.
Versuch es mal mit einem Schmitt-Trigger in der Taktleitung.
Die Signale an den Schieberegistern sind in der Tat mehr sinusförmig als
rechteckig. Aber so lange die Pegel passen (3,5 V und 0 V) und der
Phasenversatz nicht zu groß wird, sollte das doch kein Problem sein?
Abblockkonensatoren sind natürlich drin, aber die Teile arbeiten mit 65
mA Gesamtstrom auch nahe an ihrer Lastgrenze.
Bernhard __ schrieb:> Die Signale an den Schieberegistern sind in der Tat mehr sinusförmig als> rechteckig. Aber so lange die Pegel passen (3,5 V und 0 V) und der> Phasenversatz nicht zu groß wird, sollte das doch kein Problem sein?
Die Spannung nicht. Aber die Anstiegszeit. Guck dir im Datenblatt die
"input rise and fall time" an. Mit deinem Sinus hast du zwischen High
und Low undefinierte Zustände. Und zwar für elektronische Ewigkeiten, in
denen der Eingang nicht weiss, was er sein soll und sich folglich etwas
ausdenkt. Denn irgendeinen Zustand muss er ja annehmen.
> Abblockkonensatoren sind natürlich drin, aber die Teile arbeiten mit 65> mA Gesamtstrom auch nahe an ihrer Lastgrenze.
Das ist nicht das Problem.
mfg.
Wenn die Flanken vom Taktsignal nicht steil genug sind, kann es
passieren, dass das Schieberegister merhmals taktet, wo es nur einmal
takten soll. Ich denke, genau das passiert bei Dir.
Gleiche kann auch passieren, wenn die Spannungsversorgung einbricht,
während ein Takt verarbeitet wird. Dann wechselt die Stromaufnahme
mehrfach sehr stark (ist bei CMOS Technologie ganz normal). Die
Schwankungen der Versorgungsspannung wiederum kann verursachen, dass aus
einem gewollten Takt mehrere ungewollte werden.
Der Effekt tritt auch ganz ohne Laststrom auf. Diese
Abblock-Kondenstoren (möglichst direkt am Chip) sind einfach Pflicht.
Und zwar immer und für jeden einzelnen Chip. Gewöhn Dir das an, und Du
erlebst keine Wunder mehr.
Bitte entschuldigt, dass ich mich erst jetzt wieder melde.
Das Problem lies sich lösen, in dem ich wie vorgeschlagen schnellere
Optokoppler verwendet habe. Aber auch die langsamere Ansteuerung
funktioniete, als ich die vorhandene Abblockung durch einen 47 µF Tantal
ergänzt habe. Auf der Vorsorgungsspannung waren vorher Einbrüche von ~80
mV beim Schalten.
In der nächsten Version kommen dann beide Maßnahmen und eine potentere
Ansteuerung drauf.
Vielen Dank euch allen!
Bernhard
Eine eigene Frage?
Dieser Thread ist über 13 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.