Uhr mit Arduino bauen - Troubleshooting

Logik-IC's möchten einen Abblockkondensator über der Betriebsspannung "sehen", der kurze Spannungseinbrüche beim Schalten abpuffert. Die verteilten IC's mit über 10cm Drahtverhau sind ebenfalls mehr als suboptimal.
Die Länge der LED Zuleitungen ist weitestgehend rille. Besser wäre es gewesen, du hättest die IC's nahe beieinander auf Lochraster gezimmert und den Arduino gleich dazu und das so kurz, wie es geht, verdrahtet. Nun, da das Kind quasi ins Wasser gefallen ist, versuche folgendes:

  • über die 595'er ein 100nF Keramikkondnesator so kurz wie irgend möglich, am besten huckepack aufs IC
  • zum 100n parallel noch einen 47µF Elko, der darf ruhig 2-3 cm weg sein. Normalerweise langt ein Elko für 4-6 IC's, aber bei deinen langen Leitungen rate ich zu einem pro IC.
    Und dann noch ein 1000µ Elko über die 5V, wo sie reinkommen. Ein langes USB Kabel ist einer stabilen Versorgung eher abträglich, denn die Pufferelkos sitzen entweder am USB Port oder bei einem Steckernetzteil im Netzteil. Eine 2m oder längere Zuleitung wirkt wie eine kleine Drossel.
  • löte zum Testen statt des 91 Ohm Widerstandes erst mal welche mit 1 KOhm ein. Dann ziehen die LEDs nur 1/10 des eigentlichen Stromes und du kannst probieren ob es prinzipiell funktioniert und weiter optimieren und dich rantasten
  • verwende statt des USB Ports eine 5V "Wandwarze" mit 1 oder 2A Ausgangsstrom. Die geht nicht so schnell in die Knie, wie der USB Port, der eventuell auch als Störenfried in Frage kommt.
  • auch die langen Leitungen für Takt usw. sind suboptimal. Die Eingänge sind sensibel auf Impulse von ein paar Nanosekunden Länge. So eine Drahtschleife kann sich aus der Luft alles möglich einfangen, was dder Arduino nie gesendet hat, das Schieberegister aber liest. Sowas kann gut gehen, muß es aber nicht.
    Ich sage es nochmal, die ICs zu nahe wie möglich zusammen und so kurz wie möglich verkabeln. 5cm sind unkritisch, 10 gehen noch, 20 sind Glückssache. Wenn dann noch mehrere Schieberegister hintereinander geschaltet sind und Taktleitungen aus einem Ausgang (z.B. Clock für alle Register) aus einem Ausgang des Arduinos gespeist werden sollen, bist du auf einmal bei 50 cm Leitung bis zum letzten Register. Bei sollchen Längen spielen schon Effekte aus der HF-Technik mit rein. kapazitives Übersprechen, zu langsames Ansteigen des Signalpegels und Signalreflexionen an den Leitungsenden :astonished: