Forum: Mikrocontroller und Digitale Elektronik Tiny


von ensan (Gast)


Lesenswert?

Hallo

Benötigt man eigentlich beim Tiny 12 einen Quarz für den Betrieb.
Ich habe gehört das dieses bei den Mega typen nicht notwendig sei, wie
ist es bei Tiny?

Danke

von crazy horse (Gast)


Lesenswert?

kommt drauf an, was du damit machen willst. Im Prinzip ja, aber oft
reicht die Genauigkeit nicht.

von ensan (Gast)


Lesenswert?

eigentlich nur für ein Blinklicht. Das heißt  2 Leds erst blinkt der
eine pause der andere einmal pause dann beide zusammen.

von Hannes L. (hannes)


Lesenswert?

Du brauchst dazu keinen Quarz. Wenn es nicht zu genau sein soll, dann
musst du nichtmal den internen Oszillator calibrieren. Der Takt liegt
dann irgendwo um die 0,8..1MHz.

Willst du es genauer haben, dann solltest du von der Möglichkeit der
Calibration des internen RC-Oszillators Gebrauch machen, dann taktet
der Tiny12 mit 1,2MHz.

Einen Quarz brauchst du erst, wenn es sehr genau sein muss, z.B. für
(Software-) UART oder genaue Zeitgeber. Der kostet dich allerdings
I/O-Pins.

...

von Markus (Gast)


Lesenswert?

Ich mach  meine UARTS mit nem ATMega8515 und ohne externen Quarz und das
geht super. (Auf 4MHz getaktet)

von crazy horse (Gast)


Lesenswert?

ächtz
das ist und bleibt Schrott, ich kanns nicht mehr hören.

von Simon K. (simon) Benutzerseite


Lesenswert?

full ack.

UART nie mit unkalibrierten Taktgebern verwenden, danke.

von crazy horse (Gast)


Lesenswert?

das Problem ist ja, dass es im Einzelfall wirklich funktioniert. Aber
eben nicht mit jedem  MC und nicht bei Temperaturschwankungen.
Empfehlen kann man es keinesfalls.

von Bastler (Gast)


Lesenswert?

Wieso "nie" - es hängt jawohl immer von der Baudrate ab die man
verwenden möchte. Wenn wirklich nur ein paar Byte übertragen werden
sollen, kann man die Baudrate doch auf 300 z.B. herunterstellen. Dafür
kann die Platine kleiner werden falls man wirklich Platzprobleme hat.

Ein allgemeines

> das ist und bleibt Schrott, ich kanns nicht mehr hören.

ist auf jedenfall nicht angemessen.

von crazy horse (Gast)


Lesenswert?

das ist der nächste Trugschluss, dass sich mit Heruntersetzen der
Baudrate irgend was ändert. Hast du 5% Abweichung der
Oszillatorfrequenz, hast du auch auch 5% bei 300 oder 1 Baud. Das ist
nunmal so, kannst du gerne nachrechnen.

von Hannes L. (hannes)


Lesenswert?

Und was hat das alles mit dem Tiny12 zu tun??

;-)

...

von crazy horse (Gast)


Lesenswert?

gar nix, nur mit dem internen RC-Osz allgemein.

von Hannes L. (hannes)


Lesenswert?

Ja, da gibt es immer wieder Unbelehrbare. Und das Thema kommt auch alle
paar Wochen wieder auf. Und dummerweise immer OT, so dass man es beim
Suchen meist nicht findet...

...

von Bastler (Gast)


Lesenswert?

Gut, die 300 waren ein schlechtes Beispiel. Aber bei höheren Baudraten
hab ich - wenn ich "gerade" Oszillatorfrequenzen verwende - eine
sowieso meist höherer Abweichung vom Nominalwert. Also wird bei
geringeren Baudraten die zusätzliche Abweichung der Quarzfrequenz nicht
so viel ausmachen, als bei einer höheren Baudrate.

von Simon K. (simon) Benutzerseite


Lesenswert?

lol? Die Taktgeberabweichung macht bei niedrigen Baudraten genausoviel
aus, wie bei hohen. nämlich (zB) 5% ! Und 5% bleiben 5%. auch bei 300
Baud.

Egal welche Baudfrequenz man wählt, ihre Genauigkeit ist die der
Hauptfrequenz des µCs.

das mit den geraden und ungeraden Oszillatorfrequenzen ist ja ohnehin
schon klar, kann man also jetzt mal hier auslassen.

von Bastler (Gast)


Lesenswert?

Und daraus folgt:
Habe ich bei optimalem Takt eine Abweichung zur eingestellten Baudrate
von 0%, habe ich nachher eine Abweichung von 5% -> funktioniert.

Habe jedoch vorher mit einem Quarz bei einer höheren Baudrate schon
eine Abweichung von 5%, habe ich nachher im ungünstigsten Fall 10%
Abweichung -> funktioniert nicht mehr.

Man kann natürlich auch immer eine Abweichung von 0% anstreben, wenns
schön macht.

von Robert Teufel (Gast)


Lesenswert?

Ein kleiner Stich ins AVR Land.
Da gibts doch tatsaechlich ganz kleine Micros, die braucht man nicht
selbst zu kalibrieren, die haben ueber den gesamten Temperatur und
Spannungsbereich einen internen Oszillator der weniger als 2.5%
Abweichung hat, bei Auslieferung und Raumtemp weniger als 1%

Die kleinen sind unter der Familie LPC900 zu finden und koennen allemal
mit Tinys mithalten auch wenn man sie doppelt so schnell takten muss.

p.s. ich stimme absolut zu, dass die IRC Oszillatoren in den Tinys fuer
alles was einen Takt mit weniger als 3% braucht (z.B. UART) voellig
unzureichend sind.

