Anfänger-Frage zu Quarz/Baudrate/Sekunden-Takt

Gast #1665851
Lesenswert?

Hi,

ich möchte mit einem ATMEGA32 sowohl mit einem Handy seriell 
kommunizieren als auch einen möglichst genauen Sekunden-Takt generieren.

Was ist sinnvoller: Einen Quarz mit z.B. 10,2400 Mhz zu verwenden, der 
ohne Verrenkungen mit dem Prescaler eine genaue Sekundenbasis erzeugen 
kann, oder doch lieber einen 11,0592 MHz verwenden, der die gängigen 
Baudraten erzeugen kann?

Gruß,
Peter
Gast #1665861
Lesenswert?

> Was ist sinnvoller: Einen Quarz mit z.B. 10,2400 Mhz zu verwenden, der
> ohne Verrenkungen mit dem Prescaler eine genaue Sekundenbasis erzeugen
> kann, oder doch lieber einen 11,0592 MHz verwenden, der die gängigen
> Baudraten erzeugen kann?

Nimm nen Baudratenquarz, das spart em ehesten Komplikationen auf der 
Seriellen. Die 'Verrenkungen' brauchst Du eh sofern Du eine genaue(tm) 
Zeit haben möchtest [1]. Und falls Du keine genaue(tm) Zeit brauchst, 
dann kommst auch mit dem Baudratenquarz (ohne Verrenkungen) genau 
genug(tm) hin :-)

[1] 
http://www.mikrocontroller.net/articles/AVR_-_Die_genaue_Sekunde_/_RTC
#1665866
Lesenswert?

Ich vermute mal das du einen Frequenzzähler, oder Frequenzsynthesizer 
bauen willst.

Wenn dem so ist, würde ich 2 getrennte Quarze nehmen. Den 11,0592MHz um 
den
Mikroprozessor zu takten und damit auf die genaue Baudrate zu kommen, 
und einen 10 MHz Quarz für die eigentliche Zeitbasis des Zählers zu 
nehmen. Den Zähler würde ich gegebenfalls hartwäremäßig aufbauen und das 
Ergebnis dem Mikroprozessor zur Weiterverarbeitung übermitteln. Das 
dürfte vermutlich genauer sein als den Mikroprozessor zum Zählen zu 
bemühen.
10MHz ist eine in der Messtechnik übliche Referenzfrequenz. Je nach 
Anforderung an die Stabilität , Genauigkeit und Auflösung des Zählers 
kann man dann auch gegebenfalls einen Quarzofen, den es in verschiedene 
Stabilitätsklassen gibt, oder gar einen Rubidiumfrequenznormal als 
Zeitbasisfrequenz nehmen.
Gast #1665886
Lesenswert?

Hi

>Wenn dem so ist, würde ich 2 getrennte Quarze nehmen. Den 11,0592MHz um
>den Mikroprozessor zu takten und damit auf die genaue Baudrate zu kommen,
>und einen 10 MHz Quarz für die eigentliche Zeitbasis des Zählers zu
>nehmen.

Mit einem 10MHz Takt sind Baudraten <=76800 Baud mit einem akzeptablen 
Fehler erreichbar. Ein zusätzlicher Baudratenquarz ist unnötig.

MfG Spess
#1666017
Lesenswert?

Peter Dannegger

Ich weis ja nicht woher du diese Kenntnis hast.
Das muss du mir mal zeigen wie man nur mit einen Mikroprozessor einen 
9stelligen Zähler baut, der auch auf der letzten Stelle genau misst.

Aber in der Messtechnik ist nach wie vor 10MHz als Referenzfrequenz auch 
heute gebräuchlich. Praktisch alle Zähler Generatoren der Premiumklasse 
haben einen 10MHz Referenzeingang um eben diese an eine genaue 
Referenzfrequenz anbinden zu können. Auch heute wird das Erfassen bzw 
Generieren einer Frequenz eben nicht mit dem Mikroprozessor gemacht, 
sondern mit mittlerweile speziell dafür designten Chips.
Mit einen Mikroprozessor der gleichzeitig noch die Bedienung abarbeiten 
soll ( und eventuell noch einiges mehr ) wird nur gezählt, wenn die 
Anforderungen an Genauigkeit gering bzw zweitrangig sind.

Schaue doch einfach mal in Serviceanleitungen von Agilent Rohde/Schwarz 
usw hinein.

