ATtiny 2313 0,1MHz Quarz

OP (Firma: H.) #3675062
Lesenswert?

Hallo Leute,

ich habe einen ATtiny 2313 und wollte ihn mit einem externen 100.000Hz 
Quarz
betreiebn. Auf ihm läuft ein Uhrprogramm. Der Quarz soll die Taktquelle 
sein.
Nun zum Problem. Ich weis nicht wie ich die Fuse Bits einstellen muss.
Laut meiner Kenntnis CKSEL 1011/SUT 11/Lowbite FB/ Highbite DF/ Extended 
FF.

Der Quarz soll mit zwei 18pF Kondensatoren an XTAL1 & XTAL2 betrieben 
werden.
Nun zur Frage.

Kann mir jemand sagen ob die Einstellungen sitmmen oder nicht?!

Einen Chip habe ich schon verbrannt da ich im Extended Bite FB statt FF 
stehen hatte.

Deshalb nun die Frage ob das so Funktioniert?!

Danke für euere Hilfe schonmal :-)!
Gast #3675069
Lesenswert?

> ich habe einen ATtiny 2313 und wollte ihn mit einem externen 100.000Hz
> Quarz betreiebn.

Der Quarzoszillator im ATTiny wird mit einem solchen Quarz nicht 
funktionieren. Du brauchst eine andere Lösung...
#3675304
Lesenswert?

Hi Chris,

Du kannst zwar den Clock per Software justieren,
aber, den Oszillator mit der passenden Frequenz
solltest trotzdem auswählen.

Für eine (Echtzeit)Uhr ist's auch nicht gar so auf mal
Pi-Daumen zu wählen.
Es hängt von einigen Faktoren, wie µC-Eigenheiten,
wie (Umwelt)-Bedingungen ab.

Erst dann könntest daran gehen in den Registern die
notwendigen Einstellungen zu machen.

Der 100kHz ist für den 2313er recht grob eingepaukt.

Auf der Atmel-Seite, oder auch hier wirst sicher fündig,
wie man eine Uhr aufbaut.

Anhaltspunkt - Echtzeit-Uhren_Chip's werden vorwiegend
mit den üblichen 32,768kHz, oder ein passend Vielfaches getaktet.

Beim Controller ist es etwas anders -
- zB. Fetchzeiten, Befehlszeiten, Durchlaufzeiten, Temperaturen, etc...
-- also, so, damit am Ausgang ein gestochen scharfer zB. 1 Sekunden
Ping, Tick ausgeworfen wird.

zB: - für die UART wird zB ein 1,8432MHz Quarz verwendet, eben, damit
die Übertragung soweit als möglich fehlerfrei durchgeführt werden kann.
-- mit einem 1,000MHz gäbe es eine Menge Prozente Error's.

Hindernis, u.A.: die internen Teilerfaktoren sind begrenzt an
Anzahl, an Teilbarkeit.

--
Ähm, wieso willst denn einen µC als Uhr verwenden, wenn es doch ganz
günstig Echtzeit-Uhren mit allem Pi-Pa-Po (Kalender) gibt?
Diese' kannst dann eh an den zB. Tiny ankoppeln, zB via I2C, oder 
Seriellen Bus.
Das spart außerdem Software, weil der µC braucht nur den Tick, und so 
Kleinigkeiten übernehmen, damit dafür mehr Platz für andere Hackeleien 
ist.

Grüße
Gerald
---
Gast #3675365
Lesenswert?

Chris Webber schrieb:
> CKSEL 1011
Da bisher nur undefiniertes Geplänkel als Antworten waren,
hier mal ein paar Fakten.

Deine Annahme für CKSEL 1011 ist völlig falsch, denn das wäre
lt. Datenblatt:
Freq.-Range: 0.9 - 3 MHz (!)
Ceramic Resonator(!) und kein Quarz!

Wenn Du dir die Definitionsliste richtig angeschaut hättest,
dann wäre Dir aufgefallen, dass CKSEL bei 0.4 MHz, also 400.000 Hz
beginnt. Somit wird Dein 2313 mit den 100.000Hz nie starten.
Ist von Atmel nicht vorgesehen.

Chris Webber schrieb:
> SUT 11

Passt nicht zu Deiner CKSEL Angabe....

