Forum: Mikrocontroller und Digitale Elektronik Länge der Clockleitung


von Ulrich (Gast)


Lesenswert?

Hi
ich habe hier einen Atmega8 den ich nun von 8 auf 16MHz bringen wollte.
Dazu habe ich mir einen Quaroszillator gekauft. Und wie im AVR-Tutorial
angegeben eingebaut. Dies Fuses habe ich mit PonyProg auf 0000
(4Häckchen) gesetzt und nun läuft nix ;-(.

Die Frage ist nun:
Kann es an der Taktleitung die per Fädeldraht (VeroWire) 6cm lang ist
liegen? Muss das kürzer sein???

Müssen noch andere Fuses vom Lieferzustand umsgestellt werden?


Kann ein so Quarzoszillator Teil 2 Atmega8 betreiben? Müsste laut
Datenblatt vermutlich gehen


In meiner Ausbildung habe ich nie mit >1Mhz gearbeitet und war auch nie
Ausbildungsinhalt deswegen habe ich da absolut keine
Ahnung....leider...

Mfg
Ulrich

von Christoph Kessler (Gast)


Lesenswert?

Die Leitungslänge ist bei 16 MHz noch kein Problem, das verstimmt den
Quarz sicher um ein paar ppm aber das schadet bei Taktquarzen ja nicht.
Störender ist die größere Antennenwirkung langer Zuleitungen auf
irgendwelche Analogschaltungen in der Nähe der Leitung.
Faustformel 1mm = 1 nH (und Blindwiderstand XL=2Pi*f*L) das wären 60 nH
mit 6cm Draht

von Unbekannter (Gast)


Lesenswert?

Tja, falsch gedacht.

16 cm Taktleitung sind ein großes Problem. Es geht hier nicht um 16
MHz Sinus, sondern um 16 MHz Rechteck! So ein Prozessor will
ordentliche Flanken damit er funktioniert.

von Eckhard (Gast)


Lesenswert?

Hallo,

6 cm sollten kein Problem sein. Dein Problem wird höchstwahrscheinlich
woanders liegen. Ich hab hier auch schon 20 MHz über 25 cm mit ner
strippe gemacht. Kann mir nicht vorstellen das die AVRs da so
empfindlich sind was das Rechteck betrifft.

Eckhard

von TravelRec. (Gast)


Lesenswert?

@ Unbekannter: auch falsch gedacht, ein Prozessor läuft sogar mit Sinus,
der Pegelunterschied reicht, da die Aufbereitung im Inneren mittels
Schmitt-Trigger erfolgt. Nimm mal einen Oszi, und guck Dir das Signal
am Quarz ohne gesetzte CKOPT mal an!

von Ulrich (Gast)


Lesenswert?

wie eichtig ist den ein abblockkondensator am Quaroszillator

von Christoph Kessler (Gast)


Lesenswert?

Das ist kein Abblockkondensator sondern Bestandteil der
Oszillatorschaltung. Da der Oszillatortransistor die Phase um 180 Grad
dreht, muß die externe Schaltung nochmal insgesamt 180 Grad
Phasendrehung haben, damit die Schwingbedingung erfüllt ist.

von Eckhard (Gast)


Lesenswert?

Hi,

es ging hier nicht um einen Quarz, sonder um einen Oszillator.
Die brauchen keine externen Bauteile mehr. Ich habe aber immer einen
Abblockkondensator zwischen vcc und gnd gesetzt. MAche ich eigentlich
bei jedem IC, für die paar Cent vermeide ich den möglichen Ärger lieber
von Anfang an.


Eckhard

von Ulrich (Gast)


Lesenswert?

ich weiß einfach nicht weiter.

Wenn ich am Ausgang vom Oszillator mit einem "Billig" Messgerät messe
komme ich auf 2,3V(Gleichspannung eingestellt) das könnte ja eigentlich
passen.

Als Anhang  ein Screenshot wie die fuses aktuell eingestellt sein
müssten.

Nur nochmal zur Sicherheit.
Xtal1 an den Oszillator
Xtal2 frei in der Luft
Stimmt das soweit?

Mfg
Ulrich

von Ulrich (Gast)


Angehängte Dateien:

Lesenswert?

Anhang

von Ulrich (Gast)


Lesenswert?

Noch eine weitere Idee:
An meinem Atmega8 habe ich bisher keinerlei Kondensatoren in er
externen Beschaltung eingebaut. Kann es sein das dies bei 8 MHz noch
nichts ausmacht aber bei 16MHz den Betreib verhindert?

von TravelRec. (Gast)


Lesenswert?

Mit Billigmeßgeräten kannst Du gar nichts messen, die 2,3V sind aber
plausibel, da das Meßgerät den schnellen Wechsel zwischen 5 und 0V
interpoliert und etwa die Hälfte dabei heraus kommt.
Abblockkondensatoren gehören in jedem Fall an jeden Chip und an den
Quarzoszillator auch - zwischen Masse und 5V (oder GND und Vcc, wie man
heute sagt). Ich denke aber nicht, daß ohne diese der Prozessor gar
nicht laufen sollte, nur ist er halt extrem sensibel, was Störungen
angeht, auch jene in der Betriebsspannung.

von Unbekannter (Gast)


Lesenswert?

Asche auf mein Haupt. Der Takteingang hat natürlich einen
Schmitt-Trigger...

@Ulrich:

> An meinem Atmega8 habe ich bisher keinerlei Kondensatoren in
> externen Beschaltung eingebaut.

Großer, sehr großer Fehler...

Überlege mal, warum selbst in Billigst-Massen-Produkten aus China diese
Abblockkondensatoren drin sind. Die sparen normalerweise selbst an der
5. Stelle hinter dem Komma. Die bauen kein unnötiges Stäubchen in
Elektronik ein.

Konkret: Du brauchst Abblockkondensatoren an Deinem Quarzoszillator und
an Deinem Mikrocontroller und am Feststpannungsregler.

von Ulrich (Gast)


Lesenswert?

Welcher Festspannungsregler fg

Der aktuelle Zustand meienr Atmega8 Vernichtungsmaschine ist so:
Einer wird sehr sehr heiß sobald er nur etwas von +5V merkt ==>
Hinüber
Auf den anderen habe ich immer noch keinen Zugriff....

Könnte jemand von euch bestätigen das der Screenshot mit den fueses
einstellungen soweit OK ist? Ich werde das gefühl nicht los das es
daran liegt.

Schonmal vielen Dank für eure Mühe

von TravelRec. (Gast)


Lesenswert?

Heißer ATMEGA? Auweia... Das hat dann aber nichts mit den Fuses zu tun,
die kannst Du umproggen wie Du willst aber dabei wird der Prozi nicht
heiß. Stelle doch mal einen Schaltplan Deiner Schaltung ´rein oder mach
´nen Foto von dem Teil, dann hat das Raten ein Ende...

von Ulrich (Gast)


Lesenswert?

Oder kann es sein dass das fuse umschreiben auf externen Takt nicht
funktioniert wenn er noch nicht angeschlossen ist? Muss der externe
Takt bereits angeschlossen sein wenn man fuses-umschreibt? Bevor ich
nochmal einen Atmega8 verteste frage ich lieber...

von hans dieter (Gast)


Lesenswert?

die fuses werden gelatched und dann beim reset geschrieben.
schreib mal, was du wo angeschlossen hast inkl. masse und vcc

von Mattias (Gast)


Lesenswert?

Die fuses sind soweit richtig.
Versuch doch mal mit einem Frequenzgenerator (Ausgang TTL) so um 1 MHz
an XTAL1 ranzugehen, ob er dann reagiert. So kannst Du wenigstens
sehen, ob der Mega8 noch lebt. Das hat bei mir immer funktioniert.
Schwingt der Oszillator überhaupt???
Hat Oszillator und Mega8 die selbe Masse ???

Mattias

von Ulrich (Gast)


Lesenswert?

Versorgt wird die Schaltung von einem ATX-Netzteil

An den Atmega8 sind (direkt ohne Kondesator Widerstand Spule
usw.)Angeschlossen

+5V ==> VCC (Pin7)
+5V ==> AVCC (Pin20)
+5V ==> AREF (Pin21)
GND ==> GND (Pin8)
GND ==> GND (Pin22)
SCK, MISO, MOSI und Reset gehen an diesen Programmieradapter ==>
s-huehn.de/elektronik/avr-prog/avr-prog.htm
Nicht so wichtig:
TXD und RXD gehen an einen 2. Mikrocontroller
Pin 12,13,14 gehen auf einen anderen IC
Alle anderen Pins hängen in der Luft (aucht XTAL2 falls dies eine
Bedeutung hat.)

Bei 8 MHz funktioniert das alles Problemlos.

Nun will ich einfach den Taktausgang vom Oszillator auf XTAL1 geben und
die Fuses umstellen und das geht nicht?

Was für infos kann ich auch sonst noch geben damit ihr mir helfen
könnt? Irgendwie muss es doch gehen?

von Ulrich (Gast)


Lesenswert?

Keine Ideen ?

von Jogibär (Gast)


Lesenswert?

Hallo,

der Mega8 ist aber kein L Typ, oder ?

Jogibär

von Ulrich (Gast)


Lesenswert?

Nö soweit ich weiß nicht:

Auf dem verwendeten chip steht

ATMEGA8-16PI

von Ulrich (Gast)


Lesenswert?

Ich betreibe die atmega8 jetzt einfach mit dem Internen ungenauen Quarz,
und bleibe bei blos 8MHZ. 2,75Euro für jeden Versuch dies zu ändern wird
mir nun langsam zu teuer. Da verwende ich lieber 2 Atmega8 Parallel;
versuche die Rechnungen auf Beide zu Verteilen, auch wenn dadurch
Latenzen zustande kommen. Ich hoffe auch das ich mit 1Mbit seriell
übertragen kann ohne externen Quarz. Beide Atmega8 dürften sich ja
proportional erwärmen was dazu führt das die Kommunikation sicher
ablaufen müsste. Falls noch jemand eine Idee hat was ich beim Fuses
brennen falsch mache, soll er sich melden

Danke für eure Hilfe

Mfg
Ulrich

von Hannes L. (hannes)


Lesenswert?

Ein PC-Netzteil ist zum Experimentieren ungeeignet. Beim kleinsten
Fehler können die hohen Ströme alles zerstören.

Ein AVR wird im Normalbetrieb nicht warm. Auch nicht bei höchsten
Taktraten.

...

von Ulrich (Gast)


Lesenswert?

Danke für die Mühe, aber das habe ich auch so gewusst.

1. Ist ja klar das es nicht normal ist das ein Mikrocontroller so heiß
werden soll, dass man auf ihm Eier anbraten kann
2. Das man bei einem Computernetzteil Sicherungen benötigt war mir
bereits klar nachdem eine 2m lange Leitung auf einmal ohne Isolierung
rumhing ;-) Seitdem sind Sicherungen eingebaut.

