Forum: Mikrocontroller und Digitale Elektronik Atmega16 -> 16MHz Störsignal


von Christopher S. (der_chris)


Angehängte Dateien:

Lesenswert?

Hallo,

nach der Programmierung des Atmega16 ist auf jeder Leitung
der Schaltung ein 16 MHz Störsignal zu finden.


o Einstellmaßnahmen am µC:
Am Atmega werden benutzt
+ Timer 0
+ Timer 2
+ ADC im Freerunning Mode

Fuses:
+OCDEN = [X]
+JTAGEN = [X]
+SPIEN = [X]
+EESAVE = [ ]
+BOOTSZ = 1024W_1C00
+BOOTRST = [ ]
+CKOPT = [ ]
+BODLEVEL = 2V7
+BODEN = [ ]
+SUT_CKSEL = EXTHIFXTALRES_16KCK_64MS

+HIGH = 0x19 (valid)
+LOW = 0xFF (valid)

o Bisherige Gegenmaßnahmen:
Nach einem Löschvorgang (FFFF) wird die Amplitude des Störsignals 
verringert.

Bei Verwendung des internen Oszillators schwingt die Schaltung in der 
entsprechend eingestellten Frequenz.

Bei entfernten Quarz und abgeschalteten Oszillator ist keine Schwingung 
vorhanden.

Diverse Kondensatoren im 5V Kreis (1pF<= C <=4,7µF) haben nicht 
geholfen.


o Anhang
Im Anhang ist der Schaltplan und das Oszillogramm zu finden.


Die Ursache ist unbekannt und wird gesucht. Bitte um Unterstützung.

Gruß,

Chris

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Christopher S. schrieb:
> nach der Programmierung des Atmega16 ist auf jeder Leitung der Schaltung
> ein 16 MHz Störsignal zu finden.
Wie sieht das Layout aus und wo sind die Messpunkte? Womit wird 
gemessen? Wie ist der Tastkopf eingestellt?

von spess53 (Gast)


Lesenswert?

Hi

>nach der Programmierung des Atmega16 ist auf jeder Leitung
>der Schaltung ein 16 MHz Störsignal zu finden.

Und an welcher Stelle stört das?

MfG Spess

von Curby23523 N. (Gast)


Lesenswert?

Layout zeigen :).

von Christopher S. (der_chris)


Lesenswert?

Oszilloskop mit 200 MHz 5 GS/s.
Es sind 1 zu 1, als auch 10 zu 1 Tastköpfe verwendet worden. Keine 
Änderung erkennbar.

Gemessen wurde am 5 V Versorgungssignal und am ADC 0 Eingang.

Das Layout ist soweit fertig, die Karte allerdings für erste Versuche 
auf Lochraster mit Wirewrap aufgebaut worden.

Es stört in der Form, dass am ADC Eingang eine steigende Flanke 
(Messsignal)von etwa 70 mV erwartet wird, welches einen Timer auslöst.
Durch die Überlagerung dieses 50 mV Rauschens kommt es zu Problemen.

von egberto (Gast)


Lesenswert?

Wahrscheinlich ist da irgendwo die Masse nicht dran - passiert beim 
Drahtverhau schon mal.

von 6a66 (Gast)


Lesenswert?

Christopher S. schrieb:
> Die Ursache ist unbekannt und wird gesucht. Bitte um Unterstützung.

Passende Masseanbindung Deiner Probe?

rgds

von c-hater (Gast)


Lesenswert?

Christopher S. schrieb:

> nach der Programmierung des Atmega16 ist auf jeder Leitung
> der Schaltung ein 16 MHz Störsignal zu finden.

Dann ist sehr wahrscheinlich die Taktfrequenz deiner MCU ziemlich genau 
16MHz...

Sprich: Störabstrahlungen des MCU-Taktes über praktisch alle Pins sind 
grundsätzlich erstmal völlig normal. Genau deswegen gibt es z.B. die 
speziellen Sleepmodes, in denen der ADC arbeitet, die MCU aber schläft.

Alllerdings: wieviel von dem bei aktiver MCU unvermeidlichen EMV 
tatsächlich beim ADC ankommt, hängt auch sehr stark vom Package und vom 
Layout ab. Bezüglich des Package sind hier die kleineren prinzipiell im 
Vorteil. Damit lassen sich potentiell immer die bessere Ergebnisse 
erzielen. Allerdings nur dann, wenn auch das Layout passt. Sonst kann 
die Sache auch leicht in's genaue Gegenteil umschlagen.