Aber vermutlich habe ich den Peter ganz zu Anfang wohl falsch 
verstanden.
Vielleicht will er ja nur eine Uhr implementieren. Da sind die 
Anforderungen an Genauigkeit und Stabilität ja sehr gering. Da geht 
sowas natürlich.

Ralph Berres
#1666036
Lesenswert?

Peter Dannegger

Ich habe mich nur etwas daran gestört, das 10 MHz Referenzfrequenz
in der Messtechnik ein Relikt aus der TTL Zeit ist, und man heute 
einfach einen x beliebigen Quarz verwenden würde. Das konnte ich so 
einfach nicht stehen lassen.

Nichts für ungut

Ralph Berres
Gast #1666067
Lesenswert?

wie wärs mit einem zweiten quarz - einem uhrenquarz?
gibt mcus mit 2 ports für quarze. oder den treiber dafür schnell selber 
gezimmert und dann an einen timer clock eingang für den timer.

oder vielleicht eine RTC wie ds1337?
Gast #1666444
Lesenswert?

Hallo,

danke für eure Antworten...ich will die Sekunde tatsächlich nur für eine 
"schnöde" Uhr generieren und nicht für einen 10-Stelligen Frequenzzähler 
;)

Das Handy geht glaube ich bis 115.2kbps, aber um SMS zuversenden werde 
ich vermutlich mit 9600bps begnügen.

Wenn ich das richtig verstanden habe, kann ich mit einem 11,0592 Mhz 
Quarz jedoch nicht nur die Baudrate fehlerfrei einstellen, sondern 
gleich auch noch die Sekunde ohne Rest teilen, also quasi beide Probleme 
erschlagen:

11059200 / 16384 = 675

Oder mache ich hier einen Denkfehler? Dann wäre das ja der Ideale Quarz 
für diverse Projekte, oder?

Gruß,
Peter
#1666644
Lesenswert?

Peter schrieb:
> Wenn ich das richtig verstanden habe, kann ich mit einem 11,0592 Mhz
> Quarz jedoch nicht nur die Baudrate fehlerfrei einstellen, sondern
> gleich auch noch die Sekunde ohne Rest teilen, also quasi beide Probleme
> erschlagen:
>
> 11059200 / 16384 = 675
>
> Oder mache ich hier einen Denkfehler? Dann wäre das ja der Ideale Quarz
> für diverse Projekte, oder?

Nö, passt schon.

Aber Sekunden sind grundsätzlich immer durch einen ganzzahligen Teiler 
möglich, solange der Quarz einen ganzzahligen Takt hat ;-) Die Frage ist 
höchstens, inwiefern man mit den vorhandenen Timern das ganze so machen 
kann, dass der CPU-Aufwand gering bleibt (insbesondere wenn man den 
Controller zwischendurch schlafen schicken will, um Strom zu sparen).

Andreas
#1666728
Lesenswert?

Peter schrieb:

> gleich auch noch die Sekunde ohne Rest teilen, also quasi beide Probleme
> erschlagen:
>
> 11059200 / 16384 = 675


Du hast hier eine Fehlannahme:
Dein Quarz macht nicht exakt 11059200 Hz.
Der macht vielleicht 11059282 oder 11059167 oder irgendwelche Werte 
dazwischen, je nach Temperatur und Quarz. Aber exakt 11059200 macht der 
mit Sicherheit nicht.

D.h. deinen Faktor von 675 kannst du dir schon wieder abschminken. Wenn 
die Uhr ein paar Stunden laufen soll, mag das noch gehen, aber 
spätestens nach ein paar Tagen wirst du Abweichungen im Sekundenbereich 
haben. Nach ein paar Monaten schon mehr.
Gast #1666760
Lesenswert?

Wenn der Mega32 mit 5 Volt läuft dann 14,7456 MHz (Baudratenquarz)
http://www.reichelt.de/?ACTION=3;GROUP=B41;GROUPID=3173;ARTICLE=68890;SID=253fB8SKwQARkAAG1Vh68f3c63ec6752fa925d046a0b8c55addd7

Bei 3,3 Volt 4,9152 MHz (UART z.B dann 19200 und vielfache)
http://www.reichelt.de/?ACTION=3;GROUP=B41;GROUPID=3173;ARTICLE=32841;SID=253fB8SKwQARkAAG1Vh68f3c63ec6752fa925d046a0b8c55addd7

Beide Vielfache vom Uhrenquarz 32,768 kHz daher "Uhrtauglich"

avr

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren