Hallo zusammen, wenn ich das Datenblatt des Atmega32 (die nicht-L Version!) richtig verstehe, so ist dieser fuer eine Versorgungsspannung von 4,5-5,5 V ausgelegt und innerhalb dieser Grenzen wird die Funktionalitaet garantiert. Da ich eine Energieversorgung per Akkus einsetzen moechte, wuerde ich gerne die Brown-Out Detection nutzen, um den µC entsprechend bei niedriger Spannung abzuschalten. Jetzt laesst sich die Brown-Out Detection ja auf 4,0V setzen. Da verstehe ich aber nicht, warum man genau diesen Schwellwert setzen kann. Was passiert, wenn die Versorgungsspannung zwischen 4,5V und 4,0V absinkt. Der Controller laeuft dann nicht mehr nach Spezifikation und wird erst bei 4,0V abgeschaltet/resettet? Ist mein Verstaendnis dazu richtig? Dann haette ich aber Verstaendnisprobleme mit dem Sinn dieses Schwellwertes bei 4,0V statt bei 4,5V. :-) Weiterhin muss ich externe Interrupts erkennen, die mit bis zu 4,9V ankommen (andere Energiequelle, aber gleiche Potentiale). Laut Datenblatt liegt die untere Schranke der sicheren Erkennung bei 0,6*V_in ... die obere Schranke allerdings bei V_in +0,5V. Wenn der Atmega also bis kurz vor 4,0V immer noch laeuft, waere ich auch hiermit ausserhalb der Spezifikation und muesste mich auf interne Schutzdioden verlassen ... Wie laesst sich der µC denn dann bei 4,5V abschalten? Am besten ohne zusaetzliche Beschaltung. :-) Danke
Hi, Martin, Spannung und / oder Strom an den Signaleingängen musst Du begrenzen auf Vdd, bevor die interne Schutzdiode beim Versuch durchbrennt. Dies gilt auch bei Absinken der Versorgungsspannung. Schutzwiderstand in Serie von 10 kOhm sollte reichen. Zur Funktion bei Unterspannung - mein Atmega tut's auch bei 3,3 V und 8MHz Systemtakt einwandfrei. Zum Abschalten: Schau im Datenblatt unter "Power Management" und "Sleep Modes". Ciao Wolfgang Horn
Hallo, vielen Dank fuer die Antwort. Die Eingaenge der externen Interrupts kommen von einem Spannungsteiler und werden bevor sie an die Portpins gehen, dort bzgl. Stromstaerke auch per Widerstaende abgesichert. Bzgl. der Spannung hatte ich halt bedenken, da die Eingangsspannung an diesem Spannungsteiler eben nicht mit der Versorgungsspannung des µC absinkt, sondern konstant bleibt (Versorgung aus Netzteil). Bleibt die Frage nach der Zuverlaessigkeit des µC, wenn V_in zwischen 4,5 Volt und 4,0V liegt, bevor die Brown Out Detection eingreift. Es ist schoen zu hoeren, dass die Funktionalitaet scheinbar gegeben ist; hatte mir so etwas auch erhofft .. konnte aber im Datenblatt nichts dazu finden. V_max_absolut wird ja angegeben ... eine untere Grenze, bei der der µC noch zuverlaessig (vom Hersteller garantiert) funktioniert, scheint die 4,5V Marke zu sein. Konnte dazu nichts anderes finden. Mir fehlt hier halt die Einschaetzung/Erfahrung, da ich Neuling bin und deshalb als Stuetze 'nur' das Datenblatt benutzt habe. Da ich eine Zeitmessung mit den externen Interrupts durchfuehre, waeren Ungenauigkeiten oder gar Nichterkennen der Signale fatal. :( Gruss Martin
Den ATMEGA32 gibt es auch als Version ab 2.7V. Was ist an dem anders? Nichts, es ist der gleiche Chip. Er wird lediglich selektiert oder für die Spezifikation geprüft sein. Das ist der Grund, warum du in einem 4.5-5.0 Volt Chip den Brown-Out auch tiefer als Spec einstellen kannst. Und das ist auch der Grund, warum viele dieser Chips auch mit viel niedrigeren Spannungen laufen. Die sind ja schon dafür designt, nur nicht dafür geprüft. Bei Bastelprojekten probierst du einfach aus, ob er mit 3.5 Volt noch ordentlich läuft und dann kannst du den dauerhaft auch mit 4 Volt betreiben. Bei kommerziellen Produkten verbietet es sich meist, außerhalb der Spec zu arbeiten.
Hallo, "Den ATMEGA32 gibt es auch als Version ab 2.7V. Was ist an dem anders? Nichts, es ist der gleiche Chip. Er wird lediglich selektiert oder für die Spezifikation geprüft sein. Das ist der Grund, warum du in einem 4.5-5.0 Volt Chip den Brown-Out auch tiefer als Spec einstellen kannst." Vielen Dank fuer die Antwort. Das ist soweit sicherlich korrekt. Dennoch bleibt zumindest fuer mich die Frage, warum ich die Brown-Out Grenze eben auch ausserhalb der Spezifikationen einstellen kann .. aber eben nicht innerhalb der Spezifikationen. :-) Warum kein Brown-Out bei 4,5V, wenn ab dort doch scheinbar das Ding ausserhalb der Spezifikationen laeuft? Oder gibt es doch noch Daten ueber den Bereich 4,5V bis 4V und ich sehe es einfach nicht? Es ist uebrigens ein Bastelprojekt. Dennoch tue ich mir schwer damit, einmal zu testen und dann bei positivem Ergebnis zu sagen, dass nun alles fuer alle Ewigkeit in bester Ordnung ist. Warum nicht auch bei einem Bastelprojekt an Spezifikationen halten? Da die Last relativ konstant ist, sieht es wohl so aus, als muesste ich den integrierten Brown-Out leider zur Seite legen und selber messen mit dem Atmega? Schade eigentlich.
@ Martin (Gast) >die Frage, warum ich die Brown-Out Grenze eben auch ausserhalb der >Spezifikationen einstellen kann Weil Amtle zwar den Betrieb zwischen 4,5..5,5V gearantiert, aber dennoch die Dinger so gebaut und geprüft sind, dass erst ab 4,0V und darunter ernsthafte Aussetzer kommen. >Es ist uebrigens ein Bastelprojekt. Dennoch tue ich mir schwer damit, >einmal zu testen und dann bei positivem Ergebnis zu sagen, dass nun >alles fuer alle Ewigkeit in bester Ordnung ist. Das wäre auch FALSCH! Ein positiv getesteter Einzelfall sagt GAR NICHTS über den allgemeinen Fall aus. > Warum nicht auch bei einem Bastelprojekt an Spezifikationen halten? Mach ich, meistens ;-) >Da die Last relativ konstant ist, sieht es wohl so aus, als muesste ich >den integrierten Brown-Out leider zur Seite legen und selber messen mit >dem Atmega? ???? MFG Falk
Der Brown-Out Detektor ist auch nicht zum Abschalten des Controllers, sondern für einen geordneten RESET gedacht. Wenn nämlich der Brown-Out zuschlägt, braucht der Controller im Reset-Zustand weniger Strom als im aktiven Zustand. Folglich läuft die Spannung über den Akkus wieder hoch, wodurch der Brown-Out den Controller wieder freigibt und dieser dann wieder anläuft und mehr Strom verbraucht. Dann geht das Spiel von vorne los. Dein Controller "blinkt", bis die Akkus so weit leergenuckelt sind, bis er nicht mehr anläuft. Besser ist es, die Akkuspannung zu messen und bei Unterschreiten eines bestimmten Wertes den Controller in den tiefen Schlaf zu versetzen, so daß er keinen Unsinn mehr machen kann.
Martin schrieb: > wenn ich das Datenblatt des Atmega32 (die nicht-L Version!) richtig > verstehe, so ist dieser fuer eine Versorgungsspannung von 4,5-5,5 V > ausgelegt und innerhalb dieser Grenzen wird die Funktionalitaet > garantiert. ... > Jetzt laesst sich die Brown-Out Detection ja auf 4,0V setzen. Da > verstehe ich aber nicht, warum man genau diesen Schwellwert setzen kann. Atmel hat den entscheidenden Hinweis im Kleingedruckten auf Seite 37 unten versteckt: Zitat:
1 | VBOT may be below nominal minimum operating voltage for some devices. For devices where |
2 | this is the case, the device is tested down to VCC = VBOT during the production test. This guarantees |
3 | that a Brown-out Reset will occur before VCC drops to a voltage where correct |
4 | operation of the microcontroller is no longer guaranteed. The test is performed using |
5 | BODLEVEL = 1 for ATmega32L and BODLEVEL = 0 for ATmega32. BODLEVEL = 1 is not |
6 | applicable for ATmega32. |
Hallo Andreas, vielen Dank fuer die Antwort. Das beantwortet genau meine Frage.:-) Dabei ist es mir schon fast peinlich, dass ich den Teil wohl (mehrmals) im Datenblatt ueberlesen habe. :-( Jedenfalls ist das die Bestaetigung dessen, was wohl alle vermutet hatten bzw. was mir hier angedeutet wurde ... nun aber mit der von mir erwuenschten Garantie des Herstellers. ;) @ Travel Rec. Die 'Problematik' stellt sich in diesem Falle nicht wirklich, da der Controller bei der Zeitmessung unter menschlicher Aufsicht laeuft und bei/waehrend Reset ein kleiner bs170 eine LED dann abgeschaltet halten wird. Somit sollte man zumindest erkennen koennen, wenn ein Brown Out auftritt. Ich werde hierfuer am Anfang des Codes vor Abschalten der LED noch ein entsprechendes Delay einfuegen ... dann sieht man ja, ob die LED nur einmal beim Einschalten leuchtet oder waehrend dem 'Betrieb' (anscheinend erneut) angeht. Und falls der µC nicht mehr genug Saft hat, den Delay zu halten und wieder in Reset geht, sollte das auch wiederum die LED zum leuchten bringen .. bei 4,0V sieht man die auch noch recht gut. Es ging ja nur darum, falls der µC in einen undefinierten Zustand fallen sollte, dann im Zweifel lieber nicht zu messen, als etwas falsch zu berechnen. Die Messung an sich kann dann ja warten, bis neue Akkus im Geraet sind. Danke nochmal an alle Martin
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.