LEDs glimmen obwohl sie aus sein sollten

OP #1133918
Lesenswert?

Hallo,
Ich möchte mit einem ATTiny13 eine 3x3 Matrix ansteuern. Dazu benutze 
ich ein Schieberegister wie in der Schaltung im Anhang zu sehen. 
(Eigentlich will ich nur mal bissl mit dem Schieberegister 
experimentieren)

Ich benutze kein SPI interface um das Schieberegister anzusteuern 
sondern setze die die einzelnen Portpins per Software.

Mein Problem ist jetzt, dass auch wenn im Schieberegister die 
entsprechenden Pins nicht gesetzt sein sollten dann glimmen ein paar 
LEDs trotzdem. Also sie leuchten nicht so stark, aber sie glimmen eben.
Und zwar glimmen wenn LED7 an ist die LEDs 8 und 9 mit, wobei ich das 
gefühl habe dass 8 stärker glimmt als 9. Es glimmen also immer nur die 
entsprechenden Spalten mit. Leuchtet eine LED aus der mittleren reihe 
dann glimmt die darüber stärker und die darunter nicht so stark.

An was liegt das?
Das Schieberegister sollte doch eigentlich nicht die Ursache sein, oder?

Meine Matrix steuere ich Zeilenweise an, wenn ich zischen den einzelnen 
Zeilen viel Zeit lasse (so, dass man das ganze schon sichtbar blinken 
sieht z.b. 1s) dann tritt der Effekt nicht auf.

Das Programm das ich verwende funktioniert folgendermaßen: Welche LEDs 
an sind ist in einer 9bit (16bit, aber nur 9 werden genutzt) HEX zahl 
gespeichert, die letzten 3 Ziffern sind die untere zeile dann kommen 3 
für die mittlere und 3 für die obere Zeile.
Ich lade also 3 bit für die jeweiligen LEDs und nochmal 3 für die 
jeweilige Zeile ins Schieberegister dann lass ich das ganze ausgeben. 
Eine Zeile nach der anderen. Geplant war das eben sehr schnell, sodass 
man kein flackern oder so sieht, nur glimmen eben immer alle LEDs einer 
Spalte etwas sobal eine LED dieser Spalte an ist.


Ich hoffe jemand kennt dieses Phänomen und kann mir helfen

Grüßle vom Essig
Angehängte Dateien:
OP #1134052
Lesenswert?

"break before make" ist das stichwort! Dankeschön, damit gehts bisher 
bei 2/3 meiner Matrix, ich denke mal der Rest ist nen Programmierfehler 
(bin nich soooo der Programmierer) aber es geht wenigstens bei den 
anderen, also Problem identifiziert :)

Danke nochmal und liebe Grüße

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren