Hallo zusammen, ich habe eben gerade beim Schmöckern in diesem Forum mitbekommen, dass man zum Betreiben von einigen AVR-Microcontrolern gar keinen externen Quarz braucht, weil der Takt auch intern generiert werden kann. Ich nehme an, der interne ist etwas ungenauer als ein externer. Wie ungenau kann der interne Takt in etwa sein? Ist er irgendwie Temperatur oder Luftfeuchtigkeitsabhängig? Was spricht ausser der Genauigkeit noch für externe Taktung? Danke schon mal und viele Grüsse Karl
externe taktung ist variabler...du kannst dir den quarz raussuchen. Ich denke jeder takt ist in geringem ausmaß von temperatur uws. abhängig. Das was in dem AVR drin ist ist ja nur ein RC oszillator. Der ist wirklich ungenau. Ich hab z.B. mal eine Uhr gebaut und sie genau auf 1ne sekunde abgestimmt. 1 Tag später war sie noch relativ genau und 2 tage ging sie mehrere minuten falsch. Was noch für einen externen spricht ist, das man da höhere taktungen als 8Mhz erreichen kann (maximun des internen). Der interne kann auf folgende frequenzen eingestellt werden: 1,2,3,8 Mhz. (lässt sich über die fuses einstellen)
Würde auf einem Print auf alle Fälle einen Quarz einplanen. Solltest du zB. einmal das falsche Fuse (ext.Takt)setzten, steht dein AVR und lässt sich nicht mehr programmieren. Dann brauchst du den externen Quarz. RTCs mittels Software auf einem MC - geht selten genau. Für zeitunkritische Anwendungen reicht der eingebaute Quarz. SG Josef
Der interne RC-Oszillator kann 1, 2, 4 (nicht 3) oder 8 MHz. Automatisch calibriert wird er nur bei 1MHz. Bei den anderen Einstellungen muss man das von Hand erledigen. Externer Quarz ist meist genauer und temperaturstabiler. Dafür kostet er oft 2 Portleitungen. Solange der MC nicht extrem genau sein muss (serielle Kommunikation, Uhr) kommt man mit dem internen Takt aus. Externer Quarzoszillator ist etwas temperaturstabiler, frisst aber allerhand Strom und erzeugt 'ne Menge Störimpulse. ...
Hallo zusammen, nach euren Kommentaren zu urteilen, reicht der interne Taktgeber für meine Zwecke voll aus. Habe eben irgendwo im Internet noch eine absolut puristische Schaltung gesehen: Ein Mega8, bei dem nur einige Port-Pins (die irgendwas umschalten) und die Stromversorgung angeschlossen sind. Die Minimalschaltung im Microcontroler-Tutorial ist dagegen hochkompliziert :-) Fehlt nur noch die Spannungsreglerschaltung, die die stabilisierte 5V-Spannung aus beliebigen Eingangsspannungen generieren könnte (also quasi noch nen 7805 + Kondensatoren) und die Solarzelle samt Pufferbatterie auf dem Chip-Rücken. ;-) Dank an euch alle. Meine Frage ist hinreichend genau beantwortet. Viele Grüsse Karl
@Karl... Du sprichst das Tutorial an. Kannst du dir vorstellen, dass das für den AT90S4433 geschrieben war? Der hatte noch keinen internen RC-Oszillator, brauchte daher einen Quarz oder Quarzoszillator. Warum nun ein Quarzoszillator genommen wurde, weiß vermutlich nur der Autor. Nun wurde aber der Mega8 plötzlich so preiswert, dass es keinen Sinn mehr macht, den 4433 einzusetzen, inzwischen ist der 4433 auch (fast) nicht mehr erhältlich. Sicher ist das Tutorial daher nicht mehr ganz zeitgemäß, aber sollten wir nicht froh sein, dass sich überhaupt jemand die Arbeit macht, ein Tutorial zu schreiben? Und das noch ohne jegliche Vergütung. Klar, ein Mega8 braucht zum Rennen nur die beiden Keramik-C's an Vcc und AVcc und die Peripherie an I/O. Und das ist gut so! ...
Aber warum ist das Tutorial denn so dogmatisch festgeschrieben, findet sich tatsächlich niemand der das erweitern bzw. aktualisieren möchte? Bei dem blühenden Wiki kann ich mir das gar nicht vorstellen. Für Anfänger könnte man sicher ein paar Stolpersteine entfernen. Hätte ich z.B. von avrdude für Windows gewusst, was hätte ich mir für einen Haufen Ärger mit yaap sparen können! Die Elkos für den MAX 232 sind auch sowas, laut Datenblatt bräuchte ich 1 uF, habe aber immer 22 uF verbaut, weil man als Anfänger so ein Tutorial natürlich nie in Frage stellt. Ein paar mehr Aufforderungen zum Selbstdenken hätten nicht geschadet.
Der interne RC-Oszillator ist halt stark Temperaturabhängig. Habe Platinen mit RS232 in einen Schaltschrank gesetzt. Vorher ausprobiert, bis zu welcher Ober und Untergrenze des Timers ein PC die Zeichen versteht, dann den Mittelwert genommen. Bei 40 Grad im Schrank geht's nicht mehr... Ein externer Quarz beseitigt dies Problem. Der oszillator ist dann aber immer noch intern. Einen externen Takt (also einen vollständig externen Oszillator) zu benutzen kann sinnvoll sein, um mehrere uCs zu synchronisieren.
Hallo HanneS, tut mir leid, dass mein Posting als Kritik am Tutorial rüber kam. So war das nicht gemeint. Für mich war das Tutorial eine der wichtigsten Quellen bei der Einarbeitung in Microcontroler und speziell AVR. Vielen Dank an den Autor und weiter so. Viele Grüsse Karl
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.