www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Slestames verhalten bei zwei AVRs an einem Oscillator


Autor: DanDanger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
in meiner Schaltung werden zwei AVRs (ATMega-8 bei 5V) von einem 
einzigen Quarz-Oscillator (kein Quarz(!), sondern das Teil mit den 4 
Anschlüssen ;-)) mit dem Taktsignal versorgt. Die Fuse-Bits sind bei 
beiden AVRs auch korrekt gesetzt. Das Problem ist: Jeder AVR für sich 
genommen funktioniert super, aber sobald beide AVRs in der Schaltung 
sind passiert gar nichts mehr. Beispiel: AVR 1 lässt eine LED im Takt 
blinken. Sobald AVR 2 hinzugeschaltet wird (also an die 
Versorgungsspannung angeschlossen wird) hört auch das blinken der LED 
auf.
Es sieht fasst so aus, als wäre der Oscillator zu "schwach" um beide 
AVRs zu treiben (obwohl im Datenblatt steht, er könne zwei TTL-Eingänge 
betreiben).

Hat irgendjemand ne' Idee woran das liegen könnte?
Was wäre den generell die beste Vorgehensweise, wenn man zwei (oder 
mehr) AVRs mit einem einzigen Taktsignal versorgen möchte ?

Neugierige Grüße
  DanDanger

Autor: Loonix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
DanDanger schrieb:
> Hat irgendjemand ne' Idee woran das liegen könnte?

Erde an MaWin: Fass!

;)

p.s. Für Insider...
p.s.s @DanDanger: Nix für Ungut!

Autor: I. L. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Loonix schrieb:
> Erde an MaWin: Fass!

ROFL

DanDanger schrieb:
> Hat irgendjemand ne' Idee woran das liegen könnte?

Hast du schonmal den Takt oszillographiert? Wenn der Takt weg ist, was 
soll denn passieren?

Gruß Knut

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie haste das ganze denn verdrahtet?

Autor: DanDanger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Ausgang des Oscillators ist direkt auf die "XTAL1"-Eingänge der 
beiden AVRs geschaltet. Die "XTAL2"-Pins sind jeweils unbeschaltet.

Autor: DanDanger (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hier mal der Schaltplan für das Teil ;-)

Autor: Ich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
DanDanger schrieb:
> Re: Slestames verhalten bei zwei AVRs an einem Oscillator
      ^^^^^^^^^

vielleicht solltest du die Tastatur nicht mit an den Takt anklemmen.

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ich:
Dein Beitrag hat dem TE jetzt bestimmt mördermäßig geholfen, und du bist 
ein riesen Typ, dass Dir der Tippfehler aufgefallen ist, Daumen hoch!

@DanDanger:
Schau mal eben im Datenblatt des Mega8 ob der die Option hat das 
Datensignal wieder an XTAL2 auszugeben, so könntest Du beide in Reihe 
schalten

Autor: Ich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stefan schrieb:
> Dein Beitrag hat dem TE jetzt bestimmt mördermäßig geholfen, und du bist
> ein riesen Typ, dass Dir der Tippfehler aufgefallen ist, Daumen hoch!

Danke, es ist doch Sinn diese Forum auf Rechtschreibfehler und 
irgendwelchen Paragrafen rumzureiten ohne Hilfe zu bieten. Zumindest ist 
es bei vielen Beiträgen so.

Autor: DanDanger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
leider gibt der Mega8 das Taktsignal nicht wieder aus.
Aber eigentlich (TM) sollte die Schaltung so wie sie im Schaltplan zu 
sehen ist ja auch funktionieren...

