Moin!

Ich habe acht 74hc595 Schieberegister auf eine Testplatine gelötet und verkabelt. Alle Spannungen an den Beinen der Chips wurden von mir überprüft. Die Chips werden mit 5v von einem alten Computernetzteil versorgt und wurden nicht kaskadiert (jeder Chip hat eigene Datenleitung).

Um die Schaltung zu testen, habe ich ein c Programm für den Arduino geschrieben. Mit diesem Testprogramm kann ich vier Chips einzeln ansteuern oder eine beliebige Bitfolge senden.
Das Problem ist, dass ich nur jeden Chip einzeln ansteuern kann. Sobald ich alle Datenleitungen auf 5v stelle, also an alle ein high Signal sende, wird 0v ausgegeben. Wenn ich nur ein oder zwei Datenleitungen gleichzeitig aktiviere kann ich problemlos jede Bitfolge übertragen. Es ist dabei egal, welche vier der acht Chips ich probiere, das Verhalten bleibt gleich. Es ist auch egal, in welcher Geschwindigkeit die Daten gesendet werden: Neben Tests mit einer Sende-Funktion habe ich Schritt für Schritt die Bits gesetzt und dabei die Spannungen am Chip überprüft. Es ist im Fehlerfall alles wie es sein soll, nur dass trotz Si=5v ein low Pegel in das Register gespeichert wird (wenn vorher noch high Pegel im Register vorhanden waren, bleiben diese erhalten, bis sie "weggeshifted" wurden).

Ich bin natürlich die ganze Zeit auf der Suche nach Fehlern auf der Platine, konnte aber bisher nur eine Fehlverbindung ausmachen, die mein Problem scheinbar nicht beeinflusst hat.

Hat jemand eine Idee, was der Grund für solch ein Fehlverhalten sein kann, ich bin ziemlich ratlos...

Beste Grüße,
Ofenrohr