AVR: Internal clock turbo, 12MHz mit Tiny2313

Gast #1970201
Lesenswert?

Hallo zusammen,

ich habe folgendes Problem. Für mein kleines Software-PWM projekt könnte 
ich noch ein wenig mehr CPU-Leistung von meinem AVR gebrauchen, da ich 
mit meinen 12 Kanälen + Kommunikation rechenleistungsmäßig an der Grenze 
bin und doch noch ein Paar Hz im PWM-Takt gebrauchen könnte.
Der interne Oszillator ist ja so schon nicht sonderlich "stabil" was die 
Frequenz angeht, aber damit komme ich ganz gut klar. SPI nimmts da zum 
Glück nicht so genau, die SoftPWM freut sich um jedes Hz und mehr 
"Kontakt zur Aussenwelt" gibts nicht.

Daher die Frage: wenn ich meinen Tiny2313 auf 8MHz internal clock fuse 
(als Verb) und per Software (Register OSCCAL=0x7F) auf maximal trimme, 
kann ich dann mehr Rechenleistung von meinem AVR erwarten?
Laut Datenblatt hat der dann von den 8MHz ausgehend statt (min./max.) 
75%/150% 100%/200%. Ich würde also 150% im Mittel erwarten was 12MHz 
entspricht und 50% mehr Rechenleistung bedeutet.
Korrekt?
Spricht irgendwas ernsthaft gegen mein Vorhaben?


Quarz hab ich nicht, will ich nicht und ich optimiere lieber in 
stundenlanger Programmierarbeit den Code...


Vielen Dank
lg Richard

Ganz am Rande noch: vielleicht hab ichs irgendwo überlesen aber was 
passiert wenn ich OSCCAL > 0x7F setze? wird einfach das MSB 
abgeschnitten?
Gast #1970498
Lesenswert?

256 Bit * 12 Kanäle @ 100Hz
+ bissl kommunikation
+ berechnung der PWM-Werte (relativ komplizierte formeln... unwichtig)
ich bin am limit der Rechenleistung, wenn ich versuche die frequenz zu 
steigern kommt die Kommunikation arg ins stocken...

Aber wie ich das sehe hat noch niemand ausprobiert auf diese Art noch 
ein Paar Hz zu finden. Ich probiers einfach.
Mit Quarz darf er ja 20MHz insofern sollte da kein Problem sein.
(Firma: TravelRec.) Persönliche Seite #1970564
Lesenswert?

Richard schrieb:
> wenn ich meinen Tiny2313 auf 8MHz internal clock fuse
> (als Verb) und per Software (Register OSCCAL=0x7F) auf maximal trimme,

Warum zum Geier schliesst Du keinen 20Mhz Quarz oder Resonator an, der 
T2313 kann laut Spezifikation bei 5V mit 20 Mhz laufen.

Richard schrieb:
> Mit Quarz darf er ja 20MHz

Genau! Die interne Trimmung geht ungefähr bis 14Mhz, aber dann 
funktionieren bestimmte Peripherien nicht mehr (EEPROM zum Beispiel).
Gast #1970665
Lesenswert?

Ja ein Quarz wäre ne lösung, richtig, aber den hab ich nicht rumliegen. 
Genaugenommen hab ich keine nötigen 22pF rumfliegen...
Das war aber auch nicht die Frage.

Knut Ballhause schrieb:
> Die interne Trimmung geht ungefähr bis 14Mhz, aber dann
> funktionieren bestimmte Peripherien nicht mehr (EEPROM zum Beispiel).

das interne EEPROM dürfte aber davon nicht betroffen sein oder? das 
müsste doch weiterhin stresfrei funktionioeren?!

Maik Fox schrieb:
> Meinst du 8 Bit?

ja richtig. my FAIL. Sorry

und ja vermutlich könnte man noch bissl was am Code optimieren, wobei 
für ne lookup-tabel wirds schon wieder knapp... na egal ich probiers 
erstmal mit dem "overclocking" welches ja nichtmal wirklich eines ist.
(Firma: TravelRec.) Persönliche Seite #1971047
Lesenswert?

Richard schrieb:
> das interne EEPROM dürfte aber davon nicht betroffen sein oder? das
> müsste doch weiterhin stresfrei funktionioeren?!

Nee, eben nicht. Das Timing des EEPROMs wird direkt vom internen 
Oszillator abgeleitet. Bei mehr als 20% Trimmung, abweichend vom 
Nominalwert 8Mhz, ist das EEPROM ausserhalb seiner Spezifikation.
Gast #1971264
Lesenswert?

Knut Ballhause schrieb:
> Das Timing des EEPROMs wird direkt vom internen
> Oszillator abgeleitet. Bei mehr als 20% Trimmung, abweichend vom
> Nominalwert 8Mhz, ist das EEPROM ausserhalb seiner Spezifikation.

Ich verstehe. Gut dann wird am Code optimiert...
Den Artikel "Soft-PWM" hab ich übrigends schon studiert. Allerdings war 
ich bisher noch nicht ausreichend motiviert mich an die "intelligente" 
PWM ranzuprogrammieren. Die Motivation dürfte aber dann jetzt da sein ^^

Und zur Not denke ich komme ich auch mit ner 11 Kannal 7 Bit PWM aus...

Danke an alle!
lg Richard

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