Hallo, Ich habe eine simple Schaltung mit einem 8-bit Schieberegister aufgebaut. 8 LED's sind an das Schieberegister angeschlossen ( Die Schaltung dient nur zum Experimentieren). Als Controller dient ein Arduino UNO (ATmega 32). Das Problem: Wenn sich am Controller kein Programm im Speicher befindet blinken die LED' s willkürlich, wobei die oberen Bits mit einer höheren Frequenz blinken als die unteren ( Das 0-bit leuchtet dauernd). Ich kann mir beim besten Willen nicht vorstellen, dass dies der Regelfall sein soll( Lasse mich gerne etwas Besseren belehren). Auch bei der Übertragung der Daten auf den Controller blinken die LED's. Wenn ich ein fertiges, funktionierendes Programm (z.B.: 8 bit Counter) auf den Controller lade, hängt sich dieses des Öfteren auf. Manchmal stoppen die LED's und laufen nach einiger Zeit weiter, oder man muss den Controller Resetieren um das Programm wieder laufen zu lassen. Habe auch schon mehrere Schieberegister probiert, um den Fall auszuschließen, dass das Schieberegister defekt sein könnte. Schieberegister: 74HC595 Ich hoffe es kann mir jemand helfen. Mit freundlichen Grüßen Gabriel Staudinger
Gabriel Staudinger schrieb: > Ich kann mir beim besten Willen nicht vorstellen, dass dies der > Regelfall sein soll( Lasse mich gerne etwas Besseren belehren). floating inputs => undefinierter Zustand Das sind CMOS-Eingänge, die fangen sich irgendwas aus der Umgebung ein und benutzen das als Takt und Daten.
Habe die Lösung gefunden. 10k Ohm Widerstände parallel zu der Daten ,- Clock leitung.
Gabriel Staudinger schrieb: > Wie lassen sich diese "floating -inputs" eliminieren? Floatende Eingänge legt man auf Masse oder Vcc. Betriebsmäßig benutzte Eingänge lässt man einfach nicht floaten. Dann kannst du dir auch den Querstrom für die Pullwiderstände schenken.
Wie lässt man sie nicht floaten? Ich kann ja die Daten, bzw Clockleitungen nicht auf Masse oder Vcc legen.
Warum schaltest du die Ausgänge nicht erst durch, wenn dein Programm vernünfitig läuft? #OE kann helfen. Und, der Baustein hat einen Reseteingang.
Gabriel Staudinger schrieb: > Wie lässt man sie nicht floaten? Indem du sie in der Initialisierungsphase der Firmware als Ausgang konfigurierst. Damit haben sie dann immer ein definiertes Potenzial. Dass sie während des Reset mal floaten, ist in den meisten Fällen tolerierbar.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.