Hallo, habe eben in einem anderen Thread (http://www.mikrocontroller.net/forum-extern/read-1-100580.html) gelesen, warum man "krumme" Quarze einsetzt. Das mit den krummen Werten bei den Timern, der seriellen Schnittstelle o.ä. hat mich auch schon öfters genervt. Die AVRs sind "leider" meistens nur bis 4, 8 oder 16 MHz spezifiziert/freigegeben. Kann man die (zuverlässig, Privatanwender, keine Atomanlagensteuerung o.ä.) dann auch mit 2^22, 2^23 bzw. 2^24 Quarzen betreiben? Gibt es weitere Vorteile für so krumme Quarzwerte? Gruß, Hans
> Die AVRs sind "leider" meistens nur bis 4, 8 oder 16 MHz > spezifiziert/freigegeben. Ja, bis ist das Stichwort. Du darfst natürlich jede x-beliebige Frequenz unterhalb des Grenzwertes benutzen. Wenn Du also einen für 16 MHz spezifizierten Controller hast, ist es durchaus üblich, einen 14,7456 MHz Quarz (oder Generator) zu benutzen, wenn man die entsprechend ,,günstige'' Taktfrequenz braucht. Da der AVR (im Gegensatz zu insbesondere älteren Controller oder Prozessoren) voll statisch arbeitet, darf der Takt auch wirklich auf jeden beliebigen Wert abgesenkt werden (bis 0 herunter), was entsprechend die Stromaufnahme senkt.
Es kommt auf die Sicht der Dinge an. Die "krummen" Zweierpotenzen sind aus Sicht des binär orientierten Controllers ja keine krummen, sondern runde Zahlen. Und wenn man diese durch runde Zahlen wie 256 (1 Byte) oder 65536 (zwei Byte) teilt (was freilaufende Timer nunmal tun), dann gibt es ganzzahlige Ergebnisse, es geht also ohne Rest auf. Für uns etwas schwierig, da wir dezimal rechnen und nicht binär. Aber wir sind schließlich keine Mikrocontroller (und das ist gut so!). Bei Baudratenberechnung ist das wieder etwas anders. Wenn man mal rückwärts von den Baudraten aus geht, diese mit den (ganzzahligen!) Teilerwerten multipliziert, dann kommt man auf (andere) "krumme" Quarzfrequenzen. Nur mit diesen erhält man dann exakt genaue Baudraten (also Divisionen ohne Rest), die dann fehlerfreie Übertragung sichern. Weitere "krumme" Quarzfrequenzen findet man in Schaltungen, die sich anderen Takfrequenzen anpassen müssen. So z.B. bei Schaltungen, die TV-Bilder erzeugen, denn die müssen sich der Zeilenfrequenz unterordnen (siehe Homecomputer und Spielkonsolen, die den TV nutzen) Nicht jeder "krumme" Wert ist für jeden Zweck optimal geeignet. Die geringe Übertaktung (2^24 statt 16MHz) dürften sie aushalten, aber warum überhaupt so hohe Taktfrequenz? Der MC frisst dann doch nur unnötig viel Strom. Ich würde die Taktfrequenz nicht höher wählen als erforderlich. Es bringt nix, dem PC-Taktwahn zu folgen. MfG, Heinz
Vielen Dank für die beiden ausführlichen Antworten. Bin nun wieder ein Stück schlauer. Danke, Hans
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.