Nimm lieber einen 3,686411 MHz Quarz, ist für eine Uhrenanwendung 
wesentlich
besser. Lässt sich mit Prescaler und Timer1 im CTC Modus auf ziemlich 
genau eine Sekunde einstellen.....
#3675449
Lesenswert?

Wo kriegst Du einen preiswerten 100kHz Quarz her?

Solche tieffrequenten Quarze (32k, 77,5k, 100k)in Stimmgabel-Aufbau 
haben wesentlich höheren Verlustwiderstand (einige kOhm) als ein 
MHz-Quarz (20 Ohm bis 80 Ohm).

Dafür haben die Kontroller meistens einen extra Oszillator mit extra 
Anschlusspins.

mit den fuses für tieffrequent könnte es vielleicht noch klappen.
Gast #3675457
Lesenswert?

BattMan schrieb:
> Nimm lieber einen 3,686411 MHz Quarz, ist für eine Uhrenanwendung
> wesentlich besser. Lässt sich mit Prescaler und Timer1 im CTC Modus auf
> ziemlich genau eine Sekunde einstellen.....

Und erwarte bitte nicht, dass der Quarz, nur weil da 3,686411 MHz drauf 
steht, auch mit 3,686411 MHz schwingt, wenn du den nicht mit einer 
Ziehkapazität sauber abgleichst. Meist wird man da mit einer 
Frequenztoleranz von 30ppm rechnen müssen. Guck mal ins Datenblatt.
Für eine Uhr würde das einen untolerierbaren Fehler von mehr als einer 
Minute pro Monat bedeuten. Und wenn man sich einen Abgleich per 
Trimmkondensator sparen möchte, landet man eigentlich, egal welche 
Quarzfrequenz man benutzt, bei der Methode von PeDa.
OP (Firma: H.) #3675511
Lesenswert?

Hallo Leute,

DANKE DANKE DANKE für euere beteiligung.

BattMan hat es auf den Punkt gebracht, 100kHz sind zu wenig. Das ist mir 
auch sehr peinlich da ich das Datenblatt öffter sehe als meine Frau :-)
Danke BattMan vier Augen sehen mehr als 2 :-) oh man wie dumm von mir 
:-(

Kurz eine genauere Beschreibung:

Software----
Habe eine Uhr mit zwei 7-Segmentanzeigen aufgebaut. Das Programm ist auf 
einem ATtiny 2313. Die Zeit wird zyklisch über einen Timer im CTC-Modus 
und
Interrupt berechnet. Quasi über den Systemtakt den ich auf 125000 ticks 
per second runter gerechnet habe. Jede Sekunde also 1000 mal bis 125-1 
zählen und auf 0 zurück dabei die Sekundenvariable ++1.

Hardware---
An dem Tiny sind 2 Taster, 2x 7-Segmentanzeigen die über 7 Ausgäng und 
Multiplexing (nicht Charlieplexing!) angesteuert werden. Dazu einen 8MHz 
Quarz mit 2x 22pF Keramikkondensatoren zu Masse wie im Datenblatt.

Soweit hat alles wunderbar geklappt. Hatte die Uhr mit einer Batterie 
autark über 3 Wochen laufen und keine Abweichung feststellen können 
(Sekunden zeige ich nicht :-)an)

Dann das dumme, nach 3 Wochen war die Batterie leer (220mAh bei 3V)
Erst jetzt hatte ich mal das Messgerät rausgeholt und festgestellt das 
im Stillen Betrieb 0,9mA vom Interrupt verbraucht werden....
Deshalb wollte ich die Taktfrequenz :10 teilen da somit die 
Stromaufnahmen um Faktor 10 verringern....
Leider geht das ja nicht da zu geringe Taktfrequen für den Chip....

Werde dann wohl 1MHz nutzen und nochmal schauen...

Stromsparmodus und usw. machen keinen Sinn da der Intterupt immer am 
laufen gehalten werden muss....Quasi in den Schlaf schicken dann wieder 
aufwecken und 1 hochzählen dann wieder schlafen...

Ein Echtzeitchip will ich auch nicht nutzen da ich dann wieder bei 0 
anfangen muss und jetzt schon so viel Arbeit drin seckt...
Programm entwickeln (Timer,CTC,ISR...), Hardware auslegen, Platine
mit Paint zeichnen, Platine ätzen usw...

