Zitat Zitat von jeffgen987
Habe vom einem Freund eine uralte Netzwerkkarte bekommen. Die hat einen Qszilator (der für einen ATmega16 leider zu schnell ist, weil 20MHz) und noch haufen anderes, nützliches Zeug drauf.

Mal folgende Frage: Was ist der Unterschied zwischen einem Oszilator und einem Quarz?
Bild hier  
Ein Quarz ist ein Quarz, nix weiter. Er besteht aus einem Quarzplättchen/scheibchen, Kontaktierungen und einem Gehäuse.
Um ihn zu betreiben, braucht man eine Treiberschaltung die man selber aufbauen kann. Will man einen µC damit takten, kann man den Quarz oft direkt an den µC hängen, falls er eine Treiberstufe dafür mitbringt. Bei AVRs ist das der Fall. Die Fuses müssen darauf angepasst werden. Quarze gibt es für viele verschiedene Frequenzen. Bei niedrigen Frequenzen (zB 32.768 kHz) werden sie in Parallelresonanz betrieben, bei höheren Frequenzen in Serienresonanz. Bis Mitte 20MHz sind die Quarze Grundtonquarze. Darüber verwendet man Obertonquarze, d.h. es wird nicht die Grundschwingung des Quarzes genutzt, sinderen ein ungerader Oberton. Ein 100MHz Quarz ist mit sicherheit ein 20MHz Quarz, der beim 5.Oberton betrieben wird; man muss niedrigere Resonansfrequenzen also rausfiltern/unterdrücken.

Bild hier  
Quarzoszillatoren sind ICs mit Quarz. Sie haben eigene Spannungsversorgung und liefern ein TTL-Signal im angegebenen Takt. Teilweise temperaturkompensiert, für bessere Genauigkeit. Sie snd in der Lage, grössere Schaltungen mit einem Takt zu versorgen, da da oft viele ICs ein Taktsignal brauchen.

AVRs kannst du mit folgenden Takten betreiben:
  • Interner RC-Oszillator (-->Calibrated Internal RC Oscillator)
    + ohne Extrakosten und Platzbedarf
    - nicht sehr genau, nur für 1, 2, 4, 8, MHz
  • Externer RC-Oszillator (-->External RC Oscillator)
    + billig, platzsparend
    - nicht sehr genau
  • Keramik-Oszillator (-->Ceramic Resonator)
    + teilweise preiswerter als Quarz und mit integrierten Phasendreher-Kondensatoren
    - nicht so genau wie Quarz
  • Quarz (-->External Crystal/External Low-frequency Crystal)
    + genauer
    - teurer als RC-Oszillator und recht platzfressend (HC18U)
  • Externes Taktsignal (-->External Clock)
    Der Takt kann irgendwoher kommen, zB von einem zweiten µC, von dessen Quarz-Takt man was abzweigt.


Die Oszillaror-Treiber Einstellungen der AVRs bieten einiges an Optionen, u.a. auch die Anpassung an Umgebungsbedingungen: die Treiberstufe kann mit mehr Leistung gefahren werden, um bei schlechten Umgebungsbedingungen (noisy environment) im Takt zu bleiben oder andere Taktverbraucher zu versorgen. Braucht dann aber natürlich mehr Leistung.


Ein AVR, der für 16MHz spezifiziert ist, arbeitet meiner Erfahrung nach noch problem- und klaglos bei 22MHz, wenn man bei normalen Temperaturen arbeitet und VCC bei 5V lässt. Hab das nur mal gecheckt und mich gewundert, daß es geht. Ob EEPROM und SPM noch gehen hab ich allerdings nicht getestet. Aber 20% übertekten tut AVRs nix. Beim Entwurf wird man aber trotzdem gerne innerhalb der Spez bleiben...