Ist es möglich einen ATMEGA168 ohne Quarz auf 20 MHz zu takten? Taktstabilität und Genauigkeit ist unwichtig... muss nur ungefähr stimmen. Bin nämlich mit meinen Ports ziemlich am Ende und würde ungerne 2 für den Quarz opfern.
Erik H. schrieb: > Ist es möglich einen ATMEGA168 ohne Quarz auf 20 MHz zu takten? Nur mit einem Quarzoszillator, kostet Dich XTAL1 - also einen Pin. > Bin nämlich mit meinen Ports ziemlich am Ende und würde ungerne 2 für > den Quarz opfern. Siehe oben: einen Pin müsstest Du opfern. Der interne RC-Oszillator arbeitet mit fester Frequenz - keine Chance.
Erik H. schrieb: > Ist es möglich einen ATMEGA168 ohne Quarz auf 20 MHz zu takten? > Taktstabilität und Genauigkeit ist unwichtig... muss nur ungefähr > stimmen. Nein, der interne Oszillator kann nur ca. 8MHz. > Bin nämlich mit meinen Ports ziemlich am Ende und würde ungerne 2 für > den Quarz opfern. Je nachdem wie dringend Du die Pins brauchst: Eventuell kannst Du eine externe Clock realisieren, dann brauchst Du nur einen der zwei Pins. Viele Grüße, Simon
Frank M. schrieb: > Der interne RC-Oszillator arbeitet mit fester Frequenz - keine Chance. Simon Budig schrieb: > Nein, der interne Oszillator kann nur ca. 8MHz. Na, so ganz stimmt das aber nicht. Zum einen kann man ja über die Fuses auch was anderes als 8 MHz einstellen, und zum anderen kann man mit dem OSCCAL-Register an der eingestellten Frequenz auch noch drehen. Ich habe einen ATmega48 auch schon auf über 16 MHz aufgebohrt: 8 MHz über Fuses eingestellt und dann 0xFF ins OSCCAL geschrieben. Mehr geht nicht. Dann darf man auch keine Ansprüche mehr an die Genauigkeit stellen... Gruß
Das mit dem Quarzoszillator, der nur an XTAL1 hängt hört sich gut an! Momentan passts noch mit den verfügbaren Pins... muss schauen, ob noch was dazu kommt.
Joachim schrieb: > Na, so ganz stimmt das aber nicht. Zum einen kann man ja über die Fuses > auch was anderes als 8 MHz einstellen, [...] Du kannst zwar den Vorteiler ändern, aber deshalb ändert der RC-Oszillator noch lange nicht nicht seine Frequenz. ;-) > und zum anderen kann man mit dem > OSCCAL-Register an der eingestellten Frequenz auch noch drehen. Von welchen Größenordnungen sprechen wir hier? > Ich habe einen ATmega48 auch schon auf über 16 MHz aufgebohrt: 8 MHz > über Fuses eingestellt und dann 0xFF ins OSCCAL geschrieben. Mehr geht > nicht. Dann darf man auch keine Ansprüche mehr an die Genauigkeit > stellen... Echt? Ich dachte bisher, hier könnte man lediglich Korrekturen um wenige Prozent erreichen...
Frank M. schrieb: > Du kannst zwar den Vorteiler ändern, aber deshalb ändert der > RC-Oszillator noch lange nicht nicht seine Frequenz. ;-) Ups, da hast du recht... Hab ich mit einem anderen Controller verwechselt. Frank M. schrieb: > Von welchen Größenordnungen sprechen wir hier? hab ich doch geschrieben :) Frank M. schrieb: > Echt? Ich dachte bisher, hier könnte man lediglich Korrekturen um wenige > Prozent erreichen... Nee, da geht mehr :) . Das staht leider nicht in allen Datenblättern ordentlich drin. Ich hab das glaub ich in irgendeiner Application Note gefunden... Da ist sie ja: "AVR053 - Calibration of the internal RC oscillator" Ich hab einfach 0xFF in das Register geschrieben und dann nachgemessen. Gerechnet hab ich da nix ;)
Joachim schrieb: > Nee, da geht mehr :) . Das staht leider nicht in allen Datenblättern > ordentlich drin. Ich hab das glaub ich in irgendeiner Application Note > gefunden... Da ist sie ja: "AVR053 - Calibration of the internal RC > oscillator" Interssant. Was ich auch nicht wusste ist, dass auch wenn man den die Fuses auf nen anderen RC-Oszillator stellt man das Kalibrierbyte von Hand nachladen muss. Aber zum Thema 16MHz: "AVR053 - Calibration of the internal RC oscillator": > For all tunable oscillators it is important to notice > that it is not recommended to tune the oscillator more > than 10% off the base frequency specified in the datasheet. > The reason for this is that the internal timing in the > device is dependent on the RC-oscillator frequency.
Wenn du mehr Portpins brauchst, warum benutzt du dann nicht einen Portexpander?
Das Problem ist das EEPROM und Flash timen mit dem internen RC ihre Schreibzugriffe (Ich glaube mich vage zu erinnern). Und ich glaube auch das der höchste Wert (also 0xFF für OSCAL) mit 150%-200% in einer Tabelle stand. Das wäre also irgendwas zwischen 12-16MHz.
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.