Mega1284 startet sporadisch, Quarz schwingt nicht

Gast #3141544
Lesenswert?

Hallo Forum,

ich habe hier ein kleines Problem mit einem ATmega. Dieser hat schon mal 
einwandfrei funktioniert. Aber nach einer Erweiterung der Schaltung ist 
der Quarz nicht mehr richtig angeschwungen. Ich habe daraufhin mal auf 
den internen RC Oszillator umgestellt. Hiermit läuft er, wenn er gerade 
über ISP programmiert wurde, immer sauber hoch. Programmiere ich ihn 
nicht über ISP, startet er manchmal gar nicht. Wenn er startet, hängt er 
sich manchmal einfach auf. An der Reset und Quarz-Beschaltung habe ich 
nichts wissentlich geändert (Und auch schon kontrolliert).
Der Quellcode ist nahezu gleich geblieben. Das würde ich als Ursache für 
das 'aufhängen' ausschliessen.

Hat jemand von Euch eine Idee, wo ich die Fehlersuche beginnen könnte?

Vielen Dank im voraus für Input.
Gruß Heinz.

Setup:
ATMega1284
Fuses: auf maximales delay zum Start eingestellt.
Quarz: 20 MHz + 2* 12pF (auch schon 20pF probiert)
Reset-beschaltung: R:10k + C:100nF
Gast #3141649
Lesenswert?

Hi

>Fuses: auf maximales delay zum Start eingestellt.
>Quarz: 20 MHz + 2* 12pF (auch schon 20pF probiert)

Auch auf 'Full Swing Crystal Oscillator' eingestellt? Stromversorgung in 
Ordnung? Watchdog aus? Brownouteinstellungen?

MfG Spess
(Firma: TravelRec.) Persönliche Seite #3141745
Lesenswert?

Heinz schrieb:
> auf
> den internen RC Oszillator umgestellt. Hiermit läuft er, wenn er gerade
> über ISP programmiert wurde, immer sauber hoch. Programmiere ich ihn
> nicht über ISP, startet er manchmal gar nicht.

Das klingt für mich eher nach unsauberer Betriebsspannung oder fehlenden 
/falsch platzierten Blockkondensatoren.

Heinz schrieb:
> Das ganze ist auf Lochraster gelötet mit Kupferlackdraht.

Falls Blockkondensatoren verwendet werden, müssen diese direkt am IC 
sitzen. Eine Strecke Kupferlackdraht dazwischen und die ganze Wirkung 
ist dahin. Hast Du alle VCC- und GND-Anschlüsse beschaltet?
Gast #3142207
Lesenswert?

Als Erstes schon mal vielen Dank für den zahlreichen Input.

Spess53 schrieb:
> Auch auf 'Full Swing Crystal Oscillator' eingestellt?

Habe ich gerade ausprobiert. Hatte davor 'Ext. Crystal Osc. 8 MHz -'. 
Werde mich aber als erstes darauf konzentrieren, das ganze mit dem 
internen RC zu fixen, da hier meines erachtens erst mal eine 
Fehlerquelle wegfällt.

> Stromversorgung in Ordnung?

Ich hoffe es. Bislang gab es damit zumindest nie Probleme.

>Watchdog aus?

ja.

> Brownouteinstellungen?

Hatte ich zuerst deaktiviert. Angeschaltet macht es auch keinen 
Unterschied.

c-hater schrieb:
> Fuses auf "full swing" und wenn das nicht hilft, Bürdekapazitäten am
> Quarz verringern. Nein, 2x22pF ist nicht in jedem Fall richtig...

Das werde ich mal versuchen, wenn ich es mit dem internen RC hinbekommen 
habe.

Knut Ballhause schrieb:
> Falls Blockkondensatoren verwendet werden, müssen diese direkt am IC
> sitzen. Eine Strecke Kupferlackdraht dazwischen und die ganze Wirkung
> ist dahin. Hast Du alle VCC- und GND-Anschlüsse beschaltet?

Sind 'direkt' dran. Maximal 2 mm Draht dazwischen. Das sollte OK sein, 
oder?

Thomas Eckmann schrieb:
> Sehr verdächtig. Zumal die auch in der Stückliste oben nicht drin sind.

Ich glaube das ist es leider auch nicht. Habe überall glaube ich 100 nF 
dran. Und auch alle VCC & GND beschaltet & noch mal kontrolliert.
Zusätzlich noch nen 100 uF hinter einem DC/DC Wandler auf der seite der 
MC Spannung (Der aber gerade nicht verwendet wird, weil die Schaltung 
über ISP versorgt wird. Das ist direkt die USB Spannung) und dann 
nochmal 2* 10 uF an der Betriebsspannung gleich neben zwei Längsreglern 
für 3.3 V. (Der MC wird mit 5V versorgt, aber ich habe noch einen Sensor 
am I2C Bus, der mit 3.3 V versorgt wird und einen Analogen Sensor der 
mit 3.3 V läuft der auf die ADC Pins geht. Über diesen Regler wird AREF 
versorgt.)

Den I2C Bus habe ich jetzt für die Versuche schon mal abgeklemmt.

Ich hoffe, dass es nicht einer dieser Fehler ist, bei denen es nur noch 
hilft die Schaltung nochmal "gleich" neu aufzubauen damit es 
funktioniert ;)

Werde heute Abend mal das Oszi rausziehen und die Versorgungsspannung 
mal genauer untersuchen..

Noch irgend eine Idee bis dahin? Ist es gut, das ganze erstmal mit dem 
internen RC zum laufen zu bekommen? Denke, das teilt das Problem ;)
Gast #3145833
Lesenswert?

Nochmal Danke an alle, die hier mitgeholfen haben.
Derzeit geht die Schaltung wieder. Allerdings habe ich keine Ahnung, was 
ich wirklich verändert habe :(
Werde an dem Fehler dran bleiben wenn er wieder auftaucht und Euch dann 
verraten, was es wirklich war! ;)

Das Umstellen der Fuses hat keinen Unterschied gemacht. Werde es aber 
jetzt doch auf Full Swing lassen. Das klingt richtiger ;)

Danke & Gruß Heinz

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