Forum: Mikrocontroller und Digitale Elektronik Int-Problem verschwindet sobald mit Oszi gemessen wird


von Julian (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe folgendes Problem: Ich messe Impulse zur Drehzahlbestimmung mit 
dem INT-Eingang eines ATmega128.Testweise habe ich einen 
Funktionsgenerator angeschlossen. Das Ganze wird als Drehzahl auf einem 
Display ausgegeben. Nun kommt es aber häufiger vor, dass kurz eine viel 
zu hohe Drehzahl angezeigt wird. Wenn ich nun aber mit einem Oszi an PE5 
gehe, um mir das Siganl anzuschauen, kommt dieser Fehler nicht mehr. 
Woran könnte diese liegen?

Grüße
Julian

von Erich (Gast)


Lesenswert?

Spannungsversorgung prüfen (Rauschen ?)

Notfalls Kondensator 22 pF als Scope-Ersatz einbauen PE5 gegen Gnd.

von Falk B. (falk)


Lesenswert?

@  Julian (Gast)

>Woran könnte diese liegen?

Dein Komparator prellt, weil er keine Hysterese hat. Siehe [[Schmitt 
Trigger]]. Ausserdem wären 100nF an Pin6 nicht falsch, um die 
Referenzspannung HF-mäßig zu entkoppeln.


MFG
Falk

von Reinhard Kern (Gast)


Lesenswert?

Julian schrieb:
> Hallo,
>
> ich habe folgendes Problem: Ich messe Impulse zur Drehzahlbestimmung mit
> dem INT-Eingang eines ATmega128.Testweise habe ich einen
> Funktionsgenerator angeschlossen. Das Ganze wird als Drehzahl auf einem
> Display ausgegeben. Nun kommt es aber häufiger vor, dass kurz eine viel
> zu hohe Drehzahl angezeigt wird. Wenn ich nun aber mit einem Oszi an PE5
> gehe, um mir das Siganl anzuschauen, kommt dieser Fehler nicht mehr.
> Woran könnte diese liegen?
>
> Grüße
> Julian

Hallo,

ich würde den 2903 mal testhalber mit +- 5V (oder +- 12V) betreiben, ob 
der Fehler dann weg ist.

Gruss Reinhard
PS das Standardverfahren in solchen Fällen: Oszi mitliefern.

PS2: zur Erklärung: Input Range ist 0 .. 1,8 V lt. Datenblatt, 
Schaltpunkt ist 1,65V. Also Input grösser als erlaubt. Da darf der IC 
schon mal schwingen.

von Julian (Gast)


Lesenswert?

... Danke für die Tipps!

Ich sehe es schon richtig, dass der Augang entweder VCC- (hier GND) oder 
entsprechend der Spannung über dem Pullup-Widerstand ist (hier 3,3 V 
durch den internen Pullup-Widerstand des ATmega32)?

Es sollte also kein Problem den Komperator mit 5V zu betreiben und 
trotzdem 0V - 3,3 V als Ausgangssignal zu bekommen?

von CaH (Gast)


Lesenswert?

Du solltest das tun , was Falk vorgeschlagen hat.
Bau dir einen Schmitttrigger.

Gruß
CaH

von Heiner (Gast)


Lesenswert?

Hi,

laut Datenblatt brauchst Du am Ausgang des LM2903 einen 
Pullup-Widerstand.
Angegeben mit 3K. Ich denke aber der übliche Wert von 10k wirds auch tun 
...

Gruß

von Julian (Gast)


Lesenswert?

Mir ist nicht ganz klar, was der Schmitttrigger in diesem Fall bringt.

Es würde ja etwas bringen, wenn das Schwingen vor dem Comperator wäre, 
aber in diesem Fall ist es ja der Ausgang des Comperators der schwingt.

Oder schwingt der Ausgang weil das Eingangssignal schwingt?

von Heiner (Gast)


Lesenswert?

Versuchs doch einfach mal mit dem PullUp und melde Dich dann wieder ...

von Falk B. (falk)


Lesenswert?

@Julian (Gast)

>Mir ist nicht ganz klar, was der Schmitttrigger in diesem Fall bringt.

Dann lies mal was zum Thema Schmitt-Trigger.

>Oder schwingt der Ausgang weil das Eingangssignal schwingt?

Aha . . .

von Udo S. (urschmitt)


Lesenswert?

Einen Schmitt-Trigger mit Hysterese. Das wurde doch schon gesagt!

von Julian (Gast)


Lesenswert?

@Heiner: Ich benutze den internen Pullup des ATmega128

von Julian (Gast)


Lesenswert?

@Udo Schmitt: Ja, aber ich versuche noch die Ursache des Schwingens zu 
verstehen. Wäre es nicht sinnvoll (wenn möglich) diese zu beseitigen?

von Peter D. (peda)


Lesenswert?

Die Ursache ist der Tiefpaß 47k/33n am Eingang. Dadurch nähert sich der 
Eingang langsam der Schaltschwelle und in der Nähe der Schaltschwelle 
schwingt jeder Komparator.
Deshalb macht man üblicher Weise eine positive Rückführung.

Die Frage ist natürlich, wozu überhaupt dieser Aufwand?
Warum nicht einfach direkt auf nen digitalen Eingang?


Peter

von Heiner (Gast)


Lesenswert?

Hallo nochmal,

wenn der Effekt verschwindet sobald Du mit der Prüfspitze drangehst, 
deutet dies darauf hin, dass der Ausgang eben doch schwingt. Wenn dies 
durch die doch recht geringe ohmsche und/oder kapazitive Last des Oszis 
schon unterbunden werden kann, deutet dies drauf hin, dass der interne 
PullUp vielleicht zu groß ist (oder nicht funktioniert), oder dass schon 
die kleine Kapazität ausreicht um dies zu unterbinden. Ich würde daher 
trotz des internen PullUps noch einmal testweise 10k als PullUp dazu 
schalten. Falls das nichts nützt auch mal eine kleine Kapazität gegen 
Masse schalten.

Zusätzlich auch mal die Versorgungsspannung prüfen, ob die sauber ist 
und ggf. auch mal ein paar keramische Kondensatoren von Pin6 und direkt 
von Pin8 nach Masse schalten.

Gruß

von Heiner (Gast)


Lesenswert?

Julian schrieb:
> @Udo Schmitt: Ja, aber ich versuche noch die Ursache des Schwingens zu
>
> verstehen. Wäre es nicht sinnvoll (wenn möglich) diese zu beseitigen?

Der LM hat einen Open Kollektor Ausgang. Wenn da kein, oder ein zu 
großer PullUp Widerstand verwendet wird, schwingt jede Leitung, das ist 
ganz normal. Der Hersteller empfiehlt hier 3kOhm. Das wird schon seinen 
Grund haben. Ich kenne den ATMega jetzt nicht so, aber ich gehe davon 
aus, dass die internen PullUps erheblich hochohmiger sind...

PS.
Was ich geschrieben habe, gilt natürlich nur, wenn der Effekt mit Oszi 
dran tatsächlich verschwindet und dies nicht alles Zufall war.
Aber ein 10k Widerstand ist da bestimmt schnell mal drangelötet ...

von Julian (Gast)


Lesenswert?

Peter Dannegger schrieb:
> Die Frage ist natürlich, wozu überhaupt dieser Aufwand?
> Warum nicht einfach direkt auf nen digitalen Eingang?

Weil der Sensor 5 V ausgibt und ich den Atmega mit 3,3 V betreibe.

von Peter D. (peda)


Lesenswert?

Julian schrieb:
> Weil der Sensor 5 V ausgibt und ich den Atmega mit 3,3 V betreibe.

Dann nimmt man einfach einen Spannungsteiler, z.B. 18k + 33k.


Peter

von Reinhard Kern (Gast)


Lesenswert?

Peter Dannegger schrieb:
> Julian schrieb:
>> Weil der Sensor 5 V ausgibt und ich den Atmega mit 3,3 V betreibe.
>
> Dann nimmt man einfach einen Spannungsteiler, z.B. 18k + 33k.

Hallo Peter,

selbst das ist noch überflüssig, denn der ATMega ist 5V-tolerant (Input 
max 5,5V laut Datenblatt).

Zusammenfassend: er hat eine Pegelanpassschaltung 5V -> 3,3V eingebaut, 
dabei ist aber, wie ich oben vorgerechnet habe, die Eingangspannung von 
5 V für den LM-Baustein schon zu hoch (laut Datenblatt, ich glaube an 
sowas). Der ATMega hätte sie aber ohne weiteres vertragen. Und ein paar 
andere Probleme kommen auch noch dazu.

Radikale Lösung daher: die gesamte Mimik wird durch einen 
Schutzwiderstand von 10 .. 100k ersetzt. Der Petersche Spannungsteiler 
schadet aber auch nicht.

Gruss Reinhard

von Julian (Gast)


Lesenswert?

Reinhard Kern schrieb:
> selbst das ist noch überflüssig, denn der ATMega ist 5V-tolerant (Input
> max 5,5V laut Datenblatt).
>
> Zusammenfassend: er hat eine Pegelanpassschaltung 5V -> 3,3V eingebaut,
> dabei ist aber, wie ich oben vorgerechnet habe, die Eingangspannung von
> 5 V für den LM-Baustein schon zu hoch (laut Datenblatt, ich glaube an
> sowas). Der ATMega hätte sie aber ohne weiteres vertragen. Und ein paar
> andere Probleme kommen auch noch dazu.


Die max. Spannung an einen Pin ist doch immer im Verhältnis zur 
Betriebsspannung!?

Aus dem Datenblatt:

>Voltage on any Pin except RESET with respect to Ground 
>................................-0.5V to VCC+0.5V

von Reinhard Kern (Gast)


Lesenswert?

Julian schrieb:
> Die max. Spannung an einen Pin ist doch immer im Verhältnis zur
> Betriebsspannung!?
>
> Aus dem Datenblatt:
>
>>Voltage on any Pin except RESET with respect to Ground
>>................................-0.5V to VCC+0.5V

Hallo,

nicht immer aber in dem Fall hast du Recht, habe ich falsch gelesen - 
der ATMega ist doch nicht 5V-tolerant. Schade, ich finde das einen 
echten Nachteil. Ich verwende im Moment einen eZ80, der arbeitet 
problemlos mit 5V-Devices zusammen.

Ein 47k-Schutzwiderstand würde wegen der Schutzdioden funktionieren, ein 
Spannungsteiler ist die ganz und gar korrekte Lösung. Speziell der 
LM-Baustein bringt nur zusätzlichen Ärger.

Gruss Reinhard

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.