Forum: Mikrocontroller und Digitale Elektronik Heisenbug bei Schieberegister-Clock


von ebtschi (Gast)


Lesenswert?

Ich habe bei einer Platine folgenden "Heisenberg-Bug":
Ein Schieberegister spuckt falsche Werte aus. Wenn ich mit meinem Finger 
den Clock-Pin berühre funktioniert sofort alles. Mit der Oszi-Probe 
genau das selbe, deshalb kann ich mir auch nicht das falsche Signal am 
Oszi ansehen.

Mein Verdacht war ein fehlender Pullup oder Pulldown Widerstand.
Ich habe daher folgendes versucht:
Signal mit 15k auf GND
Signal mit 15k auf +3V3
Signal mit 1k  auf GND
Nichts davon hat irgendetwas verändert.

Habt ihr eine Idee dazu?

von Georg G. (df2au)


Lesenswert?

100pF nach Masse. Bei dir klingelt das Signal.

von Jon (Gast)


Lesenswert?

Hast du vergessen den µC-Pin auf Ausgang zu schalten? Das Problem hatte 
ich mal.

von NaNa_JaJa (Gast)


Lesenswert?

Diode in Sperrrichtung nach Masse

von 6A66 (Gast)


Lesenswert?

ebtschi schrieb:
> Habt ihr eine Idee dazu?

Es ist zwar unklar welcher Mikrocontroller oder welcehs Schieberegister.
Aber wenn in ein normales Schieberegister nicht richtig übernommen 
werden und sich das ganze dann mittels Kapazitäte 
verbessert/verschlechtert sind meist Setup/Hold-zeiten verletzt (siehe 
Datenblatt) oder Spannungspegel nicht sauber. Prüfe daher mit einem 
Scope wann die Daten zur Taktflanke kommen und gehen und wie der Takt 
aussieht.

rgds

von ebtschi (Gast)


Lesenswert?

Danke für eure Tipps!

NaNa_JaJa schrieb:
> Diode in Sperrrichtung nach Masse

Hat leider nichts gebracht.

Georg G. schrieb:
> 100pF nach Masse. Bei dir klingelt das Signal.

Genau das war's! Vielen Dank!

von Thomas E. (thomase)


Lesenswert?

ebtschi schrieb:
> Danke für eure Tipps!
>
> NaNa_JaJa schrieb:
>> Diode in Sperrrichtung nach Masse
>
> Hat leider nichts gebracht.
>
> Georg G. schrieb:
>> 100pF nach Masse. Bei dir klingelt das Signal.
>
> Genau das war's! Vielen Dank!

Kann ich mir kaum vorstellen. Ich würde eher auf Jons Ansatz tippen. 
Oder ist deine Leitung ein paar Meter lang?
Naja, Hauptsache die Katze lebt noch.

mfg.

von Falk B. (falk)


Lesenswert?

@ ebtschi (Gast)

>> 100pF nach Masse. Bei dir klingelt das Signal.

>Genau das war's! Vielen Dank!

Das ist ein Würg Around. Du hast das Symtom beseitigt, nicht die 
Ursache. Siehe Wellenwiderstand.

von ebtschi (Gast)


Lesenswert?

Thomas Eckmann schrieb:
> Oder ist deine Leitung ein paar Meter lang?

<10 cm

Jon schrieb:
> Hast du vergessen den µC-Pin auf Ausgang zu schalten?

nein, passt

von Thomas E. (thomase)


Lesenswert?

ebtschi schrieb:
> Thomas Eckmann schrieb:
>> Oder ist deine Leitung ein paar Meter lang?
>
> <10 cm
>
> Jon schrieb:
>> Hast du vergessen den µC-Pin auf Ausgang zu schalten?
>
> nein, passt

Was ist denn das für ein µC? Wie ist die Schaltung aufgebaut?
Schlechter Kontakt, kalte Lötstelle oder sowas ähnliches. Der 
Kondensator ist definitiv nicht die Lösung.

mfg.

von Georg A. (georga)


Lesenswert?

> Der Kondensator ist definitiv nicht die Lösung.

Wer heilt, hat recht ;) Wenn der Effekt aber schon mit einer Oszi-Probe 
weg ist, sieht das eher nach einem Setup/Hold-Problem aus, das mit den 
100p um ein paar ns ins Gute verschoben wird. Oszibilder aller 
beteiligten Signale wären hilfreich.

von PöserPursche (Gast)


Lesenswert?

Die Katze gehört dem Schrödinger, dem Heisenberg die Neutrions.
Aber diese Problem ist wohl eher Maxwell oder Marconi...

PP

von ebtschi (Gast)


Lesenswert?

"Heisenbug" war gemeint im Sinne von "Wenn ich ihn nicht messe ist er 
da. Wenn ich ihn messe ist er nicht da.".
Die Messung beeinflusst das Ergebnis.

von myzyn (Gast)


Lesenswert?

Ist evtl. die clock-polarität falsch.  Soll schon vorgekommen sein, dass 
es dann durch unterschiedliche Leitungslängen von Takt und Daten und 
zusätzliche Kapazitäten, dann doch ging.

von Thomas E. (thomase)


Lesenswert?

ebtschi schrieb:
> "Heisenbug" war gemeint im Sinne von "Wenn ich ihn nicht messe ist er
> da. Wenn ich ihn messe ist er nicht da.".
> Die Messung beeinflusst das Ergebnis.

Mit dem Kondensator kannst du den Fehler, der offensichtlich an anderer 
Stelle vorliegt, nicht mehr messen. Das System ist zerstört. So als 
würde man die Kiste öffnen.

mfg.

von Erich (Gast)


Lesenswert?

Du hast irgendwo einen offenen (Cmos-) Eingang am Schieberegister.
Kann auch Wackelkontakt / Lötfehler sein.

Gruss

von Thomas E. (thomase)


Lesenswert?

Erich schrieb:
> Du hast irgendwo einen offenen (Cmos-) Eingang am Schieberegister.
> Kann auch Wackelkontakt / Lötfehler sein.

Da er aber keine weiteren Infos rausrückt, ist es sinnlos, weiter zu 
spekulieren. Gestochere im Nebel.

mfg.

von Kevin (Gast)


Lesenswert?

Thomas Eckmann schrieb:
> die Kiste

gehört ebenfalls zu Schrödinger

von Thomas E. (thomase)


Lesenswert?

Kevin schrieb:
> Thomas Eckmann schrieb:
>> die Kiste
>
> gehört ebenfalls zu Schrödinger

Habe ich jemals etwas anderes behauptet?

mfg.

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
Noch kein Account? Hier anmelden.