Um die urspruengliche Frage nochmals aufzugreifen, die blinker mit 5%
Abweichung sollten immer noch OK sein ;-)

Gruss, Robert

von Mehmet K. (mkmk)


Lesenswert?

Also, entweder habe ich saumaessig Glück, oder Eure Behauptungen
betreffend interner RC-Oszi muss dochmals unter die Lupe.
Bei einem meiner Geraete konnte ich wegen Platzmangen keinen Quarz
einsetzen (Atmega8 / TQFP). Nach laengeren Tests mit verschiedenen
Umgebungstemperaturen stellte ich fest, dass die Kommunikation (9600
Baud / RS485) die einen Ausreisser hatte.
Nun wird das Geraet in Serie verkauft (keine grossen Stückzahlen, z.Zt.
20 Stück) und es gab noch nie Aerger wegen der Kommunikation.
Temperaturen, denen das Geraet ausgesetzt ist: 10 Grad bis max. 30
Grad.

Ich möchte aber erwaehnen, dass ich den internen Oszi mir OSCAL bei 20
Grad Raumtemperatur auf nahezu 0% Abweichung kalibriere.

von crazy horse (Gast)


Lesenswert?

jo, wenn du die Kalibrierung ordentlich machst und das Gerät in einem
engem Temperaturbereich betreibst und die Abgleichtemperatur auch noch
in die Mitte dieses Bereichs legst, glaube ich dir das.
Eine weitere Frage: Single oder Multimaster? Wenn Single-Master, ist
das dann ein Gerät mit korrektem Timing (PC z.B.?). Wenn du nämlich 2
Wackelkandidaten miteinander kommunizieren lässt und der eine 10° und
der andere 30° hat, wirds wahrscheinlich auch nicht mehr (sicher)
funktionieren.
Keinen Platz für einen SMD-Keramik-Resonator? Kann ich fast nicht
glauben.

von ensan (Gast)


Lesenswert?

Hallo

Danke für die Zahlreichen antworten aber irgenwie weicht ihr vom Thema
ab. Ich habe leider nicht viel mit avr zutun gehabt außer in meiner
ausbildung mal kurz da hatten wir den avr 4433 und der ließ sich nicht
ohne Quarz ansprechen. Oder? Muss ich beim Tiny wenn Ich edn internen
Taktgeber nutzen will Programm technisch was beachten?

von Hannes L. (hannes)


Lesenswert?

Ein Blick ins Datenblatt des Tiny12 zeigt dir, dass er mit aktiviertem
internen RC-Oszillator ausgeliefert wird. Er rennt also los, sobald er
Betriebsspannung bekommt, ist also sofort einsatzfähig.

Beachten sollte man, dass man einen Keramik-Kondensator von 100nF an
die Betriebsspannungsanschlüsse schalten soll, und zwar möglicht dicht
an die AVR-Pins.

Dann sollte man wissen, dass der interne RC-Oszillator aufgrund der
Fertigungstoleranzen mit einer unbekannten Frequenz läuft (siehe auch
mein Posting oben, das den UART-Streit ausgelöst hat). Um den
Oszillator des Tiny12 auf die vorgeschriebene Frequenz zu trimmen, kann
man ihn calibrieren. Stell das aber erstmal zurück bis du etwas mehr
Detailwissen hast, er läuft auch ohne Calibration, nur eben langsamer
und mit unbekannter Frequenz. Zum Blinken wird das reichen.

...

von Axel R. (Gast)


Lesenswert?

Hallo zusammen,

Im Datenblatt des Mega8 auf Seite 28 steht sogar, dass sich der Chip
den Kalibrationswert automatisch "zieht", sofern er auf 1Mhz laufen
soll (und man die Clock-Fuses richtig eingestellt hat).
Beim Tiny12 muss diese Kalibration von Hand vornehmen.

During reset, hardware loads the 1 MHz calibration byte into the OSCCAL
Register and thereby automatically calibrates the RC Oscillator. At 5V,
25°C and 1.0 MHz Oscillator frequency selected, this calibration gives
a frequency within ± 3% of the nominal frequency.

Für den Blinker aber von ohne Belang...

von Hannes L. (hannes)


Lesenswert?

Stimmt, Mega8 hat Calibrationsmode 3.0, der calibriert bei Reset
automatisch mit dem 1MHz-Calibrationswert.

Hier ging es aber um den Tiny12 (erstes Posting):

> Benötigt man eigentlich beim Tiny 12 einen Quarz für den Betrieb.
> Ich habe gehört das dieses bei den Mega typen nicht notwendig sei,
> wie ist es bei Tiny?

Und Tiny12 hat Calibrationsmode 1.1 und muss daher manuell calibriert
werden. Nachzulesen im Datenblatt und in Appnote AVR053, Seite 3.

...

von Mehmet K. (mkmk)


Lesenswert?

@crazy horse

"Single oder Multimaster?" Single-Master, wobei PC der Master ist.

"Keinen Platz für einen SMD-Keramik-Resonator? Kann ich fast nicht
glauben."
Ich lebe in der Türkei und da gibt es keinen Reichelt, Segor, Farnell
etc.
Man nimmt, was man kriegt :)

Uebrigens habe ich kürzlich zum ersten Mal bei CSD-Elektronik bestellt.
Das Ganze lief reibungslos über die Bühne.

von Winfried (Gast)


Lesenswert?

Neben der Temperatur spielt auch die Versorgungsspannung eine Rolle, was
die Frequenzstabilität angeht. Wenn die z.B. wegen direktem
Batteriebetrieb zwischen 3-5 Volt schwankt, macht das nochmal einiges
aus.

Ansonsten: Köstlich, wie immer wieder der Denkfehler auftritt, dass bei
niedrigen Baudraten der prozentuale Fehler geringere Auswirkungen hat.

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.