Forum: Mikrocontroller und Digitale Elektronik Uhrenquarz für CPU-Takt an ATTiny


von Steven (Gast)


Lesenswert?

Hallo,

Ich möchte einen ATTiny2313 mit einem Uhrenquarz (32.768Hz) als 
Haupttaktgeber verwenden.
Da der Controller nicht viel zu berechnen hat, ein möglichst genauer 
Takt erforderlich ist und der Stromverbrauch gering sein soll würde ich 
gerne solch einen Quarz als Taktgeber verwenden.
Meine Schaltung ist mittlerweile geätzt und verlöte, läuft derzeit 
jedoch noch mit dem internen RC Oszillator.
Nun wird aber im Datenblatt bereits von einer Taktversorgung im Bereich 
von 0,4 - 0,9 MHz mittels externem Quarz abgeraten.
Werde ich nachdem ich die Fuses entsprechend eingestellt habe (am 
ehesten trifft hier wohl "Ext. Crystal Osc. 0.4-0.9MHz Start-up time: 
14CK + 65ms" zu)
noch in der Lage sein den Controller mittels ISP zu programmieren?
Wird der Quarz überhaupt anschwingen und den Controller zum Laufen 
bringen?


(Dass die Möglichkeit besteht nur den Timer über einen externen Takt zu 
versorgen weiß ich, da meine Schaltung aber mittlerweile komplett 
aufgebaut ist und der Uhrenquarz an xtal1 und xtal2 hängt würde ich die 
Variante mit dem Uhrenquarz als Haupttaktgeber bevorzugen.)

MfG

Steven

von Peter D. (peda)


Lesenswert?

Steven schrieb:
> Ich möchte einen ATTiny2313 mit einem Uhrenquarz (32.768Hz) als
> Haupttaktgeber verwenden.

Geht laut Datenblatt nicht.

Nimm doch nen üblichen 1.8432MHz Quarz und setze den System Clock 
Prescaler entsprechend (z.B. auf 57.6kHz).


Peter

von Steven (Gast)


Lesenswert?

Vielen dank schonmal für die schnelle Antwort!
Werde die Fuses heute Abend trotzdem mal entsprechend einstellen. 
Vielleicht geht es ja trotz gegensätzlicher Datenblattangaben.
Notfalls erzeuge ich mit einem anderen Controller einen entsprechenden 
Takt um die Fuses wieder zurückzustellen oder verwende einen schnelleren 
Quarz.

MfG

Steven

von Icke ®. (49636b65)


Lesenswert?

Oder einen Quarz mit 4,194304 MHz nehmen. Ergibt prescaled/binär geteilt 
den exakten Sekundentakt.

von Steven (Gast)


Lesenswert?

Da ich diesen Quarz ja wie gesagt ausschließlich Zwecks möglichst 
genauer Taktfrequenz und niedrigem Stromverbrauch verwenden will werde 
ich alternativ wohl eher einen Quarz im spezifizierten Bereich von 
0.4-0.9MHz verwenden. Einen genauen Sekundentakt kann ich dann immer 
noch mittels 16bit Timer im CTC-Modus erzeugen.

MfG

Steven

von Peter D. (peda)


Lesenswert?

Besser wär gewesen, daß schon vor dem Platinenlayout festzustellen und 
dann z.B. nen ATtiny261 zu nehmen, der geht nämlich mit 32kHz:
7.8 Low-frequency Crystal Oscillator


Peter

von sam (Gast)


Lesenswert?

es gibt auch noch eine Möglichkeit:

PD4(T0) oder PD5(T1)
sind die Takteingänge für Timer 0 und 1, d.h. wenn du da einen Oszilator 
anschließt hast du einen gut laufenden Timer und kannst alle 
Zeitkritischen Sachen per Interupt erledigen und den Tiny2313 kannst du 
z.B- auf 1MHz internen Takt Laufen lassen.

Ich denke eine SPI-Programmierung wird bei so langsamen Takt nicht 
möglich oder viel zu langsam sein.

von Steven (Gast)


Lesenswert?

@Peter:
Aus solchen Fehlern lernt man. ;-)
Werde mir bei meinem nächsten Projekt wohl etwas mehr Zeit für die 
Controllerwahl nehmen.

@sam:
Ist mir wie bereits im Eingangspost erwähn geläufig. Müsste dafür 
allerdings ein neues Layout erstellen und meine Schaltung 
dementsprechend neu aufbauen.


Eine Gängigkeit des ISP spielt mittlerweile übrigens auch keine Rolle 
mehr, da das Programm nun funktionsfähig zu sein scheint. Notfalls lege 
ich zur Programmierung einen entsprechenden Takt an XTAL1 an.

Werde morgen dann mal versuchen den Controller am Uhrenquarz zu 
betreiben.
Über Erfolg/ Misserfolg werde ich dann hier berichten.

MfG

Steven

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
Noch kein Account? Hier anmelden.