Vielleicht weiß ja jemand noch einen Rat.....

Danke und schönes WE..

Gruß Chris
#3675551
Lesenswert?

Chris Webber schrieb:
> Dann das dumme, nach 3 Wochen war die Batterie leer (220mAh bei 3V)
> Erst jetzt hatte ich mal das Messgerät rausgeholt und festgestellt das
> im Stillen Betrieb 0,9mA vom Interrupt verbraucht werden....

Warum muß es denn unbedingt ein ATtiny sein?

Alle AVRs außer den ATtiny haben einen RTC-Modus.
Z.B. der ATmega48 kann mit 32kHz an T2 in Powersave gehen und verbraucht 
dann ~1µA.
Gast #3675555
Lesenswert?

Ein 100 kHz Quarz ist schon exotisch und eher teuer. Wenn schon ein 
langsamer Quarz dann eher 32,xxx kHz - die sind billig und dafür hat der 
µC vermutlich auch passende Einstellungen.

Auch wenn da interrupts weiter laufen, macht es schon Sinn Stromsparmodi 
zu nutzen. Das bringt schon etwas, vor allem wenn man das im Programm 
besser löst: also etwa den Timer viel mehr Teilen lässt und nur etwa je 
1/100 s einen Interrupt hat (halt für das Multiplexing der Anzeige). 
Selbst dann kann der µC noch zu 90% oder mehr im Stromspamodus bleiben.

Man kann auch noch den Takt intern Teilen lassen: z.B. durch 32, damit 
läuft dann nur der Quarz mit der hohen Frequenz.

Das Problem sind vermultich sowieso die Anzeigen, oder sind das LCD - 7 
Seg Anzeigen.
Gast #3675578
Lesenswert?

Lurchi schrieb:
> Wenn schon ein langsamer Quarz dann eher 32,xxx kHz

Bei xxx hast du keine große Auswahl.

Die Uhrenquarze sind von der Frequenz so ausgelegt, dass die mit einem 
Teiler durch 2^15 direkt ein Taktfrequenz von 1Hz liefert, d.h. der 
Quarz schwingt mit 32768Hz.
OP (Firma: H.) #3676817
Lesenswert?

Hallo nochmal,

ich werde mal noch einige Fragen beantworten:

-Die 7 Segmentanzeige möchte ich nutzen da ich sie schön und retro finde

-Paint nutze ich weil die Programme zur Erstellung der Paltinen zu
 unflexibel sind. Mit Paint ist man total frei. Man kann Form, Dicke und
 Verlauf der Leiterbahnen frei auf engstem Raum verlegen. Zudem kommen 
die
 Brücken da hin wo mal will und nicht irgendwo... Man ist somit viel 
viel
 schneller

-Einen ATtiny möchte ich der Größe wegen nutzen. Die Uhr muss in einen
 kleinen Raum passen. Und als Soic bzw. SMD Variante ist der 2313 eben 
klein.

-32,786 KHz kann der Chip nicht verarbeiten da zu klein!!!

Nun nur noch eine letzte Frage!!!

Im Datenblatt seht kleinste Frequenz 900000Hz! Ist hier die Frequenz 
ohne Vorteiler gemeint oder mit???

Soll heißen tatsächlich 900000Hz oder ist ein (default) aktivieren des
Vorteilers noch möglich...also ein Achtel = 112500Hz ?????


Gruß Chris
Persönliche Seite #3676907
Lesenswert?

Chris Webber schrieb:
> -Einen ATtiny möchte ich der Größe wegen nutzen. Die Uhr muss in einen
>  kleinen Raum passen. Und als Soic bzw. SMD Variante ist der 2313 eben
> klein.

Was spricht dagegen, einen ATMega zu nutzen, der ist nicht unwesentlich 
größer und selbst der kleinste Arduino (nano oder wattuino) finden auf 
der Rückseite eines einzigen 20mm-Segments Platz. Außerdem sparst du dir 
Paint, aufwändige Bibliotheksentwicklung und hast mehr Zeit, weitere 
Retro-Anzeigen zu studieren.

Meinen Respekt hast du dir aber uneingeschränkt verdient, da der 
entscheidende zehntel Millimeter an Genauigkeit mit Paint sehr viel 
Fingerspitzengefühl erfordert. Bauteilbibliotheken sind ja auch unnötig 
und den Leitungen/ Signalen Namen zu geben sowie mehrere Ebenen mit 
Bestückungsdruck, Bohrungen und dgl. zu versehen die Christbaumspitze an 
der mauretanischen Luxuszeder.