Sprich: der springende Punkt ist ein für die konkrete Anwendung 
optimiertes Layout. Das ist aber schon wirklich echte HF-Scheisse und 
deshalb für Normalsterbliche nicht mehr ganz so einfach zu begreifen. 
Das einzige, was (fast) genausogut ist wie entsprechende Berechnungen: 
Erfahrung, gewonnen aus Trial&Error.
Aber selbst diese Sache kann man nicht völlig blind beginnen, sonst wird 
es endlos, zumindest eine grobe Vorstellung der einschlägigen 
physikalischen Zusammenhänge sollte schon vorhanden sein, wenn man auf 
diese Weise vorgehen will. Dann kann das aber bei einfachen Sachen wie 
so einem AVR8 durchaus deutlich schneller zum Ziel führen als die 
"wissenschaftliche" Methode.
Denn die hat durchaus auch das Problem, dass sie nur dann das optimale 
Ergebnis ausrechnen kann, wenn sie alle Parameter exakt kennt. Und genau 
das ist eben leider praktisch niemals der Fall. Was i.d.R. dazu führt, 
dass man am Ende doch per Trial&Error das Ergebnis weiter verbessern 
muss. Man hat allerdings dann meist eine Startsituation für die 
Versuche, die vom Optimum nicht mehr so sehr weit entfernt ist. Viel 
besser als eine aus der Erfahrung geborene ist sie allerdings meist auch 
nicht. Der Hauptvorteil ist halt: man kann den Scheiss auch durchrechnen 
lassen, ohne bereits über diese Erfahrung zu verfügen...

von Max (Gast)


Lesenswert?

Christopher S. schrieb:
> Es stört in der Form, dass am ADC Eingang eine steigende Flanke
> (Messsignal)von etwa 70 mV erwartet wird, welches einen Timer auslöst.

Ich würde das 70mV Signal erstmal verstärken, bis ich es an dem Eingang 
eines ADC des Atmegas führe. 70mV sind bei 5V und 10bit nur 14 bit..

von Christopher S. (der_chris)


Lesenswert?

Hallo und vielen Dank für die Antworten.

Ich Tippe mittlerweile auf eine galvanische Kopplung die durch das 
Verdrahten per Wirewrap entstanden sein muss.

Eine Verstärkung des Signals ist durchaus sinnig. Das wird geprüft, 
danke.

Als nächstes wird die PCB bestellt, dann werde ich auch das Layout 
hochladen und einen weiteren Stand durchgeben.


Gruß,

Chris

von H.Joachim S. (crazyhorse)


Lesenswert?

Christopher S. schrieb:
> Als nächstes wird die PCB bestellt, dann werde ich auch das Layout
> hochladen und einen weiteren Stand durchgeben.

Machs andersherum. Erst zeigen, dann bestellen.

von Jens G. (jensig)


Lesenswert?

Deine Abblock-C's am ATMega sind etwas ungünstig gestaltet, sofern C10 
ein eLko ist (ist nicht so klar zu erkennen). Elko alleine ist da schon 
eher nichts mehr wert bei 16MHz.
Mache noch einen 100n parallel zum C10. Und zwar so kurz wie möglich an 
die Schaltkreisanschlüsse.
Und dann nimmst Du den Masseanschluß des IC (bzw. dem naheliegenden C) 
als Bezugspotential für Oszilloskopmessungen, und nicht irgendwo in der 
Schaltung, und zwar mit der kurzen Masseleitung des Tastkopfs, nicht mit 
einer langen Masseverbindung zum Erdanschluß des Oszis.

Ansosnten: zeig mal den Drahtverhau bzw. zukünftiges PCB - sicherlich 
ist da die Masseführung (und auch die der anderen Strippen) eher ein 
Graus ...

von Joachim B. (jar)


Lesenswert?

AREF mit AVCC verbunden?

warum das denn? das gehört sich doch normalerweise nicht.
AREF bekommt seinen eigenen Abblock Kondensator und wird nur bei 
externer Einspeisung ale Eingang mit anderen Spannungen als VCC oder der 
internen Referenz genutzt.

