Guten Morgen, ich habe eine Frage bezüglich den Start up times des Atmega 8A. Ich arbeite gerade dass AVR Tutorial durch. Ich habe einen Atmega8A und einen 4MHz Quarz. Ich habe beim AVR Fuse Calculator aktuell folgendes gewählt: Ext. Crystal/Resonator Med Freq. 16K CK + 64ms Boden Boden lvl 4.0 jetzt im Datenblatt bei den start up times aber auch noch was von 16K CK BOD enabled was bedeutet das und wann nimmt man diese einstellung? ich würde jetzt generell denken, sobald man Boden angeschaltet hat. MfG Xizeru
P. W. schrieb: > Ext. Crystal/Resonator Med Freq. 16K CK + 64ms Das heisst er wartet 16k Zyklen zusätzlich 64ms um den Quarz stabil einschwingen zu lassen. Wegen hohem Güteparameter braucht das seine Zeit. Ob "Med Frequency" für 4MHz noch passt musst Du selber im DB nachlesen. BOD = Brown out detetct. Dies erzwingt einen Reset wenn die Betriebsspannung unter das eingestellte Level fällt. Das will man weil der Prozessor oder die Schaltung sonst Mist bauen könnte. Es gab hier in der Vergangenheit Beispiele wo plötzlich der Flash gelöscht war.
Was das bedeutet weiss ich :D was ich meinte: im Datenblatt stehen 3 zeiten zur Wahhl: 16K CK // - // Crystal Oscillator, BOD enabled 16K CK // 4.1ms // Crystal Oscillator, fast rising power 16K CK // 65ms // Crystal Oscillator, slowly rising power Bei der ersten Zeit startet er nach 16K Zyklen ohne zusätzliche Verzögerung? Das würde normalerweise ja aufjedenfall zu Fehlern führen. Aus dem Grund muss bei dieser gewählten Zeit aufjedenfall BOD an sein oder? also steht das BOD da nur als Hinweis, da man es bei der Zeit aufjedenfall braucht oder? 2. Frage: Wenn ich BOD eingeschaltet habe kann ich doch in jedemfall die Kürzeste Zeit nehmen, denn wenn der Quarz noch nicht eingeschwungen ist gibts ja keinen Fehler, da BOD ja nen Reset auslöst. Ist das richtig?
> Bei der ersten Zeit startet er nach 16K Zyklen ohne zusätzliche > Verzögerung? Das würde normalerweise ja aufjedenfall zu Fehlern führen. Eben, deswegen soll man diese Option nur in Kombination mit dem Brown-Out-Detektor verwenden. Der stellt sicher, dass der µC erst startet, wenn die Spannungsversorgung "voll" da ist.
> Wenn ich BOD eingeschaltet habe kann ich doch in jedemfall die Kürzeste > Zeit nehmen, denn wenn der Quarz noch nicht eingeschwungen ist gibts ja > keinen Fehler Doch, es kann zu Fehlern kommen. Das Taktsignal muss ein paar Anforderungen bezüglich Tastverhältnis und Flankensteilheit erfüllen. Es dauert bei Quarz-Oszillatoren eine gewisse Zeit, bis das der Fall ist.
P. W. schrieb: > Was das bedeutet weiss ich :D was ich meinte: > > im Datenblatt stehen 3 zeiten zur Wahhl: > > 16K CK // - // Crystal Oscillator, BOD enabled > 16K CK // 4.1ms // Crystal Oscillator, fast rising power > 16K CK // 65ms // Crystal Oscillator, slowly rising power > > Bei der ersten Zeit startet er nach 16K Zyklen ohne zusätzliche > Verzögerung? Ja. > Das würde normalerweise ja aufjedenfall zu Fehlern führen. Nein. > Aus dem Grund muss bei dieser gewählten Zeit aufjedenfall BOD an sein > oder? Nein. > also steht das BOD da nur als Hinweis, da man es bei der Zeit > aufjedenfall braucht oder? Nein. Die Brown-Out-Detection hat zunächst nichts mit der Startup-Zeit zu tun. Die Komentare in der letzten Spalte sind "Empfehlungen" (engl. Recommendations"), aber keine zwingenden Anweisungen. Es gibt allerdings gewisse funktionale Zusammenhänge, welche die Empfehlungen pöausibel machen. Wird etwa die 16k Zyklen Wartezeit ohne zusätzliche Verzögerung gewählt, so kann es, 1. wegen der kürzeren Zeit und 2. falls die Stromversorgung erst nach einer Zeit in der Grössenordnung dieser 16k Zyklen auf den Sollwert kommt, zu Fehlfunktionen kommen. Auch wird sich das Verhalten der Stromversorgung auf das Anlaufen des Oszillators auswirken - oder auch nicht. (Gibt ja mehrere Oszillatorschaltungen RC, Quarz oder Oszillator). Andererseits kann die Stromversorgung auch schnell genug sein, dann ist kein BOD nötig. Man muss also in jedem Einzelfall abwägen (und evtl. messen) was nun eigentlich an Verhalten vorliegt und nach den Ergebnissen die Fuses wählen. > 2. Frage: > > Wenn ich BOD eingeschaltet habe kann ich doch in jedemfall die Kürzeste > Zeit nehmen, denn wenn der Quarz noch nicht eingeschwungen ist gibts ja > keinen Fehler, da BOD ja nen Reset auslöst. Ist das richtig? Auch das kann man pauschal nicht sagen, denke ich. Hier nochmal der Knackpunkt: BOD und Oszillator haben nichts miteinander zu tun. Insbesondere wird der BOD nicht auslösen weil der Oszillator noch nicht richtig schwingt. Das ergibt sich allenfalls mittelbar, falls der Oszillator wegen der langen Startzeit der Stromversorgung nicht schwingt. Der Punkt ist, dass die Startup-Zeit des Oszillators und die Spannung, ab der die Transistoren (FFs, Rechenwerk etc.) zuverlässig laufen nur teilweise und abhängig von der konkreten Schaltung bestimmte Zusammenhänge gemeinsam haben - aber in anderen Punkten voneinander unabhängig sind. Deswegen kann man die Startup-Zeit und die BOD Fuse ja auch unabhängig voneinander einstellen. Das ist keine abschliessende umfassende Antwort, sollte aber die Richtung einigermaßen geben, in der man darüber nachdenken kann.
Stefan U. schrieb: >> Wenn ich BOD eingeschaltet habe kann ich doch in jedemfall die Kürzeste >> Zeit nehmen, denn wenn der Quarz noch nicht eingeschwungen ist gibts ja >> keinen Fehler > > Doch, es kann zu Fehlern kommen. Das Taktsignal muss ein paar > Anforderungen bezüglich Tastverhältnis und Flankensteilheit erfüllen. Es > dauert bei Quarz-Oszillatoren eine gewisse Zeit, bis das der Fall ist. Aber wenn es doch zu Fehlern kommen kann, obwohl ich die BOD anhabe, dann würde man doch nicht die erste Zeit nehmen, sondern vllt eher 4ms wenn die quarz schnell genug anschwingt und es dort nicht zu Fehlern kommt.
Im Zweifelsfall würde ich sogar immer die höchste startup-time wählen. Ich weiß aus Erfahrung, dass selbst diese bei manchen Stecker-Netzteilen nicht ausreichen (dann muss eine externe Beschaltung an den Reset Pin). Weniger als die höchst mögliche startup-time würde ich nur wählen, wenn ich einen wichtigen Grund dafür habe. hast du einen?
Stefan U. schrieb: > Im Zweifelsfall würde ich sogar immer die höchste startup-time wählen. > Ich weiß aus Erfahrung, dass selbst diese bei manchen Stecker-Netzteilen > nicht ausreichen (dann muss eine externe Beschaltung an den Reset Pin). > > Weniger als die höchst mögliche startup-time würde ich nur wählen, wenn > ich einen wichtigen Grund dafür habe. hast du einen? Das habe ich ja auch alles so eingestellt, nur mache ich halt nicht einfach alles nach nem Tutorial sondern hinterfrage auch manche sachen, weil halt auch später nicht alles wie im Tutorial ist. Mich hatte es nur verwirrt das BOD als Hinweis nur bei der ersten Zeit steht. Aber da hab ich wirklich etwas durcheinander geworfen... bedeutet bei der ersten Zeit: Hier ist die Gefahr sehr groß, dass VCC eben doch nicht sofort in voller Höhe zur Verfügung steht und sich somit das anschwingen des Quarz um einen Hauch verzögern kann, was dann ja zu Fehlern führt...ausdem grund steht da BOD als Hinweis....jetzt hab ich es oder??? :D
:
Bearbeitet durch User
Stefan U. schrieb: > Weniger als die höchst mögliche startup-time würde ich nur wählen, wenn > ich einen wichtigen Grund dafür habe. hast du einen? Mach ich auch immer so, schnellere Startup-Time benutze ich auch immer nur dann, wenn ich dafür einen externen Trigger hab. Bisher hat mir daher auch immer die langsamste Startup-Time genügt.
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.