RTC-Modul aus dem Versandhandel (samt Batteriehalter) und I2C-Anbindung 
an (d)einen ATTiny hätte ich noch anzumerken.
OP (Firma: H.) #3676920
Lesenswert?

Hallo Boris,

an einen Atmega hatte ich noch garnicht gedacht....
Hatte keinen kleinen gefunden und bin dann davon aus gegangen die
kleinen wären alles ATtiny chips...

Welche gäbe es den die gleich oder kleiner als ein 2313 sind aber
auch min 20 Pins haben?

Aber weißst du wie das mit der min. Taktfrequenz gemeint ist?


Danke dir für die Anregungen :-)
OP (Firma: H.) #3677820
Lesenswert?

Hallo Leute,

danke Peter das ist ne gute Info mit dem mega48/88/168.

Habe aber nun einiges in Erfahrung bringen können. Das ist für die 
Allgemeinheit auch interessant falls so ein Frage mal wieder auftaucht.

1. Auch wenn im Datenblatt steht das die kleinst möglich Frquenz (nur 
Quarz)an einem µC 0,9MHz beträgt, können jedoch kleinere realisiert 
werden. Damit ist gemein das der Quarz min. 0,9 MHz haben muss um 
betriebeb werden zu können. Man kann den Takt jedoch mittels Vorteiler 
(prescaler) über die Fuse Bits noch um Faktor 8 verringern. Z.B. 2MHz 
Quarz an Xtal1&2 danach Vorteiler in den Fuse Bits einsellen (default, 
schon voreingestellt mit Harken also 0, als nicht programmiert) und man 
erhält 250000Hz. Bei der min. Frequenz von 0,9MHz wären das dann 
112500Hz. Kleiner geht nicht.

2. Man kann für niedrige Frequenzen einen ATtiny26-16/261/461/861 
verwenden.
Diese bieten zudem einen EXTRA Einstellung für einen 
32,768kHz-Uhrenquarz.
Somit kann der Chip mit 32kHz arbeiten.

Beide Varianten erzeugen eine Stromersparnis.

Des weiternen habe ich gelesen das man den Chip mit einem Programm 
abgleichen kann. Quasi die interne Frequenz des Chips richtig 
einsetellen um sie genauer zu machen. Wobei die Abweichung (Angabe in 
ppm) bleibt.

GRuß Chris
Gast #3677840
Lesenswert?

H

>1. Auch wenn im Datenblatt steht das die kleinst möglich Frquenz (nur
>Quarz)an einem µC 0,9MHz beträgt, können jedoch kleinere realisiert
>werden. ...

Es gibt auch noch den Low Frequency Crystal Oscillator als Taktquelle. 
Und der läuft mit 32.768 kHz Quarz.

MfG Spess
OP (Firma: H.) #3678141
Lesenswert?

Ja man kann auch einen Oszillator verwenden. Ich meinet aber eine rein 
Quarz Lösung (an XTAL1 & XTAL2)!
Quarz aus dem Grund da er deutlich kleiner ist. Des Weiteren denke ich 
das der Stromverbrauch bei einem CPU- Takt von 32,768kHz so gering ist, 
dass man sich weniger gedanken drum machen muss.
Das einzige was von Nachteil ist wie Peter Dannegger schon bemängelt hat 
ist
dann das Multiplexen oder sonstige Zeitabhängie Aktionen.
Dashalb würde ich eher auf 250.000Hz gehen. Der Stromverbrauch dürfte 
sich trotzdem verringern wenn ich bedenke, dass ich bei 1MHz 0,9mA ohne 
Stromsparmodus im reinen Rechenbetrieb hatte. Sobald die 2 
7-Segmentanzeigen dazu kommen steigt der Wert auf 16mA, jedoch nur für 
wenige Sekunden. Es sind grüne Segmentanzeigen die leider mehr Saft 
brauchen.

Also von 1MHz auf 250kHz wäre das Faktor 4. Somit der Stromverbrauch 
auch durch 4. Sollte dann klappen...


Danke, an euch alle ...schöne Grüße aus der Pfalz!

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