Hi, ich bin kürzlich darüber gestolpert, daß es auch ATTinys mit interner PLL gibt, die intern einen Takt erzeugt welcher mit bis zu 64 MHz höher als der CPU-Takt ist. Bisher habe ich immer nur mit ATMegas gearbeitet. Mir kam da der Gedanke diesen Takt über einen Timer per PWM im CTC-Modus nach außen zu schicken. Wenn ich mich da nicht verrechne liegt da die Maximale Ausgangsfrequenz beim halben PLL-Takt, also 32 MHz. Somit könnte man einen kleinen ATTiny45 oder einen anderen mit PLL als, wenn auch stufig, programmierbare Taktquelle bis hinauf zu 32 MHz "mißbrauchen". Vielleicht habe ich ja auch noch einen einfacheren Weg übersehen denn PLL-Takt nach draußen zu führen, eventuell sogar mit voller Frequenz. Mir ist klar, daß das dann kein quarzgenauer Takt sein wird. Wer nun fragt wozu brauche man das: Man kann auch anders einen höheren Takt als 20 MHz erzeugen. Ich finde die Idee praktisch die Möglichket zu haben mit einem AVR ohne externen Bauteileaufand (Taktteiler+ externer Oszillator) quasi synchron mit zwei Frequenzen zu experimentieren. Nur ist entweder meine Idee zu exotisch oder ich bin mit der Suchfunktion geschickt drumherum geschippert. Jedenfalls habe ich bisher noch nichts vergleichbares gefunden. Ist das so möglich? Oder habe ich da einen prinzipiellen Denkehler, Insbesondere was die obere Grenze von 32 MHz (also oberhalb der CPU-Taktes) betrifft? Ich würde es ja einfach ausprobieren, aber ich habe keine ATTinys da und müßte die extra dafür bestellen. Viele Grüße Carsten
Hi
>Ist das so möglich? Oder habe ich da einen prinzipiellen Denkehler,
Der Fehler ist, du hast nicht ins Datenblatt geschaut. Die PLL
funktioniert nur mit Timer1. Und der hatt kein CTC. Symmetrische 32MHz
bekommst du auch mit fast PWM bei einem OCR-Wert von 0.
MfG Spess
Danke für die schnelle Antwort. Ja Du hast (halb) recht. Ich habe zwar ins Datenblatt geschaut, aber in meiner Vorfreude überlesen, daß da Timer1 stand. Wunschgemäß wollte mein Hirn nur Timer ohne die 1 lesen bei dem Satz in dem es darum ging welche Komponenten den PLL-Clock verwenden können. Aber dank dir wurde ich daran erinnert, daß man OCR1C umfunktionieren kann damit der Timer1 nicht bis 255 hocheiert sondern sofort kehrt macht. Der Gedanke ist nur noch etwas gewöhnugsbedürftig, daß man ein Signal schneller ausgeben kann als die CPU untern rechnet, aber praktisch. Wenn ich das jetzt richtig sehen, kann ich dank der PLL anstatt bisher maximal den CPU direkt (20 MHz) auszugeben oder den halben Takt (10 MHz) per PWM, nun auch noch beispielsweise 12,8, 16, 25,6 und 32 MHz ausgeben, die vorher ohne die PLL nicht möglich waren. Ich glaube min nächster AVR wird ein entsprechender Tiny. :) viele Grüße Carsten
Carsten R. schrieb: > Ich glaube min nächster AVR wird ein entsprechender Tiny. :) Ich verwende diese Reihe sehr gern. Den ATtiny85 kann man ohne Quarz fast regulär mit 16,5 MHz takten und damit für V-USB nutzen. Das vereinfacht so manche Schaltung ungemein.
Carsten R. schrieb: > Wenn ich das jetzt richtig sehen, kann ich dank der PLL anstatt bisher > maximal den CPU direkt (20 MHz) auszugeben oder den halben Takt (10 MHz) > per PWM, nun auch noch beispielsweise 12,8, 16, 25,6 und 32 MHz > ausgeben, die vorher ohne die PLL nicht möglich waren. Mithilfe des OSCCAL-Registers kann man den int. RC-Oscillator tunen. Damit ist feinere Frequenzen einstellen.
Hier hat jemand einen UKW Sender mit einem Tiny85 gebaut. 3 Bauteile reichen dafür, die PLL schwingt im UKW Band: http://hackaday.com/2012/01/26/sprite_tms-three-component-fm-transmitter/
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.