von TravelRec. (Gast)


Lesenswert?

Der Controller könnte heiß werden, weil alle nicht beschalteten Pins
floaten und somit die Eingangspuffer fett Strom ziehen. Einfach mal die
PullUps einschalten oder Pins als Ausgang programmieren. Wenn Du die
Reset-Fuse umprogrammierst, sperrst Du Dich aus, weil dann kein ISP
mehr möglich ist, nur über HV-Programmierung kann man das wieder
rückgängig machen. Wenn Du die externe Takt Fuse umprogrammierst,
kannst Du den Controller mit externem Takt an XTAL1 wiedererwecken. Die
 Frequenz sollte mindestens 4x so hoch wie die maximal zu erwartende
ISP-Frequenz sein.

von Ulrich (Gast)


Lesenswert?

Aso die Frequnz muss 4x größer sein als ISP.

Mit welchem Programm kann ich mit einer ISP Frequenz im Kiloherzbereich
arbeiten? Ponyprog geht nicht.

von Hannes L. (hannes)


Lesenswert?

Mit Pony geht das wohl auch...

Dazu muss glaube ein "undokumentierter" Eintrag in die Ini-Datei
geschrieben werden. Genaues weiß ich nicht, da ich Pony nicht nutze.
Aber das wurde hier im Forum schon diskutiert. Der Eintrag könnte
"veryslow" gehießen haben, bin da aber nicht sicher.

Ich würde jetzt gern auf die Suchfunktion verweisen, die ist aber
leider deaktiviert...

...

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.