Forum: Mikrocontroller und Digitale Elektronik Wie funktioniert OSCCAL


von Benedikt (Gast)


Lesenswert?

Wie wird das in den AVRs gemacht, dass man per Software einen RC
Oszillator abstimmen kann ?
Wird da am Widerstand oder am Kondensator gedreht ?
Wie funktioniert das genau (hardwaremäßig) ?

von TravelRec. (Gast)


Lesenswert?

Nein, keine Bauelemente. Du trägst während der Programinitialisierung
ganz am Anfang einen Wert in das OSCCAL-Register ein, welches der
Prozessor dann einliest und seinen internen Oszillator anhand dieses
Wertes nachstimmt. Bei jedem Reset wird dieser Wert neu eingelesen.
Genaue Details stehen auch im Datenblatt, siehe OSCCAL. Den vom
Hersteller eingetragenen Default-Wert kannst Du mit dem AVR-Studio
auslesen. Um diesen Wert herum ein paar Werte nach oben oder unten
kannst Du zum Feinjustieren verwenden.

von Hannes L. (hannes)


Lesenswert?

Sorry, ich vermute, dass Benedikt danach frug, wie das intern im AVR
gemacht wird. Was also die AVR-Hardware mit dem Inhalt von OSCCAL
macht...

;-)

...

von TravelRec. (Gast)


Lesenswert?

Aaach soooo... Nun, soweit ich weiß, mit programmierbaren
Hardware-Zählerstufen, aber haut mich nicht, wenn´s nicht so ist.
Wichtig ist doch, daß es funktioniert ;-)

von Simon K. (simon) Benutzerseite


Lesenswert?

vielleicht wird beim herauf-tunen der Frequenz ein paralleler Widerstand
(geschaltet über bilaterale schalter oder so) geschaltet und bei
herunter-tunen halt in Reihe.

von TravelRec. (Gast)


Lesenswert?

Vielleicht ist der Mond auch aus Käse ;-) - raten hilft nicht, ATMEL
fragen!

von Marko B. (Gast)


Lesenswert?

So in der Art vielleicht:

http://www.web-ee.com/Schematics/FSK%20Modulator/FSK_Mod.htm

Nur mit mehr Kondensatoren?

von Benedikt (Gast)


Lesenswert?

Das mit den Kondensatoren habe ich mir ausch schon überlegt:
8 Kondensatoren mit Werten im 1,2,4,8... Raster und der digital
einstellbare Oszillator ist fertig. Allerdings benötigt man dafür
ziemlich kleine Kondensatoren im 10fF Bereich für das LSB...

Alernativ würde auch eine Kapazitätsdiode funktionieren.

von Marko B. (Gast)


Lesenswert?

Man könnte auch, sagen wir mal, 256 Kondensatoren gleichen Wertes
nehmen. Wenn z.B. der normale C 150nF beträgt, und man die Frequenz
+-50% verändern will, dann nimmt man 256 Kondensatoren mit je 0,39nF.
Werden 128 davon mit einem 100nF Kondensator parallelgeschaltet, dann
hat man die Mittelfrequenz. Durch zu- oder abschalten einzelner Cs kann
man die Frequenz in jeweils 128 Stufen um 50% absenken oder erhöhen.

von Hannes L. (hannes)


Lesenswert?

Und wer soll die Kondensatoren da reinbauen? Der AVR ist doch kein
Hybrid-IC. Der Oszillator ist mit auf dem Siliziumkristall. Daher
vermute ich auch eine Kapazitätsdiode und ein DAC für deren
Steuerspannung.

Aber wie schon erwähnt: Ob wir nun wissen, was ATMEL da genau gebaut
hat, oder in Hamburg fällt 'ne Schaufel um, was ist das schon für ein
Unterschied...?

...

von TravelRec. (Gast)


Lesenswert?

Auf alle Fälle hat sich in den vergangenen Jahren mit den internen Oszis
´ne Menge getan, denn bei den alten 90Sxxxx waren die wirklich noch sehr
ungenau und auch instabil, wobei die jetzige Generation doch recht
reproduzierbar läuft. Einige der mir vorliegenden Tiny2313 und Mega16
hatte ich mal spaßhalber als Uhren mit dem internen Taktgenerator auf
8Mhz laufen und die gingen nach der Eichung gerade mal 5-10 sek./Tag
auseinander. Natürlich bei Zimmertempereatur, ist klar, aber Hut ab,
für´n R/C! Wie auch immer die das machen - für etliche
Schaltungsaufgaben reicht das völlig!

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.