mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ATXmega RTC mit inter. 32 kHz Osc


Autor: Peter Speemann (covalin)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schönen Abend,

kann vielleicht jemand bisschen Licht ins Dunkel bringen bzgl. RTC am 
ATxmega128A1.

1.)
In der Doku (XMega A Manual, AppNote AVR1003 und AppNote AVR1314) wird 
für den internen 32kHz Oszillator (RC32K) teileweise von 32.000 Hz und 
dann wiederrum von 32.768 Hz gesprochen. Wenn man sich die Beispiele im 
AppNote AVR1314 (Real Time Counter) ansieht, dann muss es sich um 32.768 
Hz handeln. Kann das irgendjemand bestätigen?

2.)
Das Beispiel aus AVR1314 (Real Time Counter) funktioniert prima. Wenn 
man nun aber den Interrupt jede ms auslösen möchte, dann kommt dieser 
nur ca. alle 2,5 s (Wert 0 in RTC.PER). Ab einem Wert von 2 in RTC.PER 
erhält man eine mäßig genaue 3ms Uhr. Worin ist dies begründet?

3.)
AVR1314 (Real Time Counter) steht unter 2.3, dass der interne 32 kHz 
Oszillator verwendet werde kann. Im Manual sowie in der iox128a1.h sind 
dann aber nur die folgenden Quellen zulässig:

CLK_RTCSRC_ULP_gc = (0x00<<1),  /* 1kHz from internal 32kHz ULP */
CLK_RTCSRC_TOSC_gc = (0x01<<1),  /* 1kHz from 32kHz crystal oscillator 
on TOSC */
CLK_RTCSRC_RCOSC_gc = (0x02<<1),  /* 1kHz from internal 32kHz RC 
oscillator */
CLK_RTCSRC_TOSC32_gc = (0x05<<1),  /* 32kHz from 32kHz crystal 
oscillator on TOSC */

Die Varianten mit TOSC verweisen ja auf einen extern angeschlossenen 
Quarz. Oder sehe ich das falsch?

Ist es überhaupt möglich den intern 32.768 Hz Oszillator direkt zu 
verwednen und nicht nur das 1 kHz Signal?

4.)
Wie könnte man eine ms-Uhr mit den internen Taktgebern realisieren?

Ich weiß, viel Fragen, aber vielleicht hat sich jemand schon damit mal 
beschäftigt.

Gruß

Autor: Yatko Jaens (denim)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter Speemann schrieb:
> CLK_RTCSRC_ULP_gc = (0x00<<1),  /* 1kHz from internal 32kHz ULP */
> CLK_RTCSRC_TOSC_gc = (0x01<<1),  /* 1kHz from 32kHz crystal oscillator
> on TOSC */
> CLK_RTCSRC_RCOSC_gc = (0x02<<1),  /* 1kHz from internal 32kHz RC
> oscillator */
> CLK_RTCSRC_TOSC32_gc = (0x05<<1),  /* 32kHz from 32kHz crystal
> oscillator on TOSC */
>
> Die Varianten mit TOSC verweisen ja auf einen extern angeschlossenen
> Quarz. Oder sehe ich das falsch?
>
> Ist es überhaupt möglich den intern 32.768 Hz Oszillator direkt zu
> verwednen und nicht nur das 1 kHz Signal?

scheint mir auch so. Es müsste doch aber mit dem internen PLL gehen (den 
Takt wieder von 1024Hz auf ein vielfaches hochzubekommen ). Bloß wie :)

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Yatko Jaens schrieb:
> Es müsste doch aber mit dem internen PLL gehen (den
> Takt wieder von 1024Hz auf ein vielfaches hochzubekommen ). Bloß wie :)

Nee, interne PLL braucht mindestens 312,5kHz Eingangsfrequenz.

Peter Speemann schrieb:
> Ist es überhaupt möglich den intern 32.768 Hz Oszillator direkt zu
> verwednen und nicht nur das 1 kHz Signal?

Nein. Nur bei Verwendung eines Uhrenquarzes an den TOSC-Pins können die 
32768Hz wahlweise direkt in einen Timer (RTC) eingespeist werden.

Autor: Karl-Heinz Kruggel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Xmega D Manual: seite 58, Figure 6-1 (clock system)
da sieht man, dass als Source-Clock 1.)PLL nicht möglich ist. 2.)wohl 
aber interner 32kHz Oscillator.(kann geteilt werden).
Desweiteren: Seite 67 stehen alle Group-Configurationswerte für den 
Source Multiplexer.
Soweit die Theorie, in der Praxis habe ich Schwierigkeiten. Wer noch?
KH Kruggel

Autor: Martin J. (bluematrix) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert

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.