Hi Fans, wollte mal kurz eure Impressionen zu dem Ergebnis hier hören. Da das toggeln des Portpins 2 Taktzyklen dauert, schließe ich auf einen Systemtakt von 28 Mhz. Die Fuses habe ich auf PLL als taktquelle eingestellt :) der code im studio ist nur zu experimentellen zwecken ;) Jetzt muss ich mal schauen wie ich die Output COmpare funktion zum laufen bekomme :D vg
Hi >Da das toggeln des Portpins 2 Taktzyklen dauert, schließe ich auf einen >Systemtakt von 28 Mhz. Und wo soll der jetzt herkommen? MfG Spess
wie wo soll der herkommen? die interne pll verachtfacht die frequenz des internen RC-Oszillators. Über einen festen Teiler (4) wird dann der Systemtakt gewonnnen. Systemfrequenz: 28 MHz PLL 112MHz RC-Oszillator: 14MHz Das OSCCAL register ist maximal ausgereizt und es wird kein (optionaler) clockprescaler verwendet. wie kann ich den takt noch weiter erhöhen? VG
Peet P. schrieb: > wie kann ich den takt noch weiter erhöhen? Einen externen Takt einspeisen? Damit kann man auch die Hertz ein wenig weiter hoch skillen... ;) Will sagen: Einfach ein Taktsignal einspeisen und schauen wie weit es geht. Allerdings würde mich an deiner Stelle auch interessieren, ob das Ding dann noch korrekt rechnet. Warum musst du den AVR denn so gnadenlos übertakten? mfg mf
Hi
>wie kann ich den takt noch weiter erhöhen?
Du solltest mal das Datenblatt lesen:
The PLL is locked on the RC oscillator and adjusting the RC oscillator
via OSCCAL register will
adjust the fast peripheral clock at the same time. However, even if the
RC oscillator is taken to a
higher frequency than 8 MHz, the fast peripheral clock frequency
saturates at 85 MHz (worst
case) and remains oscillating at the maximum frequency. It should be
noted that the PLL in this
case is not locked any longer with the RC oscillator clock. Therefore,
it is recommended not to
take the OSCCAL adjustments to a higher frequency than 8 MHz in order to
keep the PLL in the correct operating range.
MfG Spess
A. K. schrieb im Beitrag #2364302: > Peet P. schrieb: > >> Da das toggeln des Portpins 2 Taktzyklen dauert > > Ist das so? > > Ein OUT Befehl braucht 1 Takt. Also wird in jedem Takt der Pin > getoggelt, wenn die Konstanten vorwegs in Register geladen wurden. Ist das so ? .. also wirklich ? Wie kommt es ins Register. CBI benötigt 2 cycle SBI auch also sind es mindestens 4 cycle. Als Loop wirds wohl mehr. Klaus
Und mit dem Output wie in deinem Oszilliskopbild kann man noch etwas sinnvolles undoder verlässliches machen? Oder kommen die Verzerrungen von deinem Oszi?
Klaus De lisson schrieb: > CBI benötigt 2 cycle > SBI auch Wohl wahr. Hier steht aber PORTB = 0; PORTB = 255; ... und das ist einfach nur OUT PORTB, Rx OUT PORTB, Ry wenn man mal optimistisch annimmt, dass der Compiler die LDIs aus der Schleife geworfen hat. > also sind es mindestens 4 cycle. Dann allerdings wären es 56MHz Coretakt. Denn sein Posting war etwas irreführend was den Begriff "toggeln" angeht. Sein DSO-Shot zeigt eine Pinfrequenz von 14MHz, was nur dann passt, wenn eine Periode 2 Takte benötigt, also 1 Takt pro Befehl. Und das ist realistisch, denn mit OSCCAL ist rauf wie runter ca. Faktor 2 drin.
UR Schmitt schrieb: > Oder kommen die Verzerrungen von deinem Oszi? Vom Tastkopf, d.h. von dessen Masseclip. Wenn man den ab macht, die Spitze entfernt und mit dem Massering direkt an die Zielmasse geht, dann sind sie weg.
Die Tiny85 gehören zu den neueren AVRs: Da kann man durch schreiben einer 1 in das Register PINB ein Bit toogeln. Mit dem Out Befehl sollte das noch in 1 Zyklus gehen. Wenn die vorgesehenen maximal 20 MHz nicht schnell genug sind, sollte man sich eher nach einem schnelleren µC umsehen - die gibt es auch, z.B. als 8051 Variante oder Atmel XMega.
Also die meisten Projekte mit nem ATtiny laufen bei mir mit 1MHz und da ist immer noch reichlich Zeit zum Däumchen drehen für die CPU. Peter
Wissen wir doch Peter ;-). Aber ich glaube (bin mir aber nicht sicher...), Du machst keine Signalverarbeitung von Streams hoher Taktrate. Für Mess-, Steuer- und Regelaufgaben sind 1Mhz mehr als genug. Ulrich schrieb: > Wenn die vorgesehenen maximal 20 MHz nicht schnell genug sind, sollte > man sich eher nach einem schnelleren µC umsehen - die gibt es auch, z.B. > als 8051 Variante oder Atmel XMega. Wobei der XMega durch seine aufgebohrte Hardware sehr viele schnelle Dinge parallel machen kann, gerade was Interfaces angeht. Da braucht man nicht mal einen hohen Systemtakt.
Ich wuerd mal einen AVR32UC3L064 anschauen. Da beginnt man gleich mit 64MHz. Und der kostet nicht wirklich mehr, um die 4 Euro
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.