Autor: Frank K. (fchk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zeig mal Deinen Aufbau!  Taktsignale sollten kürzestmöglich sein. Und 
denke auch daran, dass der Strom auch einen Rückweg braucht, d.h. eine 
saubere Masse ist auch Pflicht. Idealerweise liegen Hinweg und Rückweg 
eng beieinander.

Und bei Deiner Schaltung schwant mir auch böses. Du weißt, dass es 
größere AVRs gibt? Auch welche mit mehreren UARTs? Und das die auch 
lötbar sind?

fchk

Autor: DanDanger (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hier mal das Platinenlayout (Platine ist Doppelseitig)

Autor: DanDanger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Und bei Deiner Schaltung schwant mir auch böses.
Warum ?

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So auf den ersten Blick sehe ich da Masseinseln. Kann es sein dass die 
nicht alle miteinander Verbunden sind?

Autor: DanDanger (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Nein, ich hab' nur versehentlich zwei mal die Platinen-rückseite 
hochgeladen.
Hier die "richtige" Voderseite ("Top"-Layer).

Autor: Holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo DanDanger,

die meisten Oszillatoren haben an Pin 1 eine ENABLE Funktion, high oder 
low aktiv; prüfe mal die Funktion indem Du Pin1 auf 5V bzw. Gnd legst.
Wenn Dein Oszillator diese Funktion hat und der Pin potentialfrei ist, 
weiß man nie was passiert.

Gruß Holger

Autor: DanDanger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
ich hab' das gerade mal geprüft. Der PIN1 vom Oszillator hat keinerlei 
funktion, es macht keinen Unterschied ob er auf VCC oder GND geschaltet 
ist. Mit nur einem AVR funktioniert das ganze ja seltsamerweise auch, 
nur wenn beide in der Schaltung sind ist irgendwie der Wurm drin...

Autor: Frank K. (fchk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
DanDanger schrieb:
>>Und bei Deiner Schaltung schwant mir auch böses.
> Warum ?

Warum nimmst Du zwei, ältere AVRs, wo es ein etwas größerer auch getan 
hätte?

fchk

Autor: DanDanger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Weil ich die gerade noch bei mir auf Lager hatte ;-)

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

>Weil ich die gerade noch bei mir auf Lager hatte ;-)

Verstehe ich nicht. Du verschwendest für die Kommunikation und 
zusätzlichen ISP mehr Pins als du gewinnst.

MfG Spess

Autor: Frank K. (fchk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
... und sie schlecht zu werden drohten.

Kopfschüttelnd

fchk

Autor: DanDanger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Idee zwei AVRs zu nehmen war sicherlich nicht die beste, aber mich 
würd' ja schon noch interessieren, warum das Teil nicht funktioniert ;-)

Oder anders gefragt: Muss man irgendwelche verrückten Dinge beachten 
(Mondphase, Erdstrahlung, ...) wenn man zwei AVRs an einer gemeinsamen 
Taktquelle betreiben möchte!?

Gruß
  DanDanger

Autor: Floh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zum Eingrenzen des Fehlers:
Ist es egal, welcher der beiden AVRs angeschlossen ist?
Oder läuft z.B. nur Prozessor 1 solo am Taktgeber?
Ansonsten wäre es auch mal nicht schlecht, den Takt zu oszilloskopieren.
Lötbrücken?
Kurzschlüsse?
Ich vermisse übrigends die Abblockkondensatoren auf dem Layout. :-)

Autor: Frank K. (fchk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
DanDanger schrieb:
> Die Idee zwei AVRs zu nehmen war sicherlich nicht die beste, aber mich
> würd' ja schon noch interessieren, warum das Teil nicht funktioniert ;-)
>
> Oder anders gefragt: Muss man irgendwelche verrückten Dinge beachten
> (Mondphase, Erdstrahlung, ...) wenn man zwei AVRs an einer gemeinsamen
> Taktquelle betreiben möchte!?

Nur die üblichen Layoutregeln: Abblockkondensatoren direkt an die 
betreffenden Pins, wenn möglich Pin->C->Versorgung statt 
Pin->Versorgung->C, auf die Rückströme über Ground achten (Fläche der 
Masche minimieren), etc etc.

fchk

Autor: Holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo DanDanger,

am Oszillator sollte es eigentlich nicht liegen; ein Fanout von
zwei TTL's ist für CMOS-Eingänge deutlich mehr als ausreichend.
Wenn nix mehr zuckt, ganz lapidarer Ansatz:
Wenn zwei atmegas laufen "zieht die Leiterkarte mehr Strom".
Wie sieht denn die Spannungsversorgung aus?
Strombegrenzung evt. auf min gedreht? dann passiert:

Reset Sources
The ATmega8 has four sources of Reset:
• Power-on Reset. The MCU is reset when the supply voltage is below the 
Power-on Reset threshold (VPOT).
•••

Gruß Holger

Autor: DanDanger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Floh:
Das Problem tritt wirklich nur auf, wenn BEIDE AVRs GLEICHZEITIG auf der 
Platine sind. Die Controller kann ich ansonsten beliebig tauschen 
(Controller A als IC1 / IC2, Controller B als IC1 / IC2), funktioniert 
ohne Probleme.
Es ist auch egal, ich welcher Reihenfolge das zuschalten passiert.
Z.B. läuft der Controller an IC1 problemlos, bis IC2 dazugeschaltet 
wird.
Analog läuft der Controller an IC2 problemlos, bis IC1 dazugeschaltet 
wird. Sehr mysteriös, das ganze...

@Holger:
Ja, das habe ich zerst auch gedacht. Der Spannungsregler (LM 117) kann 
laut Datenblatt einen Dauerstrom von 1.5A liefern. Mein Netzteil 
(Strombegrenzung) sagt mir, das zu keinem Zeitpunkt mehr als 300mA von 
der Schaltung gezogen werden. Da ist somit noch mehr als ausreichend 
Luft drin ;-)

Ich werde die Schaltung wohl nochmal genauer auf "kalte" Löststellen, 
etc.
untersuchen müssen ;-(

Gruß
  Daniel

Autor: Magnus M. (magnetus) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
DanDanger schrieb:
> @Holger:
> Ja, das habe ich zerst auch gedacht. Der Spannungsregler (LM 117) kann
> laut Datenblatt einen Dauerstrom von 1.5A liefern. Mein Netzteil
> (Strombegrenzung) sagt mir, das zu keinem Zeitpunkt mehr als 300mA von
> der Schaltung gezogen werden. Da ist somit noch mehr als ausreichend
> Luft drin ;-)

Du hast den Teil des Schaltplans mit der Spannungsreglung noch nicht 
gepostet. Wie hoch ist die Spannung am Ausgang deines Netzteils? Wie 
hoch ist die Strombegrenzung des Netzteils eingestellt?

Gruß,
Magnetus

Autor: Magnus M. (magnetus) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
VCC ist übrigens grottenschlecht geroutet !

Autor: DanDanger (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Die Stromversorgung ist die Standardbeschaltung für dem LM117/317 aus 
dem Datenblatt. Das Teil kann einen Dauerstrom von 1.5A liefern und ist 
zur Zeit auf eine Spannung von 5V eingestellt.
Die Strombegrenzung des Labornetzteils ist auf 2A eingestellt (bei 9V), 
allerdings zieht die Schaltung zu keinem Zeitpunkt mehr als 300mA.

Die Versorgungsspannung an den beiden ICs ist ebenfalls stabil bei 5V
(mit Multimeter nachgemsessen).
Selbst wenn beide ICs im Sockel sind, die Stromversorgung bleibt stabil 
bei 5V.

Gruß
  Daniel

Autor: Magnus M. (magnetus) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
DanDanger schrieb:
> Die Strombegrenzung des Labornetzteils ist auf 2A eingestellt (bei 9V),
> allerdings zieht die Schaltung zu keinem Zeitpunkt mehr als 300mA.

Miss doch mal die Stromaufnahme der Schaltung bei Teilbestückung.

IC1 bestückt, IC2 unbestückt:  Stromaufnahme = ?
IC1 unbestückt, IC2 bestückt:  Stromaufnahme = ?

Gruß,
Magnetus

Autor: Magnus M. (magnetus) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
DanDanger schrieb:
> Die Versorgungsspannung an den beiden ICs ist ebenfalls stabil bei 5V
> (mit Multimeter nachgemsessen).

Das sollte man hier lieber mit einem Oszi messen. Das MM zeigt dir keine 
HF-Schwingung an!

Autor: DanDanger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
IC1 bestückt, IC2 unbestückt:  Stromaufnahme ca. 170mA
IC1 unbestückt, IC2 bestückt:  Stromaufnahme ca. 170mA
IC1 bestückt, IC2 bestückt:  Stromaufnahme ca. 300mA

Irgendwas scheint dafür zu sorgen, das sich die AVRs immer resetten wenn 
beide Controller in die Schaltung eingebaut werden.

Autor: Michael G. (linuxgeek) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die wichtige Frage ist doch: WIE genau hast Du die MCUs gefused?

Autor: Magnus M. (magnetus) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Löte mal versuchsweise bei beiden AVRs_ je ein C mit 100nF _direkt an 
die Pins 7 und 8.

Autor: Magnus M. (magnetus) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du schickst die kompletten 300mA übrigens über eine 0,3mm breite 
Leiterbahn. Dass das Fehler verursacht überrascht mich nicht.

Autor: DanDanger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,
so wie es aussieht scheint's tatsächlich an der schlecht gerouteten 
Stromversorgung auf der Platine zu liegen. Werd' beim nächsten mal 
zusehen,
die Stomversorgung als erstes (mit entsprechender Breite) zu verlegen 
;-)

Für zukünftige Projekte ist es immerhin gut zu Wissen, das der Fehler 
"nur" am Platinenlayout lag.

Nochmal danke an alle, die geholfen haben :-)

Gruß
  Daniel

Autor: Magnus M. (magnetus) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
DanDanger schrieb:
> Nochmal danke an alle, die geholfen haben :-)

Mooooment... Dein (aktuelles) Problem ist mit den beiden Cs alleine 
nicht gelöst!

> so wie es aussieht scheint's tatsächlich an der schlecht gerouteten
> Stromversorgung auf der Platine zu liegen.

Auch wenn es jetzt funktionieren mag, rate ich dir dringend die zu 
dünnen Leiterbahnen mit einem Draht von Hand nachzuverdrahten!

> Nochmal danke an alle, die geholfen haben :-)

Gern geschehen ;)

Gruß,
Magnetus

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.