mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Quarzfrequenz einstellen


Autor: Lars Berenz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo und Guten morgen!

Ich habe eine Frage:

Da ich noch ziemlich am Anfang mit der Programmierung von 
Mikrocontrollern stehe, möchte ich nun meine aufgebaute Schaltung in 
Betrieb nehmen.
Es ist in der Schaltung ein Quarz mit einer bestimmten Frequenz verbaut.

Aber nun weiß ich leider nicht, wie ich dem AVR Studio und dem Atmega8 
sage, wie die Frequenz des Quarzes ist?!

In den Fuses kann man ja schließlich nur auswählen, wo der Controller 
seinen Takt hernehmen soll, aber nicht, wie die Frequenz selbst ist.

Unter "Project Configuration" kann man auch eine Frequenz angeben, 
allerding weiß ich nicht, ob das dann genau meine Frage beantwortet?!


Vielen Dank!

Gruß
lars

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lars Berenz schrieb:

> Unter "Project Configuration" kann man auch eine Frequenz angeben,
> allerding weiß ich nicht, ob das dann genau meine Frage beantwortet?!

Damit hast du dir deine Frage beantwortet.

Die Frequenz, die du dort angibst, wird deinem C Programmm in Form eines 
Makros namens F_CPU zur Verfügung gestellt. Im Prinzip also ein

#define F_CPU 3456789   // oder was du dann auch immer dort angibst

nur das dein C-Source dieses #define nicht selber machen musst, sondern 
die IDE dieses Makro für dich definiert.

Autor: Lars Berenz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wunderbar, vielen herzlichen Dank, du hast mir sehr weitergeholfen!

Autor: Joachim K. (minifloat)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du musst die Fuses richtig setzen. Zum einen, da hast du Recht, dass die 
richtige Taktquelle ausgewählt ist. Zum anderen der Frequenzbereich des 
Quarzes. Dazu gibt es schöne Tabellen und sogar Beispiele im Datenblatt.

Die genaue Frequenz steht auf dem Quarz(in Zahlen eingefräst oder 
aufgedruckt).
Wie gesagt, an der Stelle kann man nur einstellen
- ob es ein RC-Oszillator, ein Keramikresonator oder Low-, Medium- oder
  High-Frerquency Quarz ist(CLKSEL3..0)
- ob der Prozessor den Quarz Fullswing bis zu den 
Betriebsspannungsgrenzen
  oder normal betrieben soll(CKOPT).
- ob der Haupttakt nochmal durch 8 geteilt werden soll, bevor er 
verwende
  wird(CLKDIV8)

Der Prozessor hat keine Möglichkeit, die Frequenz des Quarzes selbst zu 
beeinflussen(es sei denn man treibt Spirenzchen mit Trimmpoti-ICs oder 
geschalteten Kapazitäten).
mfg mf

PS: na klasse, jetz versteh ich ihn endlich.

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.