AVCC wird üblicherweise mit einer Filterkombination aus L & C von VCC 
gespeist.

https://www.mikrocontroller.net/wikifiles/9/9e/Adc_connection.png

: Bearbeitet durch User
von da1l6 (Gast)


Lesenswert?

Hallo

Da fehlen 100nF Keramik Kondensatoren an den ATMega *VCC pins.

da1l6

von Rudolph (Gast)


Lesenswert?

Hmm, 22pF am Quarz, ausgelegt oder einfach weil es "jeder" so macht?
Und Mega16 - wirklich? Wenn überhaupt würde ich da einen Mega164PA 
einsetzen.

von Peter D. (peda)


Lesenswert?

Q1, C2, C3 sollten so nah wie möglich am MC sitzen.
Die beiden GND von C2, C3 sind zu verbinden und von dort kurz zu Pin11 
gehen.
Dann von Pin11, 12 kurz an C1 und von C1 nach VCC/GND gehen.

von spess53 (Gast)


Lesenswert?

Hi

Joachim B. (jar) schrieb

>AVCC wird üblicherweise mit einer Filterkombination aus L & C von VCC
>gespeist.

Das kenne ich noch aus alten Datenblätters (ATMega103)

da1l6 (Gast) schrieb
<Da fehlen 100nF Keramik Kondensatoren an den ATMega *VCC pins.

Was ist C1?


Rudolph (Gast) schrieb

>Hmm, 22pF am Quarz, ausgelegt oder einfach weil es "jeder" so macht?

Passt doch. Was ist daran auszusetzen?

MfG spess

von Curby23523 N. (Gast)


Lesenswert?

spess53 schrieb:
> Passt doch. Was ist daran auszusetzen?

Kann passen, muss aber nicht.

von Dannoch Dashier (Gast)


Lesenswert?

spess53 schrieb:
> Passt doch. Was ist daran auszusetzen?

Rudolph muss auch was zu sagen haben und deklassiert sich
selbst weil er vermutet dass ein 22pF Kondensator (oder
auch zwei) etwas mit diesen Störungen zu tun haben muss.

Christopher S. schrieb:
> IMAGE001.png

Wenn ich mir das Bild anschaue dann weiss ich warum der
alte Spruch immer wieder neu gilt:

Wer misst, misst Mist.

Und wer so misst macht garantiert was falsch.

von spess53 (Gast)


Lesenswert?

Hi

>Kann passen, muss aber nicht.

Bei mir hat für AVRs seit 20 Jahren jeder Quarz mit 22p funktioniert. 
Hast du belastbare Gegenbeispiele?

MfG spess

von Dannoch Dashier (Gast)


Lesenswert?

spess53 schrieb:
> Hast du belastbare Gegenbeispiele?

Er will ja nur auch mitlabern.

Als nächstes kommt der Pullup-Widerstand dran, ob der
nicht besser 8.2 KOhm sein sollte.

von Rudolph (Gast)


Lesenswert?

spess53 schrieb:
>>Hmm, 22pF am Quarz, ausgelegt oder einfach weil es "jeder" so macht?
>
> Passt doch. Was ist daran auszusetzen?

Ich habe nicht daran rumgemäkelt, ich habe vorsichtig gefragt, ob da 
Überlegung hinter steckt, wichtiger Unterschied.

Du hast ein Datenblatt von seinem Quarz gesehen?
Ich sehe da nicht mal den Typ im Schaltplan, oder die Frequenz.
Und vom Lochraster zur Platine könnten da auch noch unterschiedliche 
Quarze zum Einsatz kommen.

von Dannoch Dashier (Gast)


Lesenswert?

Rudolph schrieb:
> Und vom Lochraster zur Platine könnten da auch noch unterschiedliche
> Quarze zum Einsatz kommen.

Und die Drahtlänge vom Quarz darf maximal 3.57mm betragen.
Sonst gibt's die oben gezeigten Störungen.

von H.Joachim S. (crazyhorse)


Lesenswert?

spess53 schrieb:
> Bei mir hat für AVRs seit 20 Jahren jeder Quarz mit 22p funktioniert.

So mach ich das auch und denke nicht drüber nach.
Bei Uhrenquarzen sieht es anders aus.

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.