Hallo,
ich hätte mal eine kleine Frage zur
Taktfrequenz des Atmega328 und im Forum fand
dazu nicht wirklich etwas.
Laut dem Datenblatt hatte ich das so verstanden,
dass der Atmega328 eine 8Mhz Taktfrequenz hat.
Mein Problem nun ist, dass anscheinend meiner doch nur
1Mhz hat, weil mit dem Delay für 1Mhz blinkt die LED
mit angegebener Sekundenanzahl auf den Punkt genau.
Hingegen bei 8Mhz Angabe stimmt die Sekundendauer
nicht über ein mit der die ich wollte.
Kann mir jemand von euch sagen, wie viel ein Atmega328
normalerweise standardmäßig hat?
Standard?
Der interne Oszillator läuft mit 8MHz
Der Vorteiler ist per Fuse auf 8 gesetzt.
Üblicher Weise läuft ein 328 also mit 1MHz
Aber das steht auch alles im Datenblatt!
evtl. muss du das noch ein paarmal etwas sorgfältiger lesen.....
Arduino Fanboy D. schrieb:> Aber das steht auch alles im Datenblatt!> evtl. muss du das noch ein paarmal etwas sorgfältiger lesen.....
Eigentlich ist es nur ein Satz im Kapitel 9.2.1 (Default Clock Source):
"The device is shipped with internal RC oscillator at 8.0MHz and with
the fuse CKDIV8 programmed, resulting in 1.0MHz system clock."
Hunter schrieb:> Laut dem Datenblatt hatte ich das so verstanden,> dass der Atmega328 eine 8Mhz Taktfrequenz hat.
Datenblatt weiterlesen:
"The device is shipped with internal RC oscillator at 8.0MHz and with
the fuse CKDIV8 programmed, resulting in
1.0MHz system clock."
Ist die Fuse CKDIV8 gesetzt (default), wird die interne 8MHZ Takt
nocheinmal runtergeteilt.
Arduino Fanboy D. schrieb:> Aber das steht auch alles im Datenblatt!> evtl. muss du das noch ein paarmal etwas sorgfältiger lesen.....
Das ist bullshit! Das Datenblatt hat über 100 Seiten und ihr könntet mit
der Info "schalte ckldiv/8 ab" ihm mehr helfen als mit "das steht auch
alles im Datenblatt!".
Ihr mit eurer verclockten div 8 RTFM-Einstellung!
Florian schrieb:> Das ist bullshit! Das Datenblatt hat über 100 Seiten
Das volle Familendatenblatt(*) hat genau genommen 660 Seiten, aber nur
einen Abschnitt 9.2.1 und der hat genau 4 Zeilen, also bremse dich mal
etwas.
*) ATmega48A/PA/88A/PA/168A/PA/328/P 8271G–AVR–02/2013
Wolfgang schrieb:> genau 4 Zeilen, also bremse dich mal etwas.
Nein! In den 660 Seiten musst du das erst mal finden!
Aber wer beteits verclockt div 8 rtfm ist, wird das nicht interessieren.
Hauptsache rtfm!
Florian schrieb:> und ihr könntet mit> der Info "schalte ckldiv/8 ab" ihm mehr helfen
Du meinst sowas wie:
> Es gibt keine doofen Fragen.> Nur doofe Antworten.
Ich halte das für eine Durchhalteparole, für Dokuleseverweigerer und
DAUs.
Auch ist damit eine irrationale Erwartungshaltung verbunden.
Du erwartest, dass wir das Datenblatt vollständig gelesen und verstanden
haben um dir dann auswendig vorzubeten.
Ich kann mir vorstellen, dass sich die hier anwesenden
Fragenbeantworter, lieber mit spannenden Problemstellungen beschäftigen,
als den Papagei für Leute zu spielen, die mit einer 100 Seiten Doku
überfordert sind.
PS:
In meiner Antwort habe ich bewusst die Worte Fuses und Vorteiler
verwendet.
Das hätte ein Impuls sein können, die Bereiche im Datenblatt genauer zu
untersuchen.
Dir, Florian, reicht das offensichtlich nicht.
Also bescheinige ich dir eine überzogene Erwartungshaltung.
> In den 660 Seiten musst du das erst mal finden!
So ist das halt. Ohne viel zu lesen kommt man als Elektroniker und
Softwareentwickler nicht weit.
Wem dieses Dokument zu groß ist, der kann ja mit einem ATtiny13A
anfangen, da hat man nicht ganz so viele Features zu lesen. Wenn man mit
dem ATTiny13A durch ist, fällt es auch viel leichter, sich mit den
größeren AVR zu befassen.
Arduino Fanboy D. schrieb:> Du erwartest, dass wir das Datenblatt vollständig gelesen und verstanden> haben um dir dann auswendig vorzubeten
Mir brauchst du gar nichts vorbereiten, ich programmiere die AVR
beruflich!
Doch was für ein Eindruck machen diese dümmlichen RTFM-Parolen auf
irgendeinen technikinteressierten Menschen im Anfangsstadium?
Naja, der Abschnitt zum Takt ist deutlich kürzer. Ein normaler STM32 hat
auch viele hundert Seiten Datenblatt und über 1000 Seiten Reference
Manual, aber zum LED blinken lassen brauche ich letztlich nur 10-15
Seiten.
Wenn ich beispielsweise mich wundere, warum mein uC langsamer läuft als
erwartet suche ich doch auch nicht im Abschnitt über den ADC nach dem
Grund...
Florian schrieb:> Nein! In den 660 Seiten musst du das erst mal finden!
Wer nicht in der Lage ist, die genannte Kapitelüberschrift in die
Suchmaske zu kopieren oder direkt anhand der Kapitelangabe den Text zu
finden, sollte sich vielleicht ein anderes Hobby suchen.
Solange der TO nicht verrät, in welcher Datenblattausgabe er versucht
hat, die Info zu finden, kann man ihn kaum auf die direkte Seite
stubsen.
Florian schrieb:> Du hast aber nicht zu entscheiden wie der TO sein hobby auswählt und> ausübt...
Du bist doch der einzige, der sich beschwert. Der TO hat sich noch gar
nicht wieder gemeldet.
Wolfgang schrieb:> Der TO hat sich noch gar nicht wieder gemeldet.
Auch völlig richtig so! Nur hat er zur Hilfe noch fen blöden rtfm-dreck
lesen müssen! Nächstes mal sagt er halt einfach er hätte das db versucht
ganz zu lesen und zu verstehen, aber er nicht weis wo er was kapieren
muss. Dann kommt hoffentlich die Antwort ohne rtfm. Im Endeffekt hat er
euch dann angelogen und euch um euer dabla-gefasel gebracht :-)
Florian schrieb:> Nur
Wie gesagt...
Du schwebst auf einem irrationalen Ast!
Rekapituliere:
Die Frage war...
Hunter schrieb:> Kann mir jemand von euch sagen, wie viel ein Atmega328> normalerweise standardmäßig hat?
Zur Auswahl stehen 1MHz, wie vom TE festgestellt
Altenativ, 8MHz, wie der TE aus dem Datenblatt herausgelesen hat.
Meine Antwort darauf:
Arduino Fanboy D. schrieb:> Standard?>> Der interne Oszillator läuft mit 8MHz> Der Vorteiler ist per Fuse auf 8 gesetzt.> Üblicher Weise läuft ein 328 also mit 1MHz
Diese Antwort ist auf den Punkt genau!
Deine Antwort, bzw, die, welche du dir gewünscht hast...
Florian schrieb:> "schalte ckldiv/8 ab"
Ist keine Antwort auf die Frage.
Deine Kritik, an der Stelle, ist irrational.
-------------
Arduino Fanboy D. schrieb:> Aber das steht auch alles im Datenblatt!> evtl. muss du das noch ein paarmal etwas sorgfältiger lesen.....
Der TE hat das Datenblatt nicht sorgfältig genug gelesen.
Die benötigte Information steht da drin.
Was der TE ja indirekt bezweifelt.
Dieser Zweifel sollte ihm damit genommen worden sein.
Um Datenblätter zu verstehen, muss auch das lesen von Datenblättern
geübt werden.
Darum mein Tipp: Nochmal lesen.
So oft, bis es verstanden ist.
Wie üblich:
> Selber lesen, macht selber schlau.
Ich danke euch auf jeden Fall für die Menge an Antworten
und weiß jetzt auf jeden Fall mehr.
Die Zeile im Datenblatt habe ich auch sogar auch schon gefunden
gehabt, aber irgendwie habe ich das mit dem 1Mhz überlesen,
wahrscheinlich weil ich nicht an Fuses gedacht habe.
Ich bin aber der Meinung das kann man einem Anfänger
nicht wirklich verübeln, Meister fallen ja bekanntlich Weise
nicht vom Himmel ^^'
Stefanus F. schrieb:> Erstaunlich, wie viel Mitgefühl hier gehegt wird - oder auch nicht.
Nein, das ist absolut nicht erstaunlich. Als erstaunlich bezeichne
ich ,
mit welcher zur Schau gestellten Blödheit auf eine Frage reagiert wird.
Florian hat absolut Recht mit seinen Feststellungen.
Solchen "Helfern" wünsche ich, mit einem Hexenschuß zum Notdienst zu
kommen und mit den Worten: "Hexenschuss ist nicht der korrekte Ausdruck!
Bitte studieren Sie zunächst 10 Semester Medizin!" abgewiesen zu werden.
Paul Baumann (mit vergessssenem Passwort) schrieb:> und mit den Worten: "Hexenschuss ist nicht der korrekte Ausdruck!> Bitte studieren Sie zunächst 10 Semester Medizin!" abgewiesen zu werden.
Das hat doch hier gar nicht stattgefunden!
Gehe erstmal kacken, vielleicht biste dann ein bisschen entspannter und
hast die Ruhe den Thread noch mal aufmerksam zu lesen.
Hunter schrieb:> Ich bin aber der Meinung das kann man einem Anfänger> nicht wirklich verübeln,
Mache ich auch nicht...
Empfehle allerdings, das Dokulesen zu üben.
Denn das ist eins der Erfordernisse, wenn man den Anfängerstatus
verlassen möchte.
Arduino Fanboy D. schrieb:> Gehe erstmal kacken, vielleicht biste dann ein bisschen entspannter und> hast die Ruhe den Thread noch mal aufmerksam zu lesen.>
So, ich habe beide Ratschläge in der angegebenen Reihenfolge beherzigt
und muß sagen: An meinen o.g. Feststellungen habe ich Nichts zu ändern.
Florian schrieb:> Wolfgang schrieb:>> genau 4 Zeilen, also bremse dich mal etwas.>> Nein! In den 660 Seiten musst du das erst mal finden!
Wenn man nicht irgendwie behindert ist, findet man dieses Statement bei
einer logischen Analyse des Inhaltsverzeichnisses des DB innerhalb
weniger Sekunden oder wenigstens innerhalb weniger Minuten.
Dazu ist ein Inhaltsverzeichnis nämlich da...
OK, bei weitem nicht jedes Problem ist so einfach zu lösen, dieses aber
definitiv schon!
Wer das nicht schafft, ist entweder strunzdumm oder stinkendfaul. Beides
keine Eigenschaften, die einen zum Programmierer prädestinieren. Wer
also nichtmal sowas in einem Datenblatt zu finden vermag, sollte sich
auf Tätigkeiten beschränken, für die ihm die Natur die nötigen
Fähigkeiten mitgegeben hat. Höckern und Picheln z.B. macht durchaus auch
Spass, erfordert aber viel weniger geistigen Einsatz...
c-hater schrieb:> Wer das nicht schafft, ist entweder strunzdumm oder stinkendfaul. Beides> keine Eigenschaften, die einen zum Programmierer prädestinieren
Mag sein. Du darfst aber nicht vergessen dass der Mensch auch lernfähig
ist. Mit viel Ehrgeiz kann dann so manches ausgeglichen werden.
Florian schrieb:> Arduino Fanboy D. schrieb:>> liebster Florian.>> Ich bin nicht lieb!
Den Eindruck hab ich aber auch...
Stefanus F. schrieb:> Erstaunlich, wie viel Mitgefühl hier gehegt wird - oder auch nicht.
Finde ich auch... Hat man sich hier vielleicht unter einem anderen Namen
nochmal zu Wort gemeldet?!
Keine Ahnung, was "man" macht. Ich halte jedenfalls nichts von
Anonymität in diesem Forum, weil die schlimmsten Beiträge immer von
anonymen Teilnehmern kommen.
Also normal laufen die atmegas erstmal mit 1Mhz.
Erst nach dem manuellen ändern haste 8 MHz intern oder extern mit
quartz.
16 MHz oder (manche auch 20 MHz) sind aber nur noch mit quartz machbar.
Solltest du mit arduino zu tun haben denke daran das die takt rate erst
nach dem brennen des bootloaders dem atmega übertragen wird.
Sonst bleibt dieser in 1 MHz intern egal was du einstellst.
Auch ist zu beachten das die löt freundlichen dip ics nur im breich
zwischen 4,5 und 5,5 Volt laufen.(Als SMD version gehen die bis auf 3,3
Volt glaube runter)
Am besten saubere 5 Volt auch bei 1 MHz.
DAVID -. schrieb:> 16 MHz oder (manche auch 20 MHz) sind aber nur noch mit quartz machbar.> Solltest du
Das gilt aber nur für die mehr oder weniger alten Gurken.
Die 0-Series und 1-Series können auch bei 20MHz per RC-Oszillator und
haben noch viele andere Schmankerl.
DAVID -. schrieb:> Auch ist zu beachten das die löt freundlichen dip ics nur im breich> zwischen 4,5 und 5,5 Volt laufen.(Als SMD version gehen die bis auf 3,3> Volt glaube runter)
Was soll denn der Schnee!
Die Gehäuseform hat nichts mit der Betriebsspannung zu tun. Das ist
das selbe Silizium, nur anders verpackt.
Auch hier hilft Datenblatt lesen:
https://www.microchip.com/wwwproducts/en/ATmega328
Tom schrieb:> DAVID -. schrieb:>> Auch ist zu beachten das die löt freundlichen dip ics nur im breich>> zwischen 4,5 und 5,5 Volt laufen.(Als SMD version gehen die bis auf 3,3>> Volt glaube runter)> Was soll denn der Schnee!> Die Gehäuseform hat nichts mit der Betriebsspannung zu tun. Das ist> das selbe Silizium, nur anders verpackt.
nun aber die DIE-Größe wurde sicher öfter durch Fertigungsumstellung
verkleinert, das bedeutet oft das die Taktfrequenz erhöht werden könnte,
aber aus Kompatiblitätsgründen wird das nicht beschrieben.
So hatte bei Atari eine Umstellung des Floppy Controllers von WD1772 zu
WD1772-2 dazu geführt das man den Takt von 8MHz DD ungestraft auf 16MHz
HD setzen konnte um HD Laufwerke anzusteuern (nur beim -2 Typ), das
haben genug "Tuner" rausbekommen.
Ich bin sicher ohne die DIE Verkleinerung wäre die Verdoppelung vom Takt
nicht möglich, klar in Grenzen +10% overclock möglich aber nicht um
100%.
Auch hatten einige schon beim 1284p den Takt um 20% hochschrauben
können.
Ist ja nichts neues bei PC overclock ggflls. mit VCC Erhöhung.
Wenn dann natürlich die VCC durch Toleranzen am oberen Limit lag war es
noch leichter.
Ausserdem gilt nicht jedes Datenblatt ist wahr, meist zwar aber eben